在计算机视觉、自动驾驶、机器人视觉等领域,相机标定是一项基础且核心的技术,其本质是建立相机像素坐标与真实世界三维坐标之间的精准映射关系。简单来说,相机作为一种成像设备,会因镜头畸变、安装角度、内部光学结构等因素,导致拍摄的图像与真实场景存在偏差;而相机标定就是通过特定方法,求解出相机的核心参数,修正这些偏差,让机器能够通过图像“看懂”真实世界的空间位置、尺寸和姿态。无论是自动驾驶中的环境感知、车辆定位,还是工业视觉中的尺寸测量、目标追踪,都离不开精准的相机标定——它是所有视觉应用的“地基”,直接决定了后续算法的精度和可靠性。本文将从基础原理出发,拆解相机标定的核心模型、关键参数,结合实操逻辑,带你从0到1彻底掌握相机标定技术。
要理解相机标定,首先要明确一个核心问题:为什么相机拍摄的图像会与真实场景存在偏差?这主要源于两个层面的误差:相机内部的光学/结构误差(内参误差),以及相机与真实世界之间的位置/姿态误差(外参误差)。
从成像逻辑来看,相机的本质是将三维空间中的点(世界坐标)投影到二维图像平面(像素坐标)的过程。理想情况下,我们可以通过简单的几何关系建立这种投影,但实际中,相机镜头并非完美的“针孔”,会存在径向畸变、切向畸变等光学误差;同时,相机的感光元件(CMOS/CCD)安装可能存在倾斜、偏移,导致像素坐标与成像平面的几何关系出现偏差;此外,相机在实际应用中(如自动驾驶车载相机)的安装角度、位置不同,也会导致同一物体在不同相机视角下的像素位置不同。
相机标定的核心原理,就是通过采集已知尺寸、已知位置的标定靶标(如棋盘格、圆形靶标)的图像,利用靶标上特征点的“真实世界坐标”与“图像像素坐标”的对应关系,建立数学方程,求解出能够修正这些误差的相机参数,最终实现“像素坐标→真实世界坐标”的精准转换。形象地说,标定就像是给相机“校准视力”,让它能够准确“感知”真实世界的空间信息。
需要注意的是,相机标定并非一次性操作:当相机的安装位置、姿态发生变化,或镜头出现磨损、更换,甚至拍摄环境(如温度、光线)发生剧烈变化时,都需要重新进行标定,否则会导致参数失效,影响后续应用的精度。比如自动驾驶车辆的前视相机,若因车辆碰撞导致安装角度偏移,未重新标定就会导致车道线识别、目标测距出现偏差,进而影响行驶安全。