最近在学习ros下usb_cam的使用,本博客记录博主的学习过程和遇到的问题
1.创建工作空间,下载usb_cam包并编译
mkdir -p catkin_uc/src
cd catkin_uc/src
git clone https://github.com/bosch-ros-pkg/usb_cam.git usb_cam
cd ..
catkin_make
source devel/setup.bash
这里下载可能会很慢,可以从博主的这篇博客下载
2.根据摄像头参数修改launch文件(在src/usb_cam/launch文件夹中),插入摄像头并输入:
ls /dev/video*
我的电脑自带的摄像头为video0和video1,所以修改launch文件中的video0为video2,同理,在使用opencv调用摄像头时,videocapture(0)表示调用电脑摄像头,videocapture(2)表示调用外部摄像头
v4l2-ctl -d 0 --all
输出如下:
根据以下三行修改launch文件(其实也可以不改),mjpg对应为yuyv(不是很懂)
Format Video Capture:
Width/Height : 1280/720
Pixel Format : 'MJPG'
如果出现:
执行以下指令:
sudo install v4l2-ctl
3.确定编译通过后在catkin_uc目录下输入:
roslaunch usb_cam usb_cam-test.launch
效果如下:
如果没有弹出摄像头窗口,这可能时缺少对应的ros包,可以打开rviz,在左下角add中的by topic中的image查看是否有摄像头的信息,效果如下:
此时,可以通过补装对应的包来解决:(其实你可能只缺少其中的一个或几个包,但我不知道你缺少哪个包😎)
sudo apt install ros-melodic-uvc-camera
sudo apt install ros-melodic-image-view
sudo apt install ros-melodic-usb-cam
sudo apt-get install ros-melodic-image-*
sudo apt-get install ros-melodic-rqt-image-view
重新测试,这时应该就可以弹出摄像头窗口了,接下来就可以进行相机标定等的学习了
如果出现:
unknown control 'focus_auto'
可以先不管它,应该是不影响的。
以上就是关于usb_cam安装的过程和可能出现的问题,欢迎大家一起交流,共同学习,共同进步!
本文含有隐藏内容,请 开通VIP 后查看