All posts

笔记:李群与李代数求导

(Updated: )

最近一段时间在推,会用到一些关于李代数求导的知识。参考高博《视觉slam十四讲》一书,在此总结一些常用的关于李群与李代数相关的知识点。

前言

在SLAM中位姿是未知的,而我们需要解决什么样的相机位姿最符合当前观测数据这样的问题。一种典型的方式是把它构建成一个优化问题,求解最优的,,使得误差最小化。旋转矩阵自身是带有约束的(正交且行列式为 1)。它们作为优化变量时,会引入额外的约束,使优化变得困难。通过李群——李代数间的转换关系,我们希望把位姿估计变成无约束的优化问题,简化求解方式。群(Group)是一种集合加上一种运算的代数结构,李群是指具有连续(光滑)性质的群,李群在相机姿态估计时具有重要意义,接下来主要讨论特殊正交群与特殊欧式群

特殊正交群与特殊欧式群

在李群中,我们使用矩阵来表达一个旋转和平移,这存在冗余的自由度。三维空间的旋转只有三自由度,旋转+平移有六自由度。因此,我们希望寻找一个没有冗余自由度(但是相应的存在奇异性)的表示,也就是李代数。且无论是旋转还是变换矩阵,它们都是对加法不封闭的,但是对乘法是封闭的。

李代数的引出

关于李代数理论的介绍,包含李代数/切空间/李群的介绍,非常形象。

对于任意旋转矩阵,它必定满足:

考虑它随时间发生变化,即从变为,它仍然满足如下等式:

对两侧同时对时间求导数得:

可见是一个反对称矩阵,将其记作,于是:

所以它主对角线元素必为0,而非对角线元素则只有三个自由度。我们一定可以找到一个这样的向量使得:

其中符号表示由向量转换为矩阵,反之我们也可以用符号定义由矩阵转换为向量的方式:

现在,由于:

是一个反对称矩阵,所以我们一定可以找到一个三维向量与之对应。于是我们有:

左右各右乘,由于其正交性,有:

可以看到,每对旋转矩阵求一次导数,只需左乘一个矩阵即可。由于反映了导数性质,故称它在的正切空间(tangent space)上。同时在附近,设保持为常数:

我们有:

又因为初始值,对上式进行求解可得:

上式描述在局部的导数关系。

李代数

上文提及的是一种李代数,对应的李代数是定义在上的向量,我们记作,它对应一个反对称矩阵:

由于它与反对称矩阵关系很紧密,在不引起歧义的情况下,就说元素是3维向量或者3维反对称矩阵,不加区别:

李代数

对应的李代数为定义在空间,其具体形式如下:

是一个这样的六维向量,前三维表示平移,记作;后三维表示旋转,记作(有时候这两个参数会反过来,也可以)。

指数映射

以及的指数映射分别对应于以及,它们之间的转换关系可以由下图表示:

lieGroup

李代数求导

对旋转矩阵李代数求导

进行一次扰动,假设左扰动对应的李代数为,对求导,得到:

变换矩阵李代数求导

假设空间点经过一次变换(对应的李代数为)后变为 。当给左乘一个扰动,设扰动项的李代数为,有:

上式中运算符号的含义:将一个齐次坐标的空间点变换成一个的矩阵。

补充

左扰

右扰