0
$\begingroup$

Rosanswers logo

All,

I am trying to get two (2) kinects to display camera data in rviz. I run the below commands to set distinction between the kinects:

(kinect #1) roslaunch openni_launch openni.launch device_id:#1 camera:=kinect1 (Kinect #2) roslaunch openni_launch openni.launch device_id:#2 camera:=kinect2

  1. Both kinects show up in rviz properly.
  2. I can add two instances of the camera display type, setting them to display kinect1 and kinect2
  3. When I set the "Global Options" parameter to "kinect1_link", I can see the camera from kinect1, but not kinect2; the same goes the other way around.

What do I need to do to be able to see both kinects display in rviz?

Thanks in advance! Andrius


Originally posted by Andrius on ROS Answers with karma: 41 on 2013-01-17

Post score: 0


Original comments

Comment by Faizan A. on 2013-04-02:
Hi Andrius, Please update if you were able to fix the issue. I am stuck in a similar situation. Thanks,

Comment by Athoesen on 2013-12-26:
I would also like an update on this...

$\endgroup$

2 Answers 2

0
$\begingroup$

Rosanswers logo

Both kinects need to be part of the same TF tree so that rviz can transform point clouds from each one into a common frame. To do this, one option is to create two static transform publishers, one that publishes map->kinect1_link and one that publishes map->kinect2_link.


Originally posted by Dan Lazewatsky with karma: 9115 on 2013-01-17

This answer was ACCEPTED on the original site

Post score: 4


Original comments

Comment by Athoesen on 2013-11-29:
Can you elaborate on how to do this? I'm stuck on a similar problem.

Comment by Faizan A. on 2014-01-07:
If you want to find the orientation of one camera w.r.t the other use ros package camera_pose_calibration. i.e. if you want the pointclouds from both cameras to be aligned properly. In case you only want to see images from both cameras at the same time, use static transfrom publisher.

Comment by Faizan A. on 2014-01-07:
Example for static transform publisher: define a transform from /world to kinect1_link. define another static transform from /world to kinect2_link. use /world as Global options in rviz and you will see both camera images. The transform can be arbitrary if you dont need the exact camera pose.

Comment by Athoesen on 2014-01-09:
I've been trying to use the camera_pose_calibration package with a lot of problems: http://answers.ros.org/question/115111/errors-in-camera_pose_calibration-launch-for-3-kinects/

$\endgroup$
0
$\begingroup$

Rosanswers logo

Even if you are not planning to test on a sim/real robot, you can create a simple URDF model with the optical and rgb frames of each sensor connected to /base_link


Originally posted by dbworth with karma: 1103 on 2013-01-17

This answer was NOT ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.