上篇复习了空间,映射和变换的概念。接下来介绍几种图像处理中常见的仿射,双线性,透视。下面仅讨论二维的情况。
仿射
(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)
透视变换是一种几何变换,例如在移动机器人视觉研究中,摄像头和地面有一夹角,而不是垂直投下
(
正投影
),
就需要利用透视变换把其校正成正投影。
具有以下形式: