4. 相机标定实战

在视觉定位与运动平台闭环补偿系统中,相机标定的质量直接决定了像素坐标到物理坐标映射的可信度。如果内参和畸变系数存在偏差,即使后续的亚像素边缘提取再精确,补偿量也会被系统性地放大或扭曲。本节围绕张正友标定法的实现逻辑、畸变模型的选择依据、标定板的制作规范以及精度评价方法展开,目标是让读者能够独立完成一次可复现、可评价的相机标定。

张正友标定法的核心逻辑

张正友标定法(Zhang's method)的本质是利用平面棋盘格在不同姿态下提供的多组单应矩阵,先线性求解相机内参的初始值,再通过最大似然估计对全部参数进行非线性优化。其数学链条可以概括为:世界坐标系中的棋盘格角点已知,通过单应矩阵 H 将平面点映射到图像点,而 H 又由内参矩阵 K 和外参 [R|t] 构成。由于旋转向量 r1、r2 正交且模长相等,可以从多个 H 中构造出关于 K 的约束方程,从而解出焦距、主点等内参。

实际操作中,我们并不需要手写这些方程,但理解其约束来源有助于判断标定结果是否合理。例如,当标定图像数量过少或姿态变化过于单一时,正交约束不足,焦距和主点之间会出现耦合,表现为重投影误差看似很小,但实际定位时误差随距离迅速增大。因此,张正友标定法的“实战”关键不在于算法本身,而在于采集数据的多样性和标定板的制作质量。

标定板制作与采集规范

标定板是标定系统的物理基准,其制作精度直接进入误差预算。对于运动平台补偿场景,建议使用陶瓷或铝基板上的玻璃铬版棋盘格,平整度优于 0.02 mm,格距公差控制在 ±0.01 mm 以内。如果使用打印纸,必须贴在平整的玻璃或亚克力板上,避免纸张翘曲。棋盘格的内角点数量建议不少于 7×9,格距根据视场大小选择,通常使棋盘格占据图像宽度的 60%~80%。

采集图像时,需要覆盖整个视场,包括四角和中心区域。姿态变化应包含绕 X、Y、Z 轴的旋转,倾斜角建议在 ±30° 范围内变化,避免所有图像都近似正对相机。每张图像中棋盘格应完整可见,且角点检测置信度高于阈值。一般建议采集 15~25 张有效图像,过少会导致参数不稳定,过多则边际收益递减。采集过程中保持相机焦距、光圈和对焦环锁定,避免内参变化。

张正友标定数据流与精度评价链路 标定板 格距 5 mm / 7×9 内角点 多姿态图像采集 15~25 张 倾斜 ±30° 覆盖四角与中心 焦距/光圈锁定 角点检测 亚像素细化 剔除置信度低 棋盘格完整性检查 参数求解与优化 单应矩阵 → 内参初值 LM 非线性优化 输出 K, k1, k2, p1, p2 畸变模型选择 径向:k1, k2, k3 切向:p1, p2 鱼眼/广角:k1~k4 或等距模型 原则:够用即可,避免过拟合 精度评价指标 重投影误差 RMS(像素) 最大残差与分布均匀性 参数标准差(协方差) 目标:RMS < 0.3 px 独立验证 留出法:未参与标定的图像 物理距离验证:已知位移 运动平台闭环残差检查 目标:物理误差 < 0.05 mm 误差偏大 → 补充姿态/更换标定板/调整畸变模型 标定闭环:采集 → 检测 → 求解 → 评价 → 验证 → 反馈修正 重投影误差小 ≠ 物理定位准,必须用独立物理量验证

畸变模型的选择依据

相机畸变主要分为径向畸变和切向畸变。径向畸变由镜头曲率引起,表现为图像边缘的桶形或枕形变形,通常用 k1、k2、k3 三个系数描述;切向畸变由镜头与传感器不平行引起,用 p1、p2 描述。对于普通工业镜头,采用 k1、k2、p1、p2 的五参数模型通常足够。如果使用广角或鱼眼镜头,则需要引入 k3 甚至 k4,或者改用等距投影模型。

模型选择的原则是“够用即可”。过度增加畸变系数会导致过拟合:在标定图像上重投影误差很小,但在未参与标定的区域,畸变校正反而出现振荡。判断方法是观察残差分布:如果残差在图像边缘呈现系统性弯曲,说明径向高阶项不足;如果残差在四个象限呈现反对称模式,说明切向项需要保留。实际工程中,可以先固定 k3=0 求解,再放开 k3 观察 RMS 是否显著下降,若下降幅度小于 0.02 px,则不必引入。

标定精度评价与验证

重投影误差是最常用的评价指标,但它只反映标定图像上的拟合程度,不能直接代表物理定位精度。一个完整的评价流程应包含三个层次:第一,检查重投影误差的 RMS 和最大值,RMS 建议控制在 0.3 像素以内,最大残差不宜超过 0.8 像素;第二,检查参数标准差,焦距和主点的标准差应远小于其估计值,若主点标准差接近主点本身,说明数据不足或姿态单一;第三,进行独立物理验证,例如将标定板移动一个已知距离,用标定参数计算位移,与实际位移比较,误差应小于 0.05 mm。

在运动平台闭环补偿中,还可以直接观察补偿后的残差。如果标定参数准确,平台运动到不同位置时,视觉测量的偏差应呈现随机分布,而不是随位置单调变化。若发现系统性趋势,说明畸变模型或外参存在偏差,需要回到标定环节重新检查。

实操建议:标定完成后,保存原始图像、角点检测结果和标定参数,便于后续复现和对比。每次更换镜头、调整焦距或改变相机安装角度后,都必须重新标定。对于高精度补偿场景,建议每季度复检一次标定参数。

标定结果检查清单

检查项合格标准不合格时的处理
有效图像数量≥ 15 张补充不同姿态图像
重投影误差 RMS< 0.3 px检查角点检测、剔除异常图像
最大残差< 0.8 px检查该图像是否模糊或倾斜过大
主点标准差< 主点值的 5%增加图像数量或姿态多样性
物理位移验证误差 < 0.05 mm检查标定板精度、重新标定
残差分布无明显方向性趋势调整畸变模型阶数

张正友标定法本身并不复杂,真正决定成败的是标定板的制作精度、图像采集的覆盖范围和精度评价的严谨程度。把这三个环节做扎实,后续的视觉定位和闭环补偿才有可靠的基础。