结合 高翔老师的著作《视觉SLAM十四讲:从理论到实践》,加上小白的工程经验共同完成。
1.四元数的定义
旋转矩阵用九个量描述三自由度的旋转,具有冗余性:欧拉角与旋转向量是紧凑的,但是具有奇异性。事实上,我们找不到不带奇异性的三维向量描述方式。
奇异性举例解释为:
当我们想用两个坐标表示地球表面时(如经度和维度),必定存在奇异性(维度为°时经度无意义)。
我们用复数集表示复平面上的向量,而复数的乘法则能表示复平面上的旋转:例如,乘上复数 i 相当于逆时针把一个复向量旋转90度。四元数是Hamilton找到的一种扩展的复数,它既是紧凑的,也没有奇异性。如果说缺点的话,四元数不够直观,其运算稍微复杂一些。
一个四元数 q 拥有一个实部和三个虚部。如:
其中 i , j , k 为四元数的三个虚部。这三个虚部满足关系式:
有时人们也用一个标量和一个向量来表达四元数:
这里s称为四元数的实部,而 v 称为它的虚部。如果一个四元数的实部为零,称之为实四元数。反之,若让门的实部为零,称之为虚四元数。
我们能用单位四元数表示三维空间中任意一个旋转。乘以 i 对应着旋转180度,而 ,意味着绕 i 轴旋转360度后,你得到了一个相反的东西。这个东西要旋转两周才会和它原先的样子相等。
假设某个旋转是绕单位向量 进行了角度 的旋转,那么这个旋转的四元数形式为:
.
反之,我们亦可从单位是四元数中计算出对应旋转轴与夹角。
在四元数中吗,任意的旋转都可以由两个互为相反数的四元数表示。同理,取 为0,则得到一个没有旋转的四元数:
《视觉SLAM十四讲:从理论到实践》 PDF资源
下载链接:https://download.csdn.net/user/robot_starscream/uploads
此资源仅供各位研究员试读,请购买纸质书籍。