chutsu / rs4se Goto Github PK
View Code? Open in Web Editor NEWIntel RealSense D435i wrapper for state estimation
License: BSD 4-Clause "Original" or "Old" License
Intel RealSense D435i wrapper for state estimation
License: BSD 4-Clause "Original" or "Old" License
Hey!
I notice in your code within the vframe2ts
function, you're using
const auto meta_key = RS2_FRAME_METADATA_SENSOR_TIMESTAMP;
const long long ts_us = vf.get_frame_metadata(meta_key);
to get the timestamp of the image data. Isn't this the wrong way of timestamping the image data? The timestamp outputted from that key will give you a timestamp that is not synced up with the get_timestamp()
that the gyro and accel are using.
I thoughtI had to do something like this to make it sync up with the IMU:
const auto sensor_ts = vf.get_frame_metadata(RS2_FRAME_METADATA_SENSOR_TIMESTAMP);
const auto frame_ts = vf.get_frame_metadata(RS2_FRAME_METADATA_FRAME_TIMESTAMP);
const auto backend_ts = vf.get_frame_metadata(RS2_FRAME_METADATA_BACKEND_TIMESTAMP);
const auto end_ts = backend_ts - (frame_ts - sensor_ts);
but I think this is also incorrect. Am I missing something? I had also tried to run Kalibr with just using the get_timestamp()
from both the frame and IMU data, but I get a projection error of an order of 90px+. I'm thinking it's a timestamp issue.
Hi Chris,
I have successfully managed to install realsenselib, and I can store imu data in rosbags. However while analyzing the data I realized that the implemented lerp method they have, namely imu_unite_method:="linear_interpolation", is not reliable. That is how I ended up to your repo and I was hoping you could give me a hint why I get the following error. Btw before launching your files I first did a "catkin_make clean", and then "catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release" and "catkin_make install" respectively. When I run "roslaunch rs4se intel_d435i.launch" on my terminal I get the following error.
started roslaunch server http://elxc3600002:42557/
SUMMARY
========
PARAMETERS
* /rosdistro: melodic
* /rosversion: 1.14.3
* /stereo/camera0/image/disable_pub_plugins: ['image_transport...
* /stereo/camera1/image/disable_pub_plugins: ['image_transport...
* /stereo/enable_emitter: False
* /stereo/exposure: 10000.0
* /stereo/format: Y8
* /stereo/frame_rate: 30
* /stereo/global_time: True
* /stereo/height: 480
* /stereo/sync_size: 30
* /stereo/width: 640
NODES
/
intel_d435i (rs4se/intel_d435i)
auto-starting new master
process[master]: started with pid [18771]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 0cd0933e-c343-11e9-8d57-7824af85d816
process[rosout-1]: started with pid [18782]
started core service [/rosout]
process[intel_d435i-2]: started with pid [18789]
terminate called after throwing an instance of 'rs2::invalid_value_error'
what(): UVC header is not available
================================================================================REQUIRED process [intel_d435i-2] has died!
process has died [pid 18789, exit code -6, cmd ~/realsense_original_ws/devel/lib/rs4se/intel_d435i __name:=intel_d435i __log:=~/.ros/log/0cd0933e-c343-11e9-8d57-7824af85d816/intel_d435i-2.log].
log file: ~/.ros/log/0cd0933e-c343-11e9-8d57-7824af85d816/intel_d435i-2*.log
Initiating shutdown!
================================================================================
[intel_d435i-2] killing on exit
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done
Do you have any idea what could be the culprit of my problem? Could it be that your pose estimation wrapper depends on some specific release of the RealSense SDK, and that something is messed up with the release I'm trying? Any hint is more than welcome. Thanks in advance for your time.
I want to get the depth map. How do I turn on the structural light?
Hi Christopher,
I wanted to be able to get images + IMU from the D435i but somehow I was getting a really weird jitter when using the unite_imu_method provided by intel (IntelRealSense/realsense-ros#898) and ended up finding your repo. I have just tried it and the imu timestamps are periodic as expected, which is great and thanks a lot for that!
One thing I noticed was that you are not outputting the color camera images at the moment (/camera/color/image_raw) and was wondering if you were already implementing this or planning to have this in the near future?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.