基础变换矩阵(缩放,旋转,位移)

1. Why Transformation?

Modeling:

  • 描述摄像机的运动(最重要的是位置的移动);
    在这里插入图片描述
    在这里插入图片描述
  • 一个高难度运动动作(比如机器人的一个旋转动作)是由一种或多种变换组合而成
    Viewing :3D到2D的投影变换
    在这里插入图片描述

2. 2D上的变换(通过矩阵进行变换)

2.1 缩放(scaling)

缩放变换是一种沿着坐标轴变换的一种变换方式。
缩放矩阵定义:其中sx表示横坐标x缩放的比例; sy表示纵坐标y缩放的比例
在这里插入图片描述
简单示例如下:
在这里插入图片描述

2.2 剪切(shearing)

shear变换直观理解就是把当前2维图像的一边进行固定,然后向某个方向拉伸,相较于缩放,剪切会改变原先图像的具体样貌
切变矩阵如下:(左边是"拉伸"x轴,右边"拉伸"y轴)
在这里插入图片描述

以拉伸x轴为例,即水平方向的切变
在这里插入图片描述

2.3 旋转

在平面内的旋转,规定:
(1) 默认旋转时是绕着原点进行旋转
(2) 默认旋转时是按着逆时针旋转

对于旋转,其实图像上每个点经过的变化是相同的,所以在推导时,我们可以选用图像的几个特殊顶点来进行推导,有助于快速理解。
旋转矩阵定义:
在这里插入图片描述
如下图:
在这里插入图片描述

2.4 翻转

  • 水平翻转:图像沿着y轴对称
  • 垂直翻转:图像沿着x轴对称

以水平翻转为例:
在这里插入图片描述

以上所有转换都是线性转换,即变换后的图像中的坐标是变换前图像坐标的一种线性组合。写成矩阵后,系数所组成的矩阵便是变换矩阵。
在这里插入图片描述

3. 平移变换(仿射变换)

平移变换是一类特殊的变换。它不属于线性变换,不能再通过一个 变换矩阵 来实现变换。
在这里插入图片描述
在这里插入图片描述

4. 齐次坐标

为什么要引入齐次坐标?
由上面可知,平移变换与其他变换的形式不同,那为了统一所有变换形式,引入齐次坐标概念
在这里插入图片描述

定义

齐次坐标就是将一个原本是n维的向量用一个n+1维向量来表示。
在这里插入图片描述
注意其中一个点和一个向量定义的区别:最后一个维度添加的数不同。
那如何选择的1或0?
在这里插入图片描述

我们用三维的向量来表示我们的2维图像变换的操作:
对于平移(仿射)变换:
在这里插入图片描述
对于其他变换:
其中,tx,ty 都为0.
在这里插入图片描述
在这里插入图片描述

5.复合变换

把仿射变换和线性变换用齐次坐标统一之后,很多复杂的变换,我们就可以拆分成很多步简单的变换来一步一步实现。
注意:变换的顺序是非常重要的,变换的顺序决定了变换矩阵相乘的顺序,因此得到不一样的结果。
注意每次变换时变换矩阵都是添加在原矩阵的左边

在这里插入图片描述
先平移,再旋转(默认以原点为旋转中心)的结果如下:
在这里插入图片描述
先旋转,再平移的结果如下:
在这里插入图片描述

以给定点为旋转中心?

默认情况下旋转变换都是以原点为中心,那以一个给定点为中心该怎么做?在这里插入图片描述

6. 逆变换

上述变换的反操作
在这里插入图片描述

7. 3D空间中的变换

类比2D空间的变换
在这里插入图片描述
在这里插入图片描述

旋转

绕x,y,z轴旋转。

注意以y轴进行旋转时的操作
在这里插入图片描述

绕任意轴旋转

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值