iai_kinect2
iai_kinect2 copied to clipboard
kinect2_bridge.launch did not publish point cloud
trafficstars
Please see https://github.com/ros-perception/image_pipeline/issues/668 for detail. I finally digger out that the issue is related to the launch file here. the depth to point cloud node should in another launch file and include here. Don't know why, it just works!
More details:
In the new launch file, I deleted the machine parameter.
the whole launch file is like this (I only put qhd point, but other point types should be the same):
<launch>
<arg name="base_name" default="kinect2"/>
<arg name="base_name_tf" default="$(arg base_name)"/>
<arg name="queue_size" default="5"/>
<arg name="nodelet_manager" default="$(arg base_name)"/>
<arg name="respawn" default="true"/>
<arg name="use_nodelet" default="true"/>
<!-- qhd point cloud (960 x 540) -->
<node pkg="nodelet" type="nodelet" name="$(arg base_name)_points_xyzrgb_qhd" output="screen"
args="load depth_image_proc/point_cloud_xyzrgb $(arg nodelet_manager)" respawn="$(arg respawn)">
<remap from="rgb/camera_info" to="$(arg base_name)/qhd/camera_info"/>
<remap from="rgb/image_rect_color" to="$(arg base_name)/qhd/image_color_rect"/>
<remap from="depth_registered/image_rect" to="$(arg base_name)/qhd/image_depth_rect"/>
<remap from="depth_registered/points" to="$(arg base_name)/qhd/points"/>
<param name="queue_size" type="int" value="$(arg queue_size)"/>
</node>
</launch>