赞
踩
一个刚入门视觉的学习笔记,怕哪天系统崩了找不回笔记了,故上传到博客方便保留。
1、准备工作(安装usb_cam)
1)创建文件夹
- mkditr usb
- cd usb
- mkdir src
2)下载编译安装usb_cam包(该包能将摄像头的图像通过sensor_msgs::Image消息发布)
- cd ros_calibration/src
- git clone https://github.com/bosch-ros-pkg/usb_cam.git usb_cam
- sudo apt install ros-melodic-usb-\cam*
- cd ..
- catkin_make
2、可以通过ls/dev/video*来查看电脑的设备号来选择外接或笔记本摄像头
1)查看到的设备号可以改动文件里的.launch文件中的video0来更换笔记本摄像头或者usb相机来标定(我这里改成usb相机)
3、进行标定
- cd usb
- source ./devel/setup.bash
- roslaunch usb_cam usb_cam-test.launc
1)再打开一个终端运行下面的标定程序(程序中跑动的是包中的标定的py程序) 注:size为网格数,square为网格大小,image为发布的图像话题,camera为相机名
rosrun camera_calibration cameracalibrator.py --size 9x6 --square 0.025 image:=/usb_cam/image_raw camera:=/usb_cam
然后就移动标定板完成标定(X为水平移动,Y为上下平移,size拉远拉近标定板,Skew通过旋转标定板来积累)
标定完成后点击CALIBRATE就会给出相机获取到的内参外参,然后点击SAVE保存就把相机获得的内参保存到tmp(这个文件夹在计算机里)里面,然后再打开里面的.yaml文档
这样就能获得相机标定到的参数。(我们可以通过修改上面的k1,k2,k3,p1,p2五个参数来调试相机)
4、畸变矫正
1)将.yaml文件保存到一个位置(我这里保存到home目录下)
2)将.yaml文档路径保存到usb_cam的launch文件中
gedit usb/src/usb_cam/launch/usb_cam-test.launch
3)将下面这句补到launch文档的launch行下面(下面语句需要修改.yaml文档的路径)注:下面语句$(find usb_cam)要改成ost.yaml的路径,比如我这里路径为home/lyh/
<param name="camera_info_url" type="string" value="file://$(find usb_cam)/ost.yaml"/>
如下图所示:
保存退出即可 ;
4)运行
- cd usb
- source ./devel/setup.bash
- roslaunch usb_cam usb_cam-test.launch
再打开一个终端:
ROS_NAMESPACE=usb_cam rosrun image_proc image_proc
再打开一个终端:
rviz
5)按Add加入已经矫正的image图像话题(选中image_rect添加即可)
加入后就是矫正后的图像了
这是一个新手的初学笔记,欢迎指正。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。