![]() |
【转帖】空间变换及其应用(二)----仿射,双线性,透视
仿射(affine)
仿射变换是一个线性变换,变换后保持图形的平直性(直线还是直线),平行性(平行 线变换后还是平行)。仿射变换通过一系列原子变换实现:平移(translation),缩放(scale),翻转(flip),旋转 (rotation), 错切扭曲(sheer)。仿射实际上是在仿射空间中进行,而不是向量空间。仿射空间中的点表示为一个基准点与一个向量的和,这里 不介绍仿射空间, 见http: //courseware.ecnudec.com/zsb/zsx/Zsx08/ZSX089/ZSX08901/zsx089010.htm 对于一维的情况,有仿射变换f(x) = Ax + B 二维一般形式:v = Mw + B v,w分别为二维空间坐标,M为变换矩阵 [ a0 a1 ] [ b0 b1 ] 于是有一般形式 [x’] = [ a0x + a1y + a2 ] [y’] [ b0x + b1y + b2 ] 平移: M = [ 1 0 ] B为 [dx] [ 0 1 ] [dy] 旋转: M = [ cosθ –sinθ] [ sinθ cosθ ] 扭曲 M = [ 1 ux ] [uy 1 ] 缩放/伸缩(s1=s2时为缩放) M = [ s1 0 ] [0 s2 ] 对于图像处理,仿射变换后的坐标不一定是整数,需要进行灰度插值。 正交(orthogonal) 线性空间中两个向量的内积(几何上可以理解为点乘)为0,称为正交。例如几何上,两个互相垂直的向量为正交,可知正交向量组一定线性无关。用正交矩阵施加 的变换称为正交变换。傅立叶变换,余弦变换,Walsh-Hadamard变换均属于正交变换。详情略,请查阅酉空间变换 双线性(bilinear) 设V是域F的一个线性空间,若 f(k1a1 + k2a2, b) = k1 f(a1, b) + k2f(a2, b) 和f(a, k1b1 + k2b2) = k1f(a,b1) + k2f(a,b2) 则称f是V上的一个双线性函数。 常见的双线性函数形式:f(x,y) = a0 + a1x + a2y + a3xy 例如在图像的双线性插值中便是上述的形式。 透视(perspective) 透视变换是一种几何变换,例如在移动机器人视觉研究中,摄像头和地面有一夹角,而不是垂直投下(正投影), 就需要利用透视变换把其校正成正投影。 具有以下形式: www.dimcax.com/image/ShowFile1.gif http://www.ogdev.net/bbs/Upload/200...F52BA20B4C6.gif |
所有的时间均为北京时间。 现在的时间是 07:37 PM. |