上一篇文章讲了欧氏变换和相似变换,这篇文章接着介绍剩下的变换。包括仿射变换和射影变换。
仿射变换
前面介绍了旋转、平移、缩放几种基础的变换。仿射变换则是在它们的基础上加上了类似于四边形不稳定性那种性质,这称为剪切变换,或错切变换。
错切变换的转换矩阵为
x、y为变换拉伸的方向。
一个典型的仿射变换如图。
仿射变换的单应性矩阵为
可以看到我们用一个2X2的矩阵A来表示左上角的转换矩阵。其中
其中 R(θ),R(ϕ) 为旋转矩阵,D是一个缩放系数。它可以由SVD分解得到并给出在线代上的具体含义,在此不多赘述。 D=sI 的情况就是相似变换。
可以看到,仿射变换失去了直线间角度的不变性,但是还保留着直线间的平行关系。
自由度
自由度是指确定一个矩阵所需要的最小的矩阵中元素的个数。
可以看到欧氏变换的自由度为3,一个平移(2自由度),和一个旋转(1自由度)唯一的确定了一个欧氏变换的单应性矩阵。
同样的,相似变换自由度为4,仿射变换自由度为6。
平面的单应性矩阵是一个3X3的矩阵,考虑到kH与H代表同一个变换,平面单应性矩阵的自由度最多为8。
射影变换
射影变换即单应性矩阵自由度为8的矩阵。射影变换在仿射变换的基础上进一步失去了直线间的平行关系,只保留了点之间的共线性。即一条直线在投影之后仍然是一条直线。绘画中的透视就是射影变换的一个例子,一本书在投影之后可能是一个不规则的四边形,且理论上可以是任意形状的四边形。
一个典型的射影变换如图:
如上所述,射影变换的单应性矩阵可以写成
其中 v=(v1,v2)T .一般取 x33=1
显然,仿射变换是射影变换在 v=[0,0]T 时的一种特例,射影变换包含了前面几种变换。
事实上,射影变换是从 IP2 空间中的点到 IP2 中的点的映射的统称。
总结
以上就是对几种常见变换的一个比较简单的介绍,理解这些变换当然也可以从不同的角度,比如它们的线性性,或者从3维空间中平面投影的角度加以阐述,在此不多介绍。