什么是单应性?
图像中的2D点(x,y)可以被表示成3D向量的形式(x1,x2,x3),其中x=x1/x3,y=x2/x3。它被叫做点的齐次表达,位于投影平面P2上。所谓单应就是发生在投影平面P2上的点和线可逆的映射。其它叫法包括射影变换、投影变换和平面投影变换等。
单应变换矩阵是一个3*3的矩阵H。这个变换可以被任意乘上一个非零常数,而不改变变换本身。所以它虽然具有9个元素,但是具有8个自由度。这意味这它里面有8个未知参数待求。
典型地,可以通过图像之间的特征匹配来估计单应矩阵。
和其它几何变换的比较
更好地理解单应变换,可将它与其它几何变换做比较。单应变换具有8个自由度,其它一些更简单的变换也是3*3矩阵,只不过它们包含一些特定的约束来降低自由度的数量。
从紧约束至松约束,逐步接近单应变换,下面展示了这些变换的层级,以及展示把单应变换分解成简单变换的集合。
刚体变换
它是保持欧式距离的变换,这意味着图像之间只有2D旋转和2D平移运动。它只有3个自由度。刚体变换表示如下:
x′=(R0Tt1)x
其中R是个2*2的旋转矩阵,t是2维列向量,0T是为0的二维行向量。
相似变换
相比刚体变换增加了均匀的缩放。均匀的意思是各个方向的缩放比例相同。尺度变换增加了一个自由度,所以自由度为4。和刚体一样,具有保角性。点之间的距离不再保持不变,但距离比保持不变。相似变换表示如下:
x′=(sR0Tt1)x
其中s是缩放尺度。
仿射变换
仿射变换和相似变换近似,不同之处在于:相似变换具有单一旋转因子和单一的缩放因子,而仿射变换是两个旋转因子和两个缩放因子的组合。所以它又多了两个自由度,共6个自由度。和相似变换不同,它不具有保角性和保持距离比的性质。尽管如此,它仍具有“保持平行”的特性,即原图的平行线,变换后仍是平行线。仿射变换表示如下:
x′=(A0Tt1)x
其中A是2*2的非奇异矩阵。
A可被分解如下:
A=R(θ)R(−ϕ)DR(ϕ)
其中R(θ)、R(ϕ)是旋转矩阵,D是对角矩阵:
D=(λ100λ2)
其中,λ1,λ2可被认为是两个方向的缩放比例值。
所以,A可以看作是这样一个变换过程:先旋转ϕ个角度,然后在x方向缩放λ1,在y方向缩放λ2,然后再反向旋转ϕ个角度,最后,再旋转θ。
投影变换
千呼万唤始出来,终于到了投影变换,或者叫做单应变换。投影变换是齐次坐标下非奇异的线性变换。然而在非齐次坐标系下却是非线性的,这说明齐次坐标的发明是很有价值的。投影变换比仿射变换多2个自由度,具有8个自由度。上面提到的仿射变换具有的“不变”性质,在投影变换中已不复存在了。尽管如此,它还是有一项不变性,那就是在原图中保持共线的3个点,变换后仍旧共线。投影变换表示如下:
x′=(AVTtv)x
其中 V=(v1,v2)T。
仿射变换和投影变换不同的关键点在于向量V,在仿射变换中它是空的。这个向量在投影变换中施加非线性的影响。在仿射中,A中的缩放因子对平面每处的影响是相同的(虽然有两个方向)。然而在投影变换中,缩放比例随着位置而变化。类似的地方在于,变换后的直线的方向取决于原直线的方向,这个性质两者都有。
将投影变换矩阵分解为以上提到的变换的链。
H=HSHAHP=(sR0Tt1)(U0T01)(IVT0v)=(AVTtv)
其中,HS是一个相似变换,HA是一个仿射变换,HP是一个投影变换,A=sRU+tVT,U是一个上三角矩阵,而且经过归一化det(U)=1。v是非零的。如果s被选为一个正数,那么这个分解是唯一的。
透视变换
到此为止,我们已经领教了2D到2D的变换。另外一个受到广泛研究的变换是透视变换,它描述了将空间3D点投影成2D点的变换。这种投影发生于这种情形:相机拍摄真实世界多幅图像,然后将结果显示在一副图像平面上。
在齐次坐标下,透视投影被表示为一个3*4的相机矩阵P,如下:
x=PX
其中x是一个图像点,被表示为齐次的3维向量。X是真实世界中的点,被表示为齐次的4维向量。
相机矩阵P有11个自由度,3*4矩阵有12个元素,最后一个元素值的缩放,不改变变换本身。这些自由度,或者叫参数,可分为两类:5个内参和6个外参。这5个相机参数经常被表示为矩阵K:
K=⎛⎝⎜αx00sαy0x0y01⎞⎠⎟
这里αx,αy代表相机的焦距长度,它是一个相对值,跟x和y方向的像素的维度有关。(x0,y0)是图像平面的主点,s是倾斜参数。
6个外参跟相机在世界坐标系下的方位有关,包含3个旋转因子(表示为3*3矩阵R),和3个平移因子(表示为一个3维向量)。因此,相机矩阵P可被表示为:
P=K[R|t]
Hartley和Zisserman指出,为了降低自由度,可对相机模型做一些假设。比如假设相机像素是方形的,因此x和y方向有相同的比例,这允许约束αx=αy=α。同样在很多情况下s为零。甚至做了上述假设,透视投影还有9个自由度,这比单应矩阵8个自由度还多一个。
在相机标定的应用中,比如使用张正友标定法标定相机,P被约束为单应矩阵,可通过求解两幅平面图像的单应变换,解算出相机的内参、外参矩阵。