旋转向量
我们用旋转矩阵来描述旋转,变换矩阵来描述六自由度的三维刚体运动。然而,SO(3)的旋转矩阵用九个量描述只有三个自由度的一次旋转;变换矩阵用十六个量描述只有六个自由度的变换,使得效率不高。且旋转矩阵必须是正交矩阵,行列式为1,变换矩阵也如此,当我们要优化或者估计的时候,这些约束会使得求解变得更困难
因此我们希望能用一种更紧凑的方式描述旋转和平移。对于坐标系的旋转,任意旋转都可以用一个旋转轴和一个旋转角来刻画,于是我们使用一个向量,方向与旋转轴一致,长度等于旋转角,称为旋转向量,此时只需要一个三维向量就可以描述旋转。
对于变换矩阵,使用一个旋转向量和一个平移向量就可以表达一次变换,此时为六维。
旋转向量和旋转矩阵之间的转换
设一个旋转轴为 n ,角度为 θ 的旋转,则旋转向量为 θn ,变换过程由罗德里格斯公式表明
符号^为向量到反对称的转换符(对于外积引入的符号,记为反对称符号,把外积a×b写成了矩阵与向量的乘法,变成线性运算)
反之亦可计算从旋转矩阵到旋转向量的转换,对于θ有
则
对于旋转轴n,由于旋转轴的向量在旋转后不发生改变,则Rn=n
转轴 n 是矩阵 R 特征值 1 对应的特征向量,解方程化一,得到旋转轴