刚性变换、仿射变换、透视变换是主要的图像变换方式。今天谈一谈什么是在二维空间下面的仿射变换。
一、基本概念
仿射变换是指在向量空间中进行一次线性变换(乘以一个矩阵)和一次平移(加上一个向量),变换到另一个向量空间的过程。本质就是一次线性变换。
二、原子变换的复合
仿射变换可以通过一系列的原子变换的复合来实现,包括:平移、旋转和翻折;缩放、错切。下面,我们分别说一下这几个。其中,平移旋转翻折只改变图像的位置,不改变图像的形状和大小,而缩放和错切会改变图像的形状。(公式都用手画了,嘻嘻)
平移:自由度2
旋转:自由度1
关于旋转再说几句。有没有想过为什么是cos sin呢?顺序颠倒行不行?顺时针和逆时针啥区别?
我们让(x,y)顺时针旋转θ度到(x1,y1),那么新的x1,y1怎么表示?
简单证明了一下。
翻折:自由度2
其实就是关于y轴或者关于x轴对称
缩放:自由度2
错切:自由度2
错切是在某方向上,按照一定的比例对图形的每个点到某条平行于该方向的直线的有向距离做放缩得到的平面图形。
为什么这样写?
三、数学表达
上面已经看出来原子的矩阵是什么了。而仿射变换就是这些矩阵的相乘。
这些矩阵的相乘就是一个这样的。
自由度6
我们不妨把上面的都乘一下看看
图片由右到左分别是,平移,旋转,翻转,缩放,错切。
横的矩阵是受到旋转,翻转,缩放,错切的影响。
竖的矩阵是收到平移翻转的影响。
好了,已经非常清楚了。
四、性质
在仿射变换下,平行线依旧保持平行。简单证明一下