一、openni_camera
1.openni_camera:
OpenNI摄像机在ROS下的驱动,可以发出原始的depth、RGB、IR图像流。
OpenNI摄像包括: Microsoft Kinect, PrimeSense PSDK, ASUS Xtion Pro、Pro Live。
这是最简化的驱动程序,节点只可以发送原始数据。因此推荐使用openni2_launch安装包, 因为其中包含了对RGB-D数据的进一步处理。
Ubuntu下的安装:
sudo apt-get install ros-<rosdistro>-openni2-camera
或者
sudo apt-get install ros-<rosdistro>-openni2-launch
2.openni2_node发布的话题:
(1)RGB camera:
rgb/camera_info(sensor_msgs/CameraInfo)//相机的校准和元数据
rgb/image_raw (sensor_msgs/Image) //来自于设备的原始数据
(2)Depth camera:
depth_registration为false(关闭OpenNI registration)时:
depth/camera_info (sensor_msgs/CameraInfo)//相机的校准和元数据
depth/image_raw (sensor_msgs/Image) //来自于设备的原始数据,毫米表示的uint16格式深度数据。
Registered depth camera (aligned with RGB camera),depth_registration为true(使能OpenNI registration):
depth_registered/camera_info (sensor_msgs/CameraInfo)//相机的校准和元数据,与depth_registered/image_raw同步。
depth_registered/image_raw (sensor_msgs/Image)//来自于设备配准后的原始数据,毫米表示的uint16格式深度数据。
(3)IR camera:
ir/camera_info (sensor_msgs/CameraInfo) /相机的校准和元数据
ir/image_raw (sensor_msgs/Image) //原始的uint16 IR image
(4)IR projector:
projector/camera_info (sensor_msgs/CameraInfo)
伪造IR projector的校准,基准以P矩阵形式编码,立体进程节点可以使用depth和projector信息作为左右对。
3.服务:
rgb/set_camera_info (sensor_msgs/SetCameraInfo) //设置RGB camera校准
ir/set_camera_info (sensor_msgs/SetCameraInfo)//设置IR camera校准
4.参数:
(1)~device_id (string, default: #1)
指定打开的设备,推荐以下格式:
#1 :发现的第一个设备使用该编号。
2@3 :USB总线2,地址为3。
B00367707227042B:设备的序列名。
(2)~rgb_frame_id(string, default: /openni_rgb_optical_frame)