Robotics StackExchange | Archived questions

depth_camera_info and rgb_camera_info always same

I would like to simply get the distance from the /camera/depth/image_rect topic . I use an asus xtion pro live camera and also the openni ros indigo package.

Now my problem is that the distance to any object is wrong by 5cm.

And this error varrys with the distance to that object. So I thought this is an intrinsic calibration error!

That is why I tried to calibrate my camera with that tutorial:

http://wiki.ros.org/openni_launch/Tutorials/IntrinsicCalibration

Now I would like to calibrate the depth and the rgb camera.

Should they have the same calibration? Meaning should the topics

/camera/rgb/camera_info

/camera/depth/camera_info

be the same?

Cause even if I start my camera like this:

 <include file="$(find openni2_launch)/launch/openni2.launch">
 <arg name="rgb_camera_info_url"
      value="/home/mlampre/.ros/camera_info/depth_PS1080_PrimeSense.yaml" />
 <arg name="depth_camera_info_url"
      value="/home/mlampre/.ros/camera_info/rgb_PS1080_PrimeSense.yaml" />
</include>

I get the exact same values when echoing the /camera/rgb/camerainfo and the /camera/rgb/camerainfo topic

Moreover I get an additional error:

[ INFO] [1528801309.809967779]: Starting color stream.
[ INFO] [1528801309.875827378]: Starting depth stream.
[ INFO] [1528801310.236155035]: camera calibration URL: /home/mlampre/.ros/camera_info/depth_PS1080_PrimeSense.yaml
[ERROR] [1528801310.236205499]: Invalid camera calibration URL: /home/mlampre/.ros/camera_info/depth_PS1080_PrimeSense.yaml

Edit1

I corrected the url names. Now I do not get any error anymore, but even though the two files are different if I echo the topics /camera/rgb/camerainfo and /camera/depth/camerainfo I get the same message.

 <include file="$(find openni2_launch)/launch/openni2.launch">
 <arg name="rgb_camera_info_url"
      value="file:///home/mlampre/.ros/camera_info/rgb_PS1080_PrimeSense.yaml" />
 <arg name="depth_camera_info_url"
      value="file:///home/mlampre/.ros/camera_info/depth_PS1080_PrimeSense.yaml" />
</include>

Asked by Markus on 2018-06-12 06:02:50 UTC

Comments

Paths != URLs.

I don't know about your calibration issues, but /home/mlampre/.. is indeed an invalid URL. You need to prefix it with file:// for an absolute path. So:

file:///home/mlampre/.ros/camera_info/depth_PS1080_PrimeSense.yaml

note the three forward slashes. They are needed.

Asked by gvdhoorn on 2018-06-12 06:09:54 UTC

As to the offsets in Z: kuka-isir/depth_cam_extrinsics_calib.

Afaik this is a (relatively) known issue.

Asked by gvdhoorn on 2018-06-12 06:13:33 UTC

Answers