
引言
相机将三维世界中的空间点映射到二维图像平面的过程可以用一个几何模型进行描述。这个模型有很多种,其中最常见的有针孔相机模型pinhole model和鱼眼相机模型fisheye model。
坐标系
不管是针孔相机模型,还是鱼眼相机模型,其成像过程都涉及到四个坐标系:世界坐标系、相机坐标系、图像物理坐标系、图像像素坐标系以及这四个坐标系间的转换。
1. 世界坐标系 World
世界坐标系以空间中某一点作为世界坐标系原点,建立的坐标系。
设空间中有一点P,在世界坐标系中的坐标为(Xw, Yw, Zw).
2. 相机坐标系 Camera
一般在图像处理中,相机坐标系以相机的光轴为原点,前为Z轴,右为X轴,下为Y轴。这也是opencv中采用的相机坐标系 camera。
通过刚体变换公式,将空间点P的世界坐标系下坐标转换为相机坐标系下坐标(Xc, Yc, Zc)。
Xc=RXw+t //先旋转后平移
Xc=R(Xw+t) //先平移后旋转
R为旋转矩阵,t为平移向量,一般是先旋转后平移。
齐次方程如下:
3. 图像物理坐标系 Oxy
图像物理坐标的原点是与相机光轴的交点。图像物理坐标系的单位通常为毫米mm。
原点是相机光轴与平面的交点(称为主点),即图像的中心点,X轴、Y轴分别与u轴、v轴平行。故两个坐标系实际是平移关系,即可以通过平移就可得到。
这里是相机的投影成像。将空间点投影到平面上。
- 相机坐标系转归一化相机坐标系:
- 归一化坐标系转图像物理坐标系,只相差了一个倍数f。
f为有效焦距(光心到图像平面的距离)。
【注】:
上式是针孔相机的投影模型。
这里是与鱼眼相机投影不同的地方,
在鱼眼模型中会将相机下的空间点先转换为归一化相机球面上,
再从球面投影到平面上。
4. 图像像素坐标系 Ouv
图像像素坐标系是一个二维直角坐标系,反映了相机CCD/CMOS芯片中像素的排列情况。原点o位于图像的左上角,u轴、v轴分别于像面的两边平行。
图像像素坐标系中坐标轴的单位是像素(整数)。
每一个像素在u轴和v轴方向上的物理尺寸为dx和dy。
dx和dy表示感光芯片CMOS或CCD上像素的实际大小,是连接像素坐标系和真实尺寸坐标系的,u0,v0是图像平面中心。
5. 最终针孔投影模型
我们将世界到相机的变换称为相机的外参矩阵R,t。
我们将相机投影到图像的变换称为相机的内参矩阵K。
外参数->将世界坐标系转换成相机坐标系。
内参数->将相机坐标系转换成图像坐标系。
【注】:
相机的内参矩阵一般是不变的;
相机的外参矩阵是随着世界坐标系变化的。