ros 如何使用 openni2_launch

There is very little actual code/etc in openni2_launch, it is mostly a thin wrapper around openni2_camera and rgbd_launch.

 openni2_launch主要是对openni2_camera和rgbd_launch封装

但是wiki上对rgbd_launch解释比较透彻

http://wiki.ros.org/rgbd_launch

rgb_processing

true:

输入:

rgb/image_raw 

输出:

rgb/image_monorgb/image_rect_monorgb/image_color and rgb/image_rect_color.

debayer_processing

true:

和rgb_processing效果一样

false:

只输出rgb/image_rect_color

 

ir_processing

true:

对ir图进行矫正

ir/image_raw -> ir/image_rect_raw

什么是ir camera请看

http://wiki.ros.org/openni_launch/Tutorials/IntrinsicCalibration

 

depth_processing

true:

输入:

 depth/image_raw

输出:

depth/image_rect_raw (rectified)-------矫正之后的深度图

depth/image (metric)------转成浮点数的深度图没有矫正

depth/image_rect (rectified, metric)------转成浮点数的深度图有矫正

depth/points (pointcloud)------点云

 

depth_registered_processing

 true:

输出 registered RGBD pointcloud-----将深度图变换到灰度图下坐标然后进行融合和产生点云

sw_registered_processing

depth/image_rect_raw -> 

depth_registered/sw_registered/image_rect_raw (registered) -> 

depth_registered/points 

AND 

depth_registered/disparity

roslaunch openni2_launch之后比较有用的topic

/camera/depth/image
/camera/depth/image_raw
/camera/depth/image_rect
/camera/depth/image_rect_raw
/camera/depth/points
/camera/depth_registered/image_raw
/camera/depth_registered/points
/camera/depth_registered/hw_registered/image_rect
/camera/depth_registered/hw_registered/image_rect_raw
/camera/rgb/image_raw
/camera/rgb/image_rect_color

在使用openni2_launch时候如果depth_resgistration是false则会出现下面这种图

 rosrun image_view image_view image:=/camera/depth_registered/sw_registered/image_rect_raw

 将depth_resgistration改成true就好了

原文地址:https://www.cnblogs.com/hong2016/p/7615283.html