ROS 教程之 vision: 摄像头标定camera calibration

今天学习了相机标定,按照
https://blog.csdn.net/heyijia0327/article/details/43538695
在这里插入图片描述

1.

先根据我之前的博客,跑自己的摄像头ORB-SLAM2,进行到1.7(摄像头开启)。

2.检查usb_cam package发布的消息:

rostopic list

看是否有如下消息,并记住名称
/usb_cam/camera_info
/usb_cam/image_raw

3.启动标定程序:

rosrun camera_calibration cameracalibrator.py --size 8x5 --square 0.03 image:=/usb_cam_node/image_raw camera:=/usb_cam_node

其中参数size 11x8 注意是字母x,他是棋盘内部角点个数,如下图所示。square为棋盘正方形边长0.03m,注意刚刚开始标定的时候,CALIBRATE按钮是灰色的。
在这里插入图片描述

4.标定程序使用方法:

为了得到一个好的标定结果,应该使得标定板尽量出现在摄像头视野的各个位置里:

如标定板出现在视野中的左边,右边,上边和下边,标定板既有倾斜的,也有水平的,。

          界面中的x:表示标定板在视野中的左右位置。

             y:表示标定板在视野中的上下位置。

			size:标定板在占视野的尺寸大小,也可以理解为标定板离摄像头的远近。

			skew:标定板在视野中的倾斜位置。

并还要有棋盘占住大部分视野的图片,如下图所示:
在这里插入图片描述
按着上述方式不断移动标定板,直到CALIBRATE按钮变亮,点击该按钮就会进行标定。标定过程将持续一两分钟,并且标定界面会变成灰色,无法进行操作,耐心等待即可。

标定完成以后,你将看到如下图所示的窗口,窗口中的图像为标定后的结果,纠正了畸变。
在这里插入图片描述
并且,摄像机的各个参数会出现在标定程序的终端窗口中,如下:
在这里插入图片描述
如果对标定结果满意,点击COMMIT按钮将结果保存到默认文件夹,在usb_cam窗口中可以看到如下信息,说明标定结果已经保存在相应文件夹下下次启动usb_cam节点时,会自动调用。
标定文件如图
在这里插入图片描述

最后

补充原博客没有的,这个存储路径找不到,于是我用命令打开yaml文件的

xdg-open head-camera.yaml

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/xyt723916/article/details/91403821