ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

Multiple Kinects?

asked 2013-03-12 11:54:44 -0500

TFinleyosu gravatar image

updated 2016-10-24 08:59:42 -0500

ngrennan gravatar image

Is it possible to use more than one Kinect to gather multiple views around an object at the same time?

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
8

answered 2013-03-12 17:41:59 -0500

mblanton gravatar image

updated 2013-03-13 10:24:13 -0500

It is absolutely possible. I have run 4 ASUS sensors (Kinect) from one computer. Each Kinect needs to be on its own bus, or you will have issues getting all the data through. You need to give each Kinect a unique camera name in the launch file and create separate frames.launch files for each one. I don't have access to the launch files right now to give you an example, but I can get you an example launch file tomorrow.

EDIT

Here is an example launch file that I used recently to launch two Kinects. This should be a decent template to get you going. This launch file is specific to my system (the "device_id" values are specific to my bus configurations), so it probably won't work by simply copying and pasting. Also, I was running this on Ubuntu 11.10 with ROS Electric:

k1_2.launch

<launch>
  <arg name="debug" default="false"/>
  <arg if="$(arg debug)" name="launch_prefix" value="xterm -rv -e gdb -ex run - args"/>
  <arg unless="$(arg debug)" name="launch_prefix" value=""/>

  <node pkg="openni_camera" type="openni_node" name="openni_node1" ns="camera1" launch-prefix="$(arg launch_prefix)" output="screen">
    <param name="device_id" value="004@02"/>
    <param name="rgb_frame_id" value="kinect1_rgb_frame" />
    <param name="depth_frame_id" value="kinect1_depth_frame" />
    <param name="use_indices" value="false" />
    <param name="depth_registration" value="true" />
    <param name="image_mode" value="2" />
    <param name="depth_mode" value="2" />
    <param name="debayering" value="2" />
    <param name="depth_time_offset" value="0" />
    <param name="image_time_offset" value="0" />
  </node>

  <node pkg="openni_camera" type="openni_node" name="openni_node2" ns="camera2" launch-prefix="$(arg launch_prefix)"  output="screen">
    <param name="device_id" value="003@05"/> 
    <param name="rgb_frame_id" value="kinect2_rgb_frame" />
    <param name="depth_frame_id" value="kinect2_depth_frame" />
    <param name="use_indices" value="false" />
    <param name="depth_registration" value="true" />
    <param name="image_mode" value="2" />
    <param name="depth_mode" value="2" />
    <param name="debayering" value="2" />
    <param name="depth_time_offset" value="0" />
    <param name="image_time_offset" value="0" />
  </node>

</launch>
edit flag offensive delete link more

Comments

2
sedwards gravatar image sedwards  ( 2013-03-12 18:20:52 -0500 )edit

Thanks! Don't know how I missed that.

TFinleyosu gravatar image TFinleyosu  ( 2013-03-15 05:19:57 -0500 )edit

How can you get roslaunch to recognize your custom launch file. I always get an error that says, "[2Kinect.launch] is neither a launch file in package [openni_launch] nor is [openni_launch] a launch file name"

Athoesen gravatar image Athoesen  ( 2013-11-04 11:51:58 -0500 )edit
jacksonkr_ gravatar image jacksonkr_  ( 2017-05-08 12:15:13 -0500 )edit
3

answered 2013-03-12 14:01:13 -0500

joq gravatar image

Yes, but there may be bandwidth problems if you connect them both to the same USB port.

edit flag offensive delete link more

Question Tools

4 followers

Stats

Asked: 2013-03-12 11:54:44 -0500

Seen: 2,945 times

Last updated: Mar 13 '13