VSLAM中李群与李代数的笔记
李群与李代数
本博客用于记录我自己学习VSLAM过程中自己的笔记,如果错误和不争取的地方还请大家指出。
这篇博文主要参考高翔博士的博客:https://www.cnblogs.com/gaoxiang12/p/5577912.html
为什么用到李群和李代数
我们在学习VSLAM中经常会碰到李群和李代数,包括对于旋转矩阵以及变换矩阵一般都将其映射到李群或者李代数上进行优化求解。原因在于旋转矩阵本身是带有约束的,作为优化变量时就引入了额外的约束,这样就使得优化变得更加困难。下面会进行具体讲解。
李群与李代数的关系
每一个李群都对应一个李代数,而且对于三维旋转而言,李群到李代数的之间是一种指数映射的关系(即罗德里格斯公式),而李代数到李群之间是一个对数映射关系,同样对于由变换矩阵组成的特殊欧氏群,也有对应的李代数。
上面对应的左侧表示为旋转矩阵,右侧对应的李代数,括号里面的表示李代数中的向量。他是一个三维向量,在加入^这个符号后,表示从向量到对应的矩阵的转换,也就是对应的李代数中的元素(即向量),转化为对应的㡯之后,表示一个3*3的矩阵,李代数中的向量运算可以表示为对应的转换后的矩阵之间的运算,然后再进行矩阵到向量的反向变换。所以李代数与李群之间的变换就是一个指数对数关系,对李代数进行指数映射即可获得对应的李群,对李群进行对数映射即可获得对应的李代数。
对应的旋转矩阵或者说变换矩阵就是我们在VSLAM中求取的两帧图片之间的变换关系,然后将其映射到对应的李代数空间之后,就可以去掉旋转矩阵本身是一个正交矩阵的约束条件,更好的进行优化求解问题。对应的变换矩阵的李群与李代数关系也是如此。当我们整理清楚李群和李代数的用处以及之间的关系之后,这就只是我们的一个工具了,我们明白使用方法就好啦~