位姿估计(一):三维空间中旋转的表示形式

三维空间中旋转的表示形式主要包括以下四种:

  • 旋转矩阵 (Rotation Matrix)
  • 旋转向量 (Rotation Vector)
  • 欧拉角 (Euler angle)
  • 四元数 (Quaternion)
表示类型 特点
Euler xyz每个轴分别是多少度 (pitch, yaw, roll)
RMat 旋转矩阵: 用于3D点的矩阵运算
Rvec 旋转向量: 旋转作为自变量进行优化求解
四元数 用于游戏场景: 比如动画两个关键帧之间的插值

一、旋转矩阵

  • 旋转矩阵是一个行列式为1的正交矩阵;反之,行列式为1的正交矩阵也是一个旋转矩阵。
  • 行列式为1的正交矩阵(正交矩阵:矩阵的逆等于转置 R_inv = R^T from world to camera --> from camera to world)

二、旋转向量

  • 旋转矩阵不够紧凑,且旋转矩阵自带约束不利于优化求解
  • 任何旋转可以用一个旋转轴 n 和一个旋转角 θ 来刻画:对应的旋转向量为θn
  • 由旋转向量到旋转矩阵的过程由罗德里格斯 (Rodrigues's Formula) 来实现

三、欧拉角

  • Pitch, Yaw, Roll分别对应xyz轴的旋转角度(for human reading)
  • 欧拉角转为旋转矩阵(Euler2RMat

四、四元数

TODO

参考资料

SO(n)是特殊正交群 $$ SO(n) = \{R\in\mathbb{R}^{n×n} | RR^T=I,det(R)=1\} $$ SO(n)是特殊正交群 (Special Orthogonal Group) 的意思,表示该集合由n维空间的旋转矩阵组成。特别地,SO(3)表示三维空间的旋转了。
posted @ 2022-11-09 07:55  达可奈特  阅读(224)  评论(0编辑  收藏  举报