旋转矩阵的三大功能:

功能一:用于坐标系本身的旋转(用于描述一个坐标系相对于另外一个坐标系的姿态)

假设空间中有两个坐标系A和B,和坐标系B重合的有一个单位正交坐标系I,其各个轴的指向和B相同,然后分别计算I的各个轴投影到A坐标系各个轴的分量

如图矩阵的第一列、第二列和第三列分别表示与B的X轴、B的Y轴、B的Z轴同方向的单位向量在A的三个坐标轴上的投影,即ABR表示B坐标系在A中的投影。其具有以下性质:

进而:

功能二:用于将用坐标系(B)表示的点或者向量通过左乘一个旋转矩阵ABR转化为另外一个坐标系(A)表示的的点或者向量

如图:P表示一个向量 original coordinate和new coordinate分别表示向量P在B和A上面的投影。

在这里可以把P看成一开始是在B坐标上的向量,然后B坐标能通过功能一所说的坐标变换矩阵变换为坐标A,同样B坐标上面的点或者向量也可以通过这个坐标变换矩阵转化为A坐标上面的点或者向量,这个就是旋转矩阵的第二大功能。

功能三:可用来描述一个已知坐标的向量或点在当前坐标系中旋转一定角度以后的坐标

上面三个矩阵表示分别绕X、Y、Z三个坐标轴旋转θ角的齐次变换矩阵,其能反映旋转后的坐标轴相对于旋转前的坐标轴的相对关系。

下面这道例题能加深理解:

已知P向量在A坐标系下的坐标,求P向量绕A坐标系的X轴旋转30°以后的坐标。

很多人可能不明白为什么要让P左乘旋转矩阵以后得到旋转后的坐标,下面浅述一下我的理解:

首先,根据功能二的理解,旋转矩阵能够将一个空间坐标系中的点或者向量转化到另外一个空间坐标系下的点或者向量,基于功能二联系功能三,P向量绕XA旋转30°相当于A坐标系绕X轴旋转-30°(假设得到坐标系B),那么我们这道题就不难理解了,其实就是相当于把A坐标系上面的点转化为B坐标系上面的点,向量P左乘的那个旋转矩阵其实就是由坐标系A到坐标系B的旋转矩阵。

接下来对上面的内容进行一些总结,旋转矩阵的三大功能:

  1. 用来描述一个坐标系相对于另外一个坐标系的姿态
  2. 用来求得一个向量在另外一个坐标系的表达
  3. 用来求得一个向量或点在同一个坐标系做完旋转之后的坐标
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐