Matlab摄像头标定全流程指南

        简介:摄像头的标定工作可以使用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  标定数据结果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值