简介
ROS image_proc : Link
通常该算法位于相机驱动程序和视觉处理节点之间。image_proc从单幅原始图像流中进行图像校正和颜色处理,以去除相机的失真。
常用节点
- image_proc/debayer
获取原始相机流并发布它的单色和彩色版本。如果原始图像是 Bayer 模式,则使用双线性插值进行 debayers。- 订阅的主题
image_raw (sensor_msgs/Image
)
来自相机驱动程序的原始图像流。 - 发表的主题
image_mono (sensor_msgs/Image
)
单色图像。
image_color (sensor_msgs/Image
)
彩色未经校正的图像。
- 订阅的主题
- image_proc/rectify
获取未校正的图像流及其相关的校准参数,并生成校正的图像。- 订阅的主题
image_mono (sensor_msgs/Image
)
未校正的图像流。
camera_info(sensor_msgs/CameraInfo
)
相机元数据。 - 发表的主题
image_rect (sensor_msgs/Image
)
修正后的图像。 - 参数
interpolation (int, default: 1)
图像像素之间的插值算法。可选值为:
NN (0): Nearest neighbor
Linear (1): Linear
Cubic (2): Cubic
Lanczos4 (4): Lanczos4
- 订阅的主题
例子
<!-- 生成一个 image_proc/rectify nodelet 来校正 深度图像 -->
<node pkg="nodelet" type="nodelet" name="rectify_depth"
args="load image_proc/rectify manager --no-bond"
respawn="true">
<!-- image_mono:未矫正的的图像输入端口 image_rect:经过校正后的图像输出端口 -->
<!-- depth/image_raw:未矫正的的图像的相机端输出端口 depth/image_rect:经过校正后的图像输出端口 -->
<remap from="image_mono" to="depth/image_raw" />
<param name="interpolation" value="0" />
<remap from="image_rect" to="depth/image_rect" />
</node>
首先引入nodelet管理器,来避免原始图片在不同节点间的复制,减少内存使用,加快处理速度。
其次使用image_proc/rectify处理校正深度图,采用的插值算法为最近值填充。
评论区