本人测试环境:ubuntu18.04。
这里有3中方法,方法1为ROS驱动版本,方法3为自己写的,推荐自己手写方式。
方法1:使用usb_cam驱动读取
1.1 安装编译usb_cam驱动
在终端运行以下命令:
cd ~/catkin_ws/src
git clone https://github.com/bosch-ros-pkg/usb_cam.git
cd ..
catkin_make
1.2 测试usb_cam驱动
- 打开摄像头。
source devel/setup.bash
rosrun usb_cam usb_cam_node
默认打开的是/dev/video0摄像头,如果想要打开自己的usb摄像头,可以改为/dev/video1(查看自己的usb接口对应名字)。运行以上程序并不能看到图像,因为只是打开摄像头。
- 运行显示图像
rosrun image_view image_view image:=/usb_cam/image_raw
1.3 使用launch打开
也可以使用launch文件对以上操作进行统一编写,如下:
<launch>
<node name="usb_cam" pkg="usb_cam" type="usb_cam_node" output="screen" >
<param name="video_device" value="/dev/video0" />
<param name="image_width" value="640" />
<param name="image_height" value="480" />
<param name="pixel_format" value="yuyv" />
<param name="camera_frame_id" value="usb_cam" />
<param name="io_method" value="mmap"/>
</node>
<node name="image_view" pkg="image_view" type="image_view"<

本文介绍了在Ubuntu18.04环境下使用ROS读取USB摄像头的三种方法:通过usb_cam驱动、video-stream-opencv库以及自定义代码实现。推荐使用自定义代码方式,该方法涉及配置CMakeLists.txt文件,并展示了如何直接用OpenCV操作摄像头并发布图像到ROS话题。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



