概述

相机标定(Camera Calibration)是确定相机内部参数和畸变系数的过程,是计算机视觉和机器人视觉系统的基础步骤。只有经过准确标定,才能从二维图像中恢复三维空间信息,或在多相机系统中建立准确的几何关系。

相机标定的目标是估计 相机模型 中的参数,主要包括内参矩阵 (焦距 和主点 )以及畸变系数(径向畸变和切向畸变参数)。

标定方法

张正友标定法

张正友(Zhang’s Method)标定法是目前最广泛使用的相机标定方法,由微软研究院的张正友博士于 2000 年提出。该方法使用一个平面标定板(通常是棋盘格),通过在不同角度拍摄多张标定板图像来求解相机参数。

基本流程:

  1. 打印高精度棋盘格标定板,测量方格实际尺寸
  2. 从不同角度和距离拍摄 15-30 张标定板图像,覆盖视场各区域
  3. 检测每张图像中的棋盘角点,进行亚像素精化
  4. 使用 OpenCV calibrateCamera() 求解内参和畸变系数
  5. 计算 重投影误差 评估标定质量(目标 < 0.5 像素)

其他标定方法

方法标定板特点
Charuco 标定ChArUco 混合板部分遮挡时仍可用,鲁棒性更强
圆点标定圆点阵列检测精度高,适合高精度场景
自标定无需标定板从自然场景中估计参数,精度有限

外参标定

除了内参标定,多传感器系统还需要标定传感器之间的外参(相对位姿)。常见的外参标定包括:

  • 双目标定:确定左右相机之间的旋转和平移关系
  • 相机-IMU 标定:确定相机和 IMU 之间的时空变换关系,常用 Kalibr 工具
  • 手眼标定:确定相机与机器人末端执行器之间的变换关系

标定质量评估

  • 重投影误差:将标定板角点的三维坐标通过估计的相机参数投影回图像,与检测到的角点比较,误差越小越好
  • 覆盖率:标定图像应覆盖视场的各个区域,尤其是边角区域
  • 标定板姿态多样性:应包含不同的倾斜角度和距离

相关工具库

  • OpenImuCameraCalibrator:开源的 IMU-相机联合标定工具
  • imu_tk:IMU 内参标定工具
  • Kalibr:ETH Zurich 开发的多传感器标定工具集
  • OpenCV calibrateCamera():最常用的单目/双目标定接口