图形变换和齐次坐标

1、图形变换是计算机图形学基础内容之一

  • 几何变换,投影变换,视窗变换
  • 线性变换,属性不变,拓扑关系不变。
  • 作用:
    • 把用户坐标系与设备坐标系联系起来;
    • 可由简单图形生成复杂图形;
    • 可用二维图形表示三维形体;
    • 动态显示。

2、图形的几何变换

  • 几何变换:图形的几何信息经过几何变换后产生新的图形。
  • 几何变换的两种形式:
    • 图形不变,坐标系改变;
    • 图形改变,坐标系不变;

3、二维图形变换

  • (1)、平移变换
    图形变换和齐次坐标_第1张图片

    • 从点P[x,y]平移到点P’[x’,y’]
      图形变换和齐次坐标_第2张图片
    • x’ = x + m
    • y’ = y + n
      图形变换和齐次坐标_第3张图片
  • (2)、旋转变换

    • 一个点绕原点的旋转,逆时针旋转为正。
      图形变换和齐次坐标_第4张图片
  • (3)、比例变换
    X’ = X * Sx
    Y’ = Y * Sy
    图形变换和齐次坐标_第5张图片
    Sx = Sy: 均匀缩放。
    Sx = Sy > 1,放大
    Sx = Sy < 1,缩小
    Sx 不等于 Sy时,沿坐标轴方向伸展和压缩
    图形变换和齐次坐标_第6张图片

  • (4)、对称变换

    • 关于X轴的对称变换
      P(x,y) 对称点为 P’(x, -y)
    • 关于Y轴的对称变换
      P(x,y)对称点为P’(-x, y)
    • 关于坐标原点的对称变换
      P(x,y) 关于原点的对称点为P’(-x,-y)
  • (5)、错切变换

    • 沿x方向产生错切
      x’ = x + y*tag(θ)
      y’ = y
      图形变换和齐次坐标_第7张图片
    • 沿y方向产生错切
      x’ = x
      y’ = y +x * tag(θ)
      图形变换和齐次坐标_第8张图片

4、二维图形变换的矩阵表示

  • (1)、齐次坐标
    • 齐次坐标就是一个n维矢量的(n+1)维矢量表示。例如:二维坐标点P(X,Y)的齐次坐标为:(HX, HY, H)。
    • 二维坐标与齐次坐标是一对多的关系。通常都采用规格化的齐次坐标表示,即:H=1。P(X,Y)的规格化齐次坐标为 P(X,Y,1)。
    • 齐次坐标的几何意义:可理解为三维空间上的第三维为常数的一个平面上的二维向量。

5、齐次坐标的作用

  • (1)、将各种变换用阶数统一的矩阵来表示。提供了用矩阵运算来实现图形变换,或者把二维、三维甚至高维空间上的一个点从一个坐标系变换到另一个坐标系的有效方法。
  • (2)、便于表示无穷远点。例如:(XH, YH, H),令H=0。

6、齐次坐标与二维变换的矩阵表示

多个变换作用于多个目标
变换合成
变换合成的问题
引入齐次坐标
变换的表示法统一
  • (1)、恒等变换
    图形变换和齐次坐标_第9张图片
  • (2)、比例变换
    图形变换和齐次坐标_第10张图片
  • (3)、对称变换
    • 关于X轴的对称变换
      图形变换和齐次坐标_第11张图片
    • 关于Y轴的对称变换
      图形变换和齐次坐标_第12张图片
    • 关于坐标原点的对称变换
      图形变换和齐次坐标_第13张图片
  • (4)、旋转变换

图形变换和齐次坐标_第14张图片

  • 其矩阵表示为
    图形变换和齐次坐标_第15张图片
  • (5)、平移变换
    图形变换和齐次坐标_第16张图片
    图形变换和齐次坐标_第17张图片
  • (6)、绕任意一点的旋转变换

假定该任一点为P(m,n),旋转角为θ
图形变换和齐次坐标_第18张图片
变换过程如下:
图形变换和齐次坐标_第19张图片
图形变换和齐次坐标_第20张图片
T=T1 T2 T3 成为矩阵级联,也称复合变换。

7、复合变换及变换模式

  • (1)、问题:如何实现复杂变换?
变换分解
变换合成
  • (2)、关于任意参照点Pr (xr, yr)的旋转变换

图形变换和齐次坐标_第21张图片
在这里插入图片描述

  • (3)、关于任意参照点Pr (xr, yr)的缩放变换

图形变换和齐次坐标_第22张图片
在这里插入图片描述

  • (4)、变换的结果与变换的顺序有关(矩阵乘法不可交换)

图形变换和齐次坐标_第23张图片
图形变换和齐次坐标_第24张图片
图形变换和齐次坐标_第25张图片

  • (5)、变换的固定坐标系模式

    • 相对于同一个固定坐标系
    • 先调用的变换先执行,后调用的变换后执行
      图形变换和齐次坐标_第26张图片
      图形变换和齐次坐标_第27张图片
  • (6)、特别注意

    • 求变换矩阵是要明确变换模型
      • 左乘
      • 右乘
    • 采用变换矩阵左乘的图形系统一般用堆栈实现
      • 先调用的变换后执行,后调用的变换先执行

8、三维几何变换

  • (1)、三维变换矩阵

    图形变换和齐次坐标_第28张图片

  • (2)、三维基本变换

    • 轴向比例变换

      x’ = ax
      y’ = ey                [x‘ y’ z‘ 1]=[ax   ey  jz  1]
      z’ = jz
      

      矩阵表示:
      图形变换和齐次坐标_第29张图片

    • 全比例变换

      当变换矩阵取下列值时:

图形变换和齐次坐标_第30张图片

		[x   y   z   1]T = [x   y   z   s]=[x/s   y/s   z/s  1]         
		当s>1,  沿三个轴向等比例缩小
		当0
  • 对称变换

    在二维变换下,对称变换是以线和点为基准,在三维变换下,对称变换则是以面、线、点为基准的。

    • 对称于XOY平面
      图形变换和齐次坐标_第31张图片
      [x’ y’ z’ 1] = [x y -z 1]=[x y z 1]

    • 对称于YOZ平面
      图形变换和齐次坐标_第32张图片
      [x’ y’ z’ 1] = [-x y z 1]=[x y z 1]

    • 对称于XOZ平面
      图形变换和齐次坐标_第33张图片
      [x’ y’ z’ 1] = [x -y z 1]=[x y z 1]

    • 那么,分别对称与X、Y、Z轴和坐标原点的变换矩阵是什么?
  • 平移变换

    是指空间上的立体从一个位置移动到另一个位置时,其形状大小均不发生改变的变换。

    [x’ y’ z’ 1] = [ x+dx y+dy z+dz 1] =
    图形变换和齐次坐标_第34张图片

  • 旋转变换

    • 绕X轴旋转

      空间上的立体绕X轴旋转时,立体上各点的X坐标不变,只是Y、Z坐标发生相应的变化。

图形变换和齐次坐标_第35张图片

x’= x
y’= ρcos(α+θ) = y*cosθ- z*sinθ
z’= ρsin(α+θ) = y*sinθ+z*cosθ 

矩阵表示为:

图形变换和齐次坐标_第36张图片
+ 绕Y轴旋转

此时Y坐标不变,X、Z坐标相应变换。

图形变换和齐次坐标_第37张图片

x’= ρsin(α+θ) = x*cosθ + z*sinθ
y’= y
z’= ρcos(α+θ) = z*cosθ- x*sinθ

矩阵表示为:

图形变换和齐次坐标_第38张图片
+ 绕Z轴旋转

此时Z坐标不变,X、Y坐标相应变换。

图形变换和齐次坐标_第39张图片

x’= ρcos(α+θ) = x*cosθ - y*sinθ
y’= ρsin (α+θ) = x*sinθ+ y*cosθ
z’=  z

矩阵表示为:

图形变换和齐次坐标_第40张图片

  • 组合变换
    空间一点绕空间任一轴线的旋转变换。要通过将几个基本的变换组合在一起,得到该组合变换。
    假定空间任一直线的方向矢量分别为:(l,m,n)并经过原点

图形变换和齐次坐标_第41张图片

能否转换成绕X、Y或Z轴旋转的变换?
图形变换和齐次坐标_第42张图片
ON绕Z轴旋转θ2 到XOZ平面上,然后再绕Y轴旋转θ1,即可与Z轴重合。

这样,可得空间上任一点绕ON轴旋转的变换过程如下:
1)首先通过两次旋转,使ON轴与Z轴重合;
2)然后使点绕Z轴旋转θ角;
3)最后通过与1)相反的旋转,使ON轴回
到原来的位置。
假设,绕Z轴的旋转-θ2矩阵为T1
绕Y轴的旋转-θ1矩阵为T2
绕Z轴的旋转θ矩阵为T3
绕Y轴的旋转θ1矩阵为T4
绕Z轴的旋转θ2矩阵为T5

则总体变换矩阵为:
T = T1 T2 T3 T4 T5
由上推导可看出,只要能求出θ1 、θ2的值,即可通过上式获得绕ON轴的变换矩阵。
由于矢量 (0 0 1)绕Y轴旋转θ1 ,再绕Z轴旋转θ2 即可与ON轴重合。即:
图形变换和齐次坐标_第43张图片
[l m n 1] = [sinθ1 cosθ2 sinθ1sinθ2 cosθ1 1]
l = sinθ1cosθ2
m= sinθ1sinθ2
n = cosθ1
从而通过上式即可得到θ1、θ2 的值。
问题:当任一轴线的端点不在原点时,此时应如
何计算变换矩阵?

9、绕任意轴的旋转变换

  • (1)、 基本思想

    因任意轴不是坐标轴,应设法旋转该轴,使之与某一坐标轴重合,然后进行旋转θ角的变换,最后按逆过程,恢复该轴的原始位置。
    图形变换和齐次坐标_第44张图片

你可能感兴趣的:(数字图像处理)