视觉slam系列2-数学基础

视觉slam系列2-数学基础

1.齐次坐标

齐次坐标最大的用途就是将坐标变换形式上的线性化,这是一个数学上的技巧

但是区分齐次和非齐次坐标的符号令我们厌烦。在不引起歧义的情况下,以后我们就直接把它写成 b = T a 的样子,默认其中是齐次坐标了

最后,为了保持符号的简洁,在不引起歧义的情况下,我们以后不区别齐次坐标与普通的坐标的符号,默认我们使用的是符合运算法则的那一种。例如,当我们写 T a 时,使用的是齐次坐标(不然没法计算)。而写 Ra 时,使用的是非齐次坐标。如果写在一个等式中,我们就假设齐次坐标到普通坐标的转换,是已经做好了的——因为齐次坐标和非齐次坐标之间的转换事实上非常容易。

2,使用四元数表示旋转

四元数本身是四个自由度的,但是在表示旋转的时候采用结合了旋转向量,有们就直接把它写成 b = T a 的样子,默认其中是齐次坐标了

最后,为了保持符号的简洁,在不引起歧义的情况下,我们以后不区别齐次坐标与普通的坐标的符号,默认我们使用的是符合运算法则的那一种。例如,当我们写 T a 时,使用的是齐次坐标(不然没法计算)。而写 Ra 时,使用的是非齐次坐标。如果写在一个等式中,我们就假设齐次坐标到普通坐标的转换,是已经做好了的——因为齐次一旋转轴为n,角度为θ,对应的旋转向量θn

故旋转四元数的形式为

这里有一个神奇的四元数可视化工具,里面有用以表示旋转的公式

3,关于相机坐标系和世界坐标系

十分困惑 ,高翔的书中给了解答,我觉得讲的非常好,我就原封不动的贴上来

实际当中,我们至少定义两个坐标系:世界坐标系和相机坐标系。在该定义下,设某个点在世界坐标系中坐标为 p w ,在相机坐标系下为 p c ,那么:

这里 T cw 表示世界坐标系到相机坐标系间的变换。或者我们可以用反过来的 T wc :

原则上,T wc 和 T cw 都可以用来表示相机的位姿,事实上它们也只差一个逆而已。实践当中使用 T cw 更加常见,而 T wc 更为直观。

如果把上面两式的 P c 取成零向量,也就是相机坐标系中的原点,那么,此时的 P w 就是相机原点在世界坐标系下的坐标:

我们发现这正是 T wc 的平移部分。因此,可以从 T wc 中直接看到相机在何处,这也是我们说 T wc 更为直观的原因。

4,李群和李代数

对于SO(3)的指数映射

φ在这里可以写成

由数学运算可以得到

 

结合罗德里格斯公式,可以认为so(3)是旋转向量组成的空间

而对于SE(3),它是4X4矩阵集,但是有6个自由度。它也有对应的李代数 se(3)

 

我们把每个 se(3) 元素记作 ξ,它是一个六维向量。前三维为平移,记作 ρ;后三维为旋转,记作 φ。注意∧,在这里将一个六维向量转换成四维矩阵,不表示反对称

其中

总之,有

 

5,李代数求导

由于李群不支持加法,所以李群的求导需要借助别的形式,这里有两种形式

  1. 用李代数表示姿态,然后对根据李代数加法来对李代数求导。

  2. 对李群左乘或右乘微小扰动,然后对该扰动求导,称为左扰动和右扰动模型。

我们一般采用左扰动模型

1,对于SO(3)上的李代数求导

 

2,对于SE(3)上的李代数求导

网速爆炸,图片上传不了,有空再上传吧