Ask Your Question
0

Multiple Kinects: Global Options parameter?

asked 2013-01-17 08:19:34 -0600

Andrius gravatar image

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

edit retag flag offensive close merge delete

Comments

Hi Andrius, Please update if you were able to fix the issue. I am stuck in a similar situation. Thanks,

Faizan A. gravatar imageFaizan A. ( 2013-04-02 05:42:40 -0600 )edit

I would also like an update on this...

Athoesen gravatar imageAthoesen ( 2013-12-26 15:12:37 -0600 )edit

2 Answers

Sort by ยป oldest newest most voted
4

answered 2013-01-17 08:41:44 -0600

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.

edit flag offensive delete link more

Comments

Can you elaborate on how to do this? I'm stuck on a similar problem.

Athoesen gravatar imageAthoesen ( 2013-11-29 11:36:35 -0600 )edit

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.

Faizan A. gravatar imageFaizan A. ( 2014-01-07 19:20:45 -0600 )edit

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.

Faizan A. gravatar imageFaizan A. ( 2014-01-07 19:24:30 -0600 )edit

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/

Athoesen gravatar imageAthoesen ( 2014-01-09 08:52:07 -0600 )edit
1

answered 2013-01-17 09:06:16 -0600

dbworth gravatar image

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

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2013-01-17 08:19:34 -0600

Seen: 180 times

Last updated: Jan 17 '13