Transformation 变换

阅读量:[object Object]

模型变换(Modeling)和视图变换(Viewing)

WHY

描述移动、旋转、缩放和投影操作对图像的影响

视图变换 Modeling

缩放变换 Scale

缩放矩阵 Scale Matrix

[xy]=[sx00sy][xy]

当进行均匀缩放时,sx=sy;不均匀缩放时,sxsy

缩放矩阵符号表示:SSsx,sy,其中 sx,sy 分别表示在 x 方向和 y 方向上的缩放系数。

反转矩阵 Reflection Matrix

[xy]=[1001][xy]

切变 Shear Matrix

Transformation 变换 figure 1.png

[xy]=[1a01][xy]

根据变换前后的对应函数关系确定变换矩阵。

旋转变换 Rotate

^04bbec

默认绕原点,逆时针方向进行旋转。

旋转矩阵 Rotation Matrix

Transformation 变换 figure 2.png

RRθ=[cosθsinθsinθcosθ]

平移变换 Translation

^9c5863

x=x+tx y=y+ty

平移变换无法仅使用矩阵乘积的形式进行描述,因此引入 齐次坐标,将所有的变换均可仅用矩阵乘积的形式进行描述。

平移变换的矩阵形式(齐次坐标)

[xyw]=[10tx01ty001][xy1]=[x+txy+ty1]

仿射变换 Affine Transformation

仿射变换 = 线性变换 + 平移变换

缩放、旋转均为线性变换

先线性变换,再平移变换

[xy]=[abcd][xy]+[txty]

在齐次坐标中

[xy1]=[abtxcdty001][xy1]

在表示二维仿射变换下,变换矩阵的最后一行为 (001)

齐次坐标下的变换矩阵

  • 缩放 SS(sx,sy)=[sx00 0sy0 001]
  • 旋转 RRα=[cosθsinθ0 sinθcosθ0 001]
  • 平移 TT(tx,ty)=[10tx 01ty 001]

逆变换 Inverse Transformation

变换矩阵的逆矩阵 MM1

Transformation 变换 figure 3.png

组合变换 Composing Transform

连续进行多种不同的变换。变换的顺序对变换结果有影响,即

RR45TT(1,0)TT(1,0)RR45

变换矩阵按照变换顺序从右向左相乘,例如,先旋转 45,再平移 (1,0)

TT(1,0)RR45[xy1]

一系列仿射变换:AA1,AA2,,AAn

AAn(AA2(AA1(x)))=AAnAA2AA1[xy1]

可先计算所有的变换矩阵,得到一个变换矩阵,提高效率。

复杂变换分解 Decomposing Complex Transformation

以任意点 c 为中心进行旋转,可结合平移和旋转将复杂变换转化为几种简单变换的组合。

  1. 将点 c 平移至中心
  2. 旋转
  3. 平移至原来的状态 Transformation 变换 figure 4.png
T(c)T(c)R(α)R(α)T(c)T(c)

在三维变换中,沿任意轴进行旋转可采用同样的思路。

三维变换 3D Transformation

三维空间下的齐次坐标:

(x,y,z,1)T

向量 (x,y,z,0)T

三维仿射变换可用 4×4 的矩阵进行表示

[xyz1]=[abctxdeftyghitz0001][xyz1]

#待整理笔记

反向链接

到头儿啦~

局部关系图

Homogeneous coordinates 齐次坐标坐标变换Av 二维向量坐标系变换实例(齐次坐标)Computer graphics 计算机图形学Transformation 变换

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.8