一、slam中的李群
1、群的定义
群是一种集合集合加上一种运算的代数结构。要满足:封闭性、结合律、幺元和逆。
2、旋转和群
三维空间中,描述一个物体的旋转(此处仅考虑刚体),旋转的表示有如下几种:旋转矩阵,四元数,欧拉角。其中旋转矩阵是一种特殊正交群,记为SO(3),而用旋转矩阵表示旋转有一点小瑕疵,故我们引入了欧拉角和四元数,并学习使用她们计算旋转,理解她们和群之间的联系。
旋转矩阵:
首先,我们有一个世界坐标系,该坐标系是恒定不变的,然后我们选择一个刚体,比如,一个诺基亚,我们将其抛入空中,假设其由姿态A变为姿态B(此处不考虑平移,仅考虑旋转)。那么,我们可以通过这样一种方式来描述旋转,选择一个相对于世界坐标系固定的 point a ,通过 point
注意,这里的 [e1,e2,e3] 是一个 3X3 的矩阵,且 e1 e2 e3 为正交基向量,由正交基性质易得:
在式1两边左乘 [e1T,e2T,e3T]T 则得到下式:
其中我们将矩阵 [e1T,e2T,e3T]T[e1',e2',e3'] 记为 R ,称为旋转矩阵。而这旋转矩阵正是一种群,我们称之为特殊正交群。
欧拉角:
在引入欧拉角之前,我们先来考虑一个最简单的旋转—绕某一轴的旋转,这种旋转我们可以简单的用外积来表示,即用一个向量来表示,该向量可表示为
我们不难想象,任意的一个旋转总能分解为绕一组正交基的三次旋转,特别的,当我们用三次连续的依次绕ZYX轴旋转时,得到的 θ1,θ2,θ3 分为称为偏航角yaw,俯仰角pitch和滚转角roll,注意,此处强调连续,是指每次旋转后的正交基都发生了改变,故三个角度分别以最开始的坐标轴,绕Z轴旋转后的坐标轴,和再绕Y轴旋转后的坐标轴为坐标系。(ZYX这一顺序只是我们最常用的一种欧拉角,也可能采用其他顺序)
那么如何将欧拉角与旋转矩阵或者说群联系起来呢,一个绕X,Y,Z轴的旋转,可以分别用旋转矩阵 R(θx) R(θy) R(θz) 来描述: