depth_image_proc nodelet not publishing

asked 2018-02-04 02:53:46 -0500

vincent78 gravatar image

I would like to register the point cloud of a kinect with an rgb image. In my setup, I already use openni2_launch to register the point cloud with the "native" rgb image.

But supplementary to this, I'd like to filter the rgb image and generate a supplementary point cloud registered with this filtered image.

First, before implementing the filtering code, I tried to generate this second point cloud using the "native" rgb image.

But if I launch the code below (after launching openni2_launch/openni2.launch), the topic "/camera/depth_registered/yuv_enhanced_points" appears ("rostopic list") but is not published ("rostopic hz"). The terminal does not show any error and the nodelet seems to be running.

Topics expected from openni2.launch are published ok and shows up in rviz.

<launch>

<node pkg="nodelet" type="nodelet" name="yuv_enhance_nodelet_manager" args="manager" output="screen"/>
<node pkg="nodelet" type="nodelet" name="yuv_enhance_nodelet" args="load depth_image_proc/point_cloud_xyzrgb yuv_enhance_nodelet_manager" output="screen">
       <remap from="rgb/camera_info" to="/camera/rgb/camera_info"/>
       <remap from="rgb/image_rect_color" to="/camera/rgb/image_color_rect"/>
       <remap from="depth_registered/image_rect" to="/camera/depth_registered/hw_registered/image_rect_raw"/>
       <remap from="depth_registered/points" to="/camera/depth_registered/yuv_enhanced_points"/>
       <param name="queue_size" type="int" value="1"/>
</node>

</launch>

anything I am missing ?

note: it is unclear to me if I should remap to "/camera/depth_registered/hw_registered/image_rect_raw", "/camera/depth_registered/sw_registered/image_rect_raw" or /camera/depth_registered/image_rect_raw". I tried with these three, with the same result/

note: I am on ubuntu 16.04 / ros kinetic

edit retag flag offensive close merge delete

Comments

Setting up a nodelet does seem confusing. My robot needs the Zed depth image transformed into a point cloud and it seems the depth_image_proc can do this, but how/where to set this up is not explained. Do I have to compile something or just set up the proper launch file? I also have Xenial/Kinetic

Rodolfo8 gravatar image Rodolfo8  ( 2018-03-14 11:40:32 -0500 )edit