旋转向量 欧拉角 四元数

旋转向量

表现形式

旋转向量/轴角:用一个旋转轴和一人个旋转角来刻画任意一个旋转,方向和旋转轴一致,长度等于旋转角

所以,对于变换矩阵T,可以使用一个旋转向量和一个平移变量来表示,总共6个变量

旋转向量转化为旋转矩阵

罗德里格斯公式

​ 长度为$\theta$,轴角为$n$(单位长度的向量),用向量$\theta n$表示旋转。

​ 根据 迹 的性质,对该公式两边取迹,求得转角和旋转矩阵的关系。

转轴

转轴$n$上的旋转向量在旋转后不发生改变,

所以,可以推导出$n$为旋转矩阵$R$特征值为1对应的特征向量。因此,已知旋转矩阵,即可求得旋转轴。

欧拉角

将三个轴的旋转方向作定义,更加直观的表示旋转的过程。

但是在使用欧拉角时,会出现“万向锁问题”,例如可能导致三个轴的旋转实际只表示了两次旋转等情况。

四元数

定义

运算

1)自身三个虚部满足的乘法运算关系

2)两四元数加减法

3)两四元数的乘法

4)模长 $||q||$

5)共轭 $q^*$

6)逆 $q^{-1}$

7)数乘

用四元数表示旋转

在二维平面中,旋转数可以写为 $q=cos\theta+i*sin\theta$

引申到三维旋转中,四元数向量表示为 $q\;[cos\theta, v*sin\theta]$

三维空间点的旋转

空间三维点:$p=[x,y,z]\in \mathbb{R^3}$

单位四元数:$q$ ,用于指定旋转

1)将三维空间点用虚四元数表示:

2)旋转

通过先乘q再作q逆乘法,相当与先用右手坐标系将空间点旋转二分之一的旋转角,再用左手坐标系逆向旋转二分之一旋转角,以此使得最终得到的四元数时纯虚四元数,从而直接表示三维空间坐标。(从几何意义上是将三维向量转化为四维后再回到三维)

四元数到其他旋转表示的转换

定义:(将四元数的乘法写成矩阵乘法)

即$q^+{q^{-1}}^\oplus=extend(R)$,所以

四元数转换到旋转矩阵

四元数转换到旋转向量

对两边取迹,得:

其中,关于 $v(v_1,v_2,v_3)$,$v\text{^}$是向量$v$的反对称矩阵形式

又由罗德里斯公式中:

最终得到四元数与旋转向量的转换关系

综上,四元数到旋转向量的转换公式:


参考资料:

  • 视觉SLAM十四讲:从理论到实践(第2版). 高翔.