族谱网 头条 人物百科

变换矩阵

2020-10-16
出处:族谱网
作者:阿族小谱
浏览:738
转发:0
评论:0
应用任意线性变换都可以用矩阵表示为易于计算的一致形式,并且多个变换也可以很容易地通过矩阵的相乘连接在一起。线性变换不是唯一可以用矩阵表示的变换。R维的仿射变换与透视投影都可以用齐次坐标表示为RP维(即n+1维的真实投影空间)的线性变换。因此,在三维计算机图形学中大量使用着4x4的矩阵变换。寻找变换矩阵如果已经有一个函数型的线性变换T(x){\displaystyleT(x)},那么通过T对标准基每个向量进行简单变换,然后将结果插入矩阵的列中,这样很容易就可以确定变换矩阵A,即例如,函数T(x)=5x{\displaystyleT(x)=5x}是线性变换,通过上面的过程得到(假设n=2)在二维图形中的应用示例最为常用的几何变换都是线性变换,这包括旋转、缩放、切变、反射以及正投影。在二维空间中,线性变换可以用2×2的变换矩阵表示。旋转绕原点逆时针旋转θ度角的变换公式是x′=xcos⁡⁡-->θ...

应用

任意线性变换都可以用矩阵表示为易于计算的一致形式,并且多个变换也可以很容易地通过矩阵的相乘连接在一起。

线性变换不是唯一可以用矩阵表示的变换。R维的仿射变换与透视投影都可以用齐次坐标表示为RP维(即n+1维的真实投影空间)的线性变换。因此,在三维计算机图形学中大量使用着4x4的矩阵变换。

寻找变换矩阵

如果已经有一个函数型的线性变换T(x){\displaystyle T(x)},那么通过T对标准基每个向量进行简单变换,然后将结果插入矩阵的列中,这样很容易就可以确定变换矩阵A,即

例如,函数T(x)=5x{\displaystyle T(x)=5x}是线性变换,通过上面的过程得到(假设n = 2)

在二维图形中的应用示例

最为常用的几何变换都是线性变换,这包括旋转、缩放、切变、反射以及正投影。在二维空间中,线性变换可以用2×2的变换矩阵表示。

旋转

绕原点逆时针旋转θ度角的变换公式是x′=xcos⁡ ⁡ -->θ θ -->− − -->ysin⁡ ⁡ -->θ θ -->{\displaystyle x"=x\cos \theta -y\sin \theta }与y′=xsin⁡ ⁡ -->θ θ -->+ycos⁡ ⁡ -->θ θ -->{\displaystyle y"=x\sin \theta +y\cos \theta },用矩阵表示为:

缩放

缩放(反矩阵)公式为x′=sx⋅ ⋅ -->x{\displaystyle x"=s_{x}\cdot x}与y′=sy⋅ ⋅ -->y{\displaystyle y"=s_{y}\cdot y},用矩阵表示为:

切变

切变有两种可能的形式,平行于x轴的切变为x′=x+ky{\displaystyle x"=x+ky}与y′=y{\displaystyle y"=y},矩阵表示为:

平行于y轴的切变为x′=x{\displaystyle x"=x}与y′=y+kx{\displaystyle y"=y+kx},矩阵表示为:

反射

为了沿经过原点的直线反射向量,假设(ux, uy)为直线方向的单位向量。变换矩阵为:

不经过原点的直线的反射是仿射变换,而不是线性变换。

若一座标(x, y)沿直线 y=(tanθ θ -->)x{\displaystyle y=(tan\theta )x} 进行反射,则其影像(x", y")可用以下公式求得:

(x′y′)=(cos2θ θ -->sin2θ θ -->sin2θ θ -->− − -->cos2θ θ -->)(xy){\displaystyle {\begin{pmatrix}x"\\y"\end{pmatrix}}={\begin{pmatrix}cos2\theta &sin2\theta \\sin2\theta &-cos2\theta \end{pmatrix}}{\begin{pmatrix}x\\y\end{pmatrix}}}

正投影

为了将向量正投影到一条经过原点的直线,假设(ux, uy)是直线方向的单位向量,变换矩阵为:

同反射一样,正投影到一条不经过原点的直线的变换是仿射变换,而不是线性变换。

平行投影也是线性变换,也可以用矩阵表示。但是透视投影不是线性变换,必须用齐次坐标表示。

组合变换与逆变换

用矩阵表示线性变换的一个主要动力就是可以很容易地进行组合变换以及逆变换。

组合可以通过矩阵乘法来完成。如果A与B是两个线性变换,那么对向量x先进行A变换,然后进行B变换的过程为:

换句话说,先A后B变换的组合等同于两个矩阵乘积的变换。需要注意的是先A后B表示为BA而不是AB。

能够通过两个矩阵相乘将两个变换组合在一起这样的能力就使得可以通过逆矩阵进行变换的逆变换。A表示A的逆变换。

变换矩阵并不都是可逆的,但通常都可以进行直观的解释。在上一节中,几乎所有的变换都是可逆的。只要sx{\displaystyle s_{x}}与sy{\displaystyle s_{y}}都不为零,那么缩放变换也是可逆的。另外,正投影永远是不可逆的。

其它类型的变换

仿射变换

为了表示仿射变换,需要使用齐次坐标,即用三维向量(x, y, 1)表示二维向量,对于高维来说也是如此。按照这种方法,就可以用矩阵乘法表示变换。x′=x+tx{\displaystyle x"=x+t_{x}}; y′=y+ty{\displaystyle y"=y+t_{y}}变为

在矩阵中增加一列与一行,除右下角的元素为1外其它部分填充为0,通过这种方法,所有的线性变换都可以转换为仿射变换。例如,上面的旋转矩阵变为

通过这种方法,使用与前面一样的矩阵乘积可以将各种变换无缝地集成到一起。

当使用仿射变换时,齐次坐标向量w从来不变,这样可以把它当作为1。但是,透视投影中并不是这样。

透视投影

三维计算机图形学中另外一种重要的变换是透视投影。与平行投影沿着平行线将物体投影到图像平面上不同,透视投影按照从投影中心这一点发出的直线将物体投影到图像平面。这就意味着距离投影中心越远投影越小,距离越近投影越大。

最简单的透视投影将投影中心作为坐标原点,z = 1作为图像平面,这样投影变换为x′=x/z{\displaystyle x"=x/z}; y′=y/z{\displaystyle y"=y/z},用齐次坐标表示为:

(这个乘法的计算结果是(xc,yc,zc,wc){\displaystyle (x_{c},y_{c},z_{c},w_{c})} = (x,y,z,z){\displaystyle (x,y,z,z)}。)

在进行乘法计算之后,通常齐次元素wc并不为1,所以为了映射回真实平面需要进行齐次除法,即每个元素都除以wc:

更加复杂的透视投影可以是与旋转、缩放、平移、切变等组合在一起对图像进行变换。

参见

三维投影


免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。

——— 没有了 ———
编辑:阿族小谱
发表评论
写好了,提交
{{item.label}}
{{commentTotal}}条评论
{{item.userName}}
发布时间:{{item.time}}
{{item.content}}
回复
举报
点击加载更多
打赏作者
“感谢您的打赏,我会更努力的创作”
— 请选择您要打赏的金额 —
{{item.label}}
{{item.label}}
打赏成功!
“感谢您的打赏,我会更努力的创作”
返回

更多文章

更多精彩文章
打赏
私信

推荐阅读

· 离散傅里叶变换矩阵
定义N点的离散傅里叶变换可以用一个n××-->m{\displaystylen\timesm}的矩阵乘法来表示,即X=Wx{\displaystyleX=Wx},其中x{\displaystylex}是原始的输入信号,X{\displaystyleX}是经过离散傅里叶变换得到的输出信号。一个n××-->n{\displaystylen\timesn}的变换矩阵W{\displaystyleW}可以定义成W=(ωω-->ij)i,j=0,……-->,N−−-->1/N{\displaystyleW=(\omega^{ij})_{i,j=0,\ldots,N-1}/{\sqrt{N}}},或等效如下:其中ωω-->{\displaystyle\omega}是1{\displaystyle1}的n{\displa...
· Z变换
历史现在所知的Z变换的基本思想,拉普拉斯就已了解,而1947年W.Hurewicz(英语:WitoldHurewicz)用作求解常系数差分方程的一种容易处理的方式。后来由1952年哥伦比亚大学的采样控制组的雷加基尼和查德称其为“Z变换”。E.I.Jury后来发展并推广了改进或高级Z变换(英语:AdvancedZ-transform)。Z变换中包含的思想在数学里称作母函数方法,该方法可以追溯到1730年的时候,棣莫弗与概率论结合将其引入。从数学的角度,当把数字序列视为解析函数的(洛朗)展开时,Z变换也可以看成是洛朗级数。定义像很多积分变换一样,Z变换可以有单边和双边定义。双边Z变换双边Z变换把离散时域信号x[n]转为形式幂级数X(Z)。当中n{\displaystylen}是整数,z{\displaystylez}是复数变量,其表示方式为其中A为z的模,j为虚数单位,而ɸ为幅角(也叫相位角)...
· Mellin变换
参考文献Galambos,Janos;Simonelli,Italo.Productsofrandomvariables:applicationstoproblemsofphysicsandtoarithmeticalfunctions.MarcelDekker,Inc.2004.ISBN0-8247-5402-6.
· 正则变换
定义点变换(pointtransformation)将广义坐标q=(q1,q2,……-->,qN){\displaystyle\mathbf{q}=(q_{1},\q_{2},\\dots,\q_{N})}变换成广义坐标Q=(Q1,Q2,……-->,QN){\displaystyle\mathbf{Q}=(Q_{1},\Q_{2},\\dots,\Q_{N})},点变换方程的形式为其中,t{\displaystylet}是时间。在哈密顿力学里,由于广义坐标与广义动量p=(p1,p2,……-->,pN){\displaystyle\mathbf{p}=(p_{1},\p_{2},\\dots,\p_{N})}同样地都是自变量(independentvariable),点变换的定义可以加以延伸,使变换方程成为其中,P=(P1,P2,……-->,PN){\displays...
· 仿射变换
数学定义一个在两个仿射空间之间的仿射变换,是在向量上呈现线性之坐标点的变换(即为空间中点与点之间的向量)。以符号表示的话,f{\displaystylef}"使得φφ-->{\displaystyle\varphi},决定任一对点的线性变换:P,Q∈∈-->A{\displaystyleP,Q\in{\mathcal{A}}}:或者f(Q)−−-->f(P)=φφ-->(Q−−-->P){\displaystylef(Q)-f(P)=\varphi(Q-P)}.其他定义.我们可以将此定义继续延伸:假设选定一原点,O∈∈-->A{\displaystyleO\in{\mathcal{A}}}且B{\displaystyleB}表示其图像f(O)∈∈-->B{\displaystylef(O)\in{\mathcal{B}}},如此即代表对任...

关于我们

关注族谱网 微信公众号,每日及时查看相关推荐,订阅互动等。

APP下载

下载族谱APP 微信公众号,每日及时查看
扫一扫添加客服微信