3. 单相机成像模型:针孔相机模型、像平面与物平面映射、畸变参数简介

在四相机阵列环形布局设计中,理解单相机的成像模型是后续进行视场拼接、重叠区域计算和畸变校正的理论基础。本节从经典的针孔相机模型出发,逐步推导像平面与物平面的映射关系,并简要介绍影响成像精度的主要畸变参数。

3.1 针孔相机模型

针孔相机模型是几何光学中最基础的成像模型,它假设光线通过一个无限小的孔径(针孔)后,在成像平面上形成倒立的实像。该模型忽略了透镜的厚度和像差,将相机简化为一个线性投影系统。

在针孔模型中,三维空间中的任意点 P = (X, Y, Z) 通过光心投影到像平面上的点 p = (x, y)。其数学关系由相似三角形导出:

x = f * (X / Z)
y = f * (Y / Z)

其中 f 为焦距(光心到像平面的距离)。该模型在齐次坐标下可表示为:

s * [x, y, 1]^T = K * [R | t] * [X, Y, Z, 1]^T

其中 K 为相机内参矩阵,[R | t] 为外参矩阵,s 为尺度因子。

关键概念:针孔模型是线性模型,实际镜头由于存在畸变,成像点会偏离理想位置。在阵列标定中,必须先对单相机进行畸变校正,才能使用针孔模型进行后续计算。

3.2 像平面与物平面映射

在实际应用中,我们更关心物平面(如地面、检测平面)上的点与像平面像素坐标之间的映射关系。对于环形阵列布局,每个相机通常以一定俯仰角和偏航角安装,物平面与像平面之间存在透视变换。

映射过程分为三个步骤:

  1. 世界坐标系 → 相机坐标系:通过旋转矩阵 R 和平移向量 t 进行刚体变换。
  2. 相机坐标系 → 归一化像平面:除以 Z 坐标,得到归一化坐标 (xn, yn)。
  3. 归一化像平面 → 像素坐标系:通过内参矩阵 K 进行仿射变换,得到像素坐标 (u, v)。

内参矩阵 K 的标准形式为:

K = [fx,  0, cx;
      0, fy, cy;
      0,  0,  1]

其中 fx、fy 为 x、y 方向的等效焦距(单位:像素),(cx, cy) 为光心在像素坐标系中的偏移。

坐标系 表示 维度 说明
世界坐标系 (Xw, Yw, Zw) 3D 全局参考系,阵列标定基准
相机坐标系 (Xc, Yc, Zc) 3D 以光心为原点,Z 轴指向物方
归一化像平面 (xn, yn) 2D Zc = 1 的虚拟平面
像素坐标系 (u, v) 2D 图像行列索引,单位像素
阵列设计提示:在环形布局中,每个相机的物平面映射关系不同。通过单应性矩阵 H = K * [r1, r2, t] 可直接建立物平面到像平面的映射,用于视场重叠区域的快速计算。

3.3 畸变参数简介

实际镜头由于制造和装配误差,成像点会偏离针孔模型的理想位置,这种偏离称为畸变。畸变主要分为径向畸变和切向畸变两类。

3.3.1 径向畸变

径向畸变由透镜形状引起,光线在透镜边缘的折射程度与中心不同。畸变程度随距离光心的半径增大而增大。数学模型为:

x_distorted = x * (1 + k1*r^2 + k2*r^4 + k3*r^6)
y_distorted = y * (1 + k1*r^2 + k2*r^4 + k3*r^6)

其中 r² = x² + y²,k1、k2、k3 为径向畸变系数。k1 主导畸变方向(正值为枕形畸变,负值为桶形畸变)。

3.3.2 切向畸变

切向畸变由透镜与成像平面不平行(装配倾斜)引起。数学模型为:

x_distorted = x + [2*p1*x*y + p2*(r^2 + 2*x^2)]
y_distorted = y + [p1*(r^2 + 2*y^2) + 2*p2*x*y]

其中 p1、p2 为切向畸变系数。

阵列标定注意事项:在四相机阵列中,边缘视场的畸变通常较大。若未校正畸变直接进行图像拼接,会导致拼接缝处出现重影或错位。建议在标定阶段对每个相机独立求解畸变参数,并在拼接前统一校正。

完整的畸变模型包含 5 个参数(k1, k2, p1, p2, k3),在 OpenCV 等工具中通常使用 cv::calibrateCamera() 函数进行标定求解。

3.4 单相机成像流程总览

下图总结了从三维世界点到二维像素坐标的完整成像流程,包含畸变环节:

单相机成像流程(含畸变) 世界坐标 (Xw, Yw, Zw) 外参变换 [R | t] 相机坐标 (Xc, Yc, Zc) 归一化平面 (xn, yn) 畸变校正 k1,k2,p1,p2,k3 内参变换 K 矩阵 像素坐标 (u, v) 畸变校正位置说明 畸变校正应在归一化平面进行, 再通过内参矩阵映射到像素坐标

3.5 畸变对阵列视场的影响

在四相机环形布局中,畸变会导致以下问题:

  • 视场边界变形:桶形畸变使边缘视场向内收缩,实际覆盖区域小于理论值;枕形畸变则相反。
  • 重叠区域计算误差:未校正畸变时,基于针孔模型计算的重叠区域与实际重叠区域存在偏差,影响拼接精度。
  • 特征点匹配偏移:在相邻相机重叠区域,畸变会导致同名点像素坐标偏移,降低特征匹配的鲁棒性。
工程建议:在阵列标定前,先使用棋盘格标定板对每个相机单独进行畸变标定,获取畸变参数。在实时处理中,通过查找表(LUT)或 GPU 加速进行畸变校正,确保后续拼接输入的是无畸变图像。