使用ROS功能包camera_calibration进行单目相机和双目相机的内参和外参标定

本文介绍了如何使用ROS进行单目和双目相机的标定,包括生成棋盘格文件、运行标定命令、参数解释以及数据采集。标定过程中,需确保棋盘格在摄像头视野的多个角度出现,以获得准确的标定结果。双目相机标定类似,只需指定左右相机的topic名称。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.概述

本文总结使用ROS标定单目和双目相机的过程,同时提供生成棋盘格文件的方法。

参考链接:
[1]使用ros标定相机的内参和外参
[2]ROS下采用camera_calibration进行双目相机标定

2.生成棋盘格文件

棋盘格可以自己买一个,或者打印一个粘在板子上,棋盘格电子版生成可以参考博客《使用kalibr标定工具进行单目相机和双目相机的标定》

2.单目相机标定

2.1 运行命令

rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.1 image:=/camera/color/image_raw camera:=/camera --no-service-check

2.2 参数解释

  • –size:棋盘格尺寸参数,8x6指的是标定板小方格交点的数量,如果黑白方格的数量是9个x7个,则尺寸参数为8x6
  • –square:为每个小棋盘格的边长,单位是米
  • /camera/color/image_raw:为相机topic的名字
  • 其他参数不需要修改

标定节点运行后界面如下:
在这里插入图片描述

2.3 数据采集

为了得到一个好的标定结果,应该使得标定板尽量出现在摄像头视野的各个位置里,如标定板出现在视野中的左边,右边,上边和下边,标定板既有倾斜的,也有水平的.

以下四个参数表示标定板在x,y方向,缩放情况,倾斜程度的进度,需要不停的在相机视野中上下左右旋转靠近原理等等,让四个参数下面的进度全部变成绿色

x:表示标定板在视野中的左右位置。
y:表示标定板在视野中的上下位置。
size:标定板在占视野的尺寸大小,也可以理解为标定板离摄像头的远近。
skew:标定板在视野中的倾斜位置。

2.4 参数标定

当四个都变绿色时,下面的三个按钮也会变成青色,此时点击CALIBRATE开始标定,过程大约1,2分钟,标定结束后终端会打印标定结果
在这里插入图片描述

点击SAVE按钮会保存采集的数据和标定结果

3.双目相机标定

双目相机标定命令如下,修改相应的左右目相机名称运行命令即可,标定过程和单目标定一致

rosrun camera_calibration cameracalibrator.py --approximate 0.1 --size 8x6 --square 0.1 left:=/camera/infra1/image_rect_raw right:=/camera/infra2/image_rect_raw right_camera:=/camera/right left_camera:=/camera/left --no-service-check

标定界面:
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值