IntelRealSense / realsense-ros

ROS Wrapper for Intel(R) RealSense(TM) Cameras
http://wiki.ros.org/RealSense
Apache License 2.0
2.58k stars 1.76k forks source link

T265 TF is incorrect #687

Closed ibaranov-cp closed 5 years ago

ibaranov-cp commented 5 years ago

TF values for T265 are incorrect, they have the left and right frames exactly co-located, and camera link to optical frame is backwards.

doronhi commented 5 years ago

T265 has different coordinate system then the D400 series. You can compare D400: D400 T265: T265

ibaranov-cp commented 5 years ago

Yep, understood. However the camera frames for left and right should still not be identical.

doronhi commented 5 years ago

That is correct. The extrinsics are not available yet by the device. The TF values will be fixed automatically, as soon as the firmware is fixed.

schmidtp1 commented 5 years ago

This had been fixed. What can be seen here are the two fisheye optical frames together with the T265 body frame (in the center). t265_frames2_rviz_screenshot_2019_04_25-11_19_55 Thanks for filing the issue, @ibaranov-cp!

ibaranov-cp commented 5 years ago

Great, thanks!

SainaRez commented 5 years ago

@doronhi @schmidtp1 What confuses me is that if we treat the camera_pose_frame diagram in rviz the same as the one in the image, the camera's align on the y axis in rviz while in the image they align on the x axis. Could you please provide a diagram with the camera and the imu_frame fisheye frame and body frame similar to the one below from vins-fusion: image

schmidtp1 commented 2 years ago

@doronhi @schmidtp1 What confuses me is that if we treat the camera_pose_frame diagram in rviz the same as the one in the image, the camera's align on the y axis in rviz while in the image they align on the x axis. Could you please provide a diagram with the camera and the imu_frame fisheye frame and body frame similar to the one below from vins-fusion: image

sorry, i just saw this again now... i think the confusion comes from the different reference/body frames used in ROS/rviz and T265/librealsense. T265 uses a coordinate system as depicted in the first diagram ("VR coordinates") with y pointing up, z aligned with the optical axis and x with the baseline of the cameras, that is exposed by librealsense. Here in the ROS wrapper there is a transformation that rotates the frame to follow ROS/robotics convention with z pointing up etc. as can be seen in the screenshot from rviz. hope this helps.