简介:摄像头的标定工作可以使用OpenCalib\Kalibr\Matlab Calibration Toolbox\Autoware Calibration Tool等开源标定工具;本文介绍如何使用Matlab Calibration Toolbox来进行标定。我使用的是Matlab R2024b(需安装“Image Processing Toolbox”和“Computer Vision Toolbox”)
1棋盘格标定板
校准板是相机标定过程中用于提供已知空间坐标的参考对象,通常由高对比度的图案组成。
1.1关键要求:
高精度制造
校准板上的图案(如棋盘格、圆点阵列)必须具有已知且精确的几何尺寸,误差需控制在标定所需的精度范围内(例如亚像素级)。
平面性
校准板表面需保持绝对平面,避免因弯曲或变形引入标定误差。在固定标定板时需要注意,标定板的纸张一定平铺,没有弯曲,否则会影响最后的数据精度,建议使用木板固定。
材质稳定性
选择低热膨胀系数的材料(如陶瓷、玻璃或金属),减少环境温度变化导致的形变。
1.2常见校准板类型
棋盘格校准板
由黑白交替的方格组成,角点检测算法易于提取交点坐标。方格尺寸需均匀,边缘清晰无模糊。这是最常用的标定板。
圆点阵列校准板
形标志点中心定位精度高,适合高精度标定。通常以白色背景搭配黑色圆点,圆心间距已知。
Charuco板
结合棋盘格与ArUco标记,既可检测角点又能利用标记ID消除匹配歧义,适用于动态或部分遮挡场景。
1.3使用注意事项
照明均匀性
避免反光或阴影,确保校准板表面光照均匀。自然光或漫射光源更佳。
多角度拍摄
标定时需从不同视角拍摄校准板(至少8-20张),覆盖图像边缘和中心区域。
2。准备标定图像
通过Matlab生成一个黑白棋盘格标定板,方格为大小20mm,排列为9*12 (square_size = 20;rows = 9; cols = 12;),命令代码如下图。

图1.2 标定板生成代码

图1.3 棋盘格标定板图
3.拍摄标定板
1. 将棋盘格标定板固定在平面上,确保方格边缘清晰无遮挡。
2. 用PC端摄像头从不同角度、不同距离拍摄标定板(建议拍摄8-10张),需覆盖摄像头视野的四个角落及中心区域(避免图像模糊或标定板倾斜过度)。
3. 将拍摄的图像(格式为JPG/PNG)保存到Matlab当前工作目录下,便于后续导入。

图2.1 标定板照片
4.打开Matlab标定工具箱
1.打开Matlab,点击APP,在更多中找到“Camera Calibrator”,点击进入工具界面。

图2.2
2.在工具箱界面点击“Add Images”,选择步骤1中保存的所有标定图像,弹出“Image Import”对话框。

图2.3
3. 在对话框中设置“Checkerboard square size”为20(单位:mm),“Number of inner corners”为“9”(行)和“12”(列),点击“OK”导入图像。

图2.4
5.检测标定板内角点和执行标定
1.导入图像后,Matlab会自动检测每张图像中棋盘格的内角点,检测结果以“绿色圆圈”标记在图像上。

图2.5 检查内角点
2. 点击工具箱界面的“Calibrate”按钮,弹出“Calibration Settings”对话框,点击“OK”开始标定,Matlab会基于内角点的世界坐标与图像坐标,通过最小二乘法求解内参、外参及畸变系数,过程约10-30秒(取决于图像数量)。

图2.5 执行标定结果图
若某张图像检测失败(无红色十字),右键删除该图像;若内角点标记偏移,可双击图像手动调整十字位置,确保与方格交点对齐。
6.标定结果
1. 点击“Export Camera Parameters”按钮,将标定得到的参数(内参、外参、畸变系数)保存为Matlab结构体(如cameraParams),便于后续调用。

图2.6
2. 回到Matlab主页面,在右侧工作区找到cameraParams,点击打开,标定结果将陈列,如图所示。

图2.7 标定数据结果
2135

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



