三、视觉SLAM所需基本知识——李群与李代数

  既然旋转已经能用旋转矩阵、旋转向量、欧拉角和四元数等一系列方式表达,那么为什么还需要引入李群与李代数呢?或者说上述的表达方式还有什么不足之处么?

  首先看看SLAM需要解决什么样的问题,SLAM需要完成定位和建图,而所谓的定位就是需要知道机器人所在的位置和姿态也就是变换矩阵 T T T,假设拿一个相机在空间中移动,当在 T T T的位置有一个点 p p p的观测结果为 z z z时,由于存在噪声,观测的结果可以表示为: z = T p + n z=Tp+n z=Tp+n,则误差可以表示为 e = T p − z e=Tp-z e=Tpz,我们所需要做的就是根据观测求解 T T T,由于需要求解最优的 T T T使得 e e e最小,就需要对 T T T进行求导,由于 T T T作为矩阵,其对加法不满足封闭性,也就是变换矩阵加上变换矩阵的结果不为变换矩阵,所以无法对变换矩阵进行求导。

  对于上述问题有什么解决解决办法么?我们知道向量是满足可加性的,如果能将变换矩阵映射成为向量,那么我们能对向量进行求导从而间接完成对变换矩阵的求导。

  那么我们接下来的任务就是将变换矩阵或者旋转矩阵映射到向量空间中。在这里首先介绍一下群的概念,群是指一个集合再加上一种代数运算的结构,它们需要满足一些性质,简便来记的话是“凤姐咬你”,实际上是“封闭性”、“结合性”、“幺元性”、“逆元素”,可以证明旋转矩阵和变换矩阵都是群(其中旋转矩阵为特殊正交群,变化矩阵为特殊欧式群),李群是指一种特殊的群,其具有连续的性质,旋转矩阵和变换矩阵式李群吗?是的,因为一个物体可以在空间中连续的旋转,其也可以在空间中连续的平移加旋转。

  李代数和李群都姓李,它们之间有什么关系吗?通过数学可证明对旋转矩阵的微分可以写为一个反对称矩阵乘以旋转矩阵本身(反对称矩阵用数学形式表达为 A T = − A A^T=-A AT=A),而反对称矩阵的自由度为3,其又可以由一个三维的向量表示,这个三维的向量也就是李代数,所以实际上李群和李代数存在一种导数关系,李代数是李群在局部的导数,处于李群的正切空间中。在单位元附近,初始情况下旋转矩阵为单位矩阵,假设李代数不变,可以解得:

image-20220904161320827

  也就是说李群和李代数之间存在着一一对应的指数映射关系,通过对李代数求指数就可以得到李群,如果 e e e指数上是标量那么很容易就能知道对应的指数,当指数部分是矩阵的时候怎么求呢?由于李代数是一个向量,那么就可以求得该向量的方向向量 a a a和长度 θ \theta θ,再通过泰勒展开,可以得到指数映射的结果如下:

image-20220904162155461

  这个公式看起来很像前面旋转矩阵和旋转向量的转换公式——罗德里格斯公式,实际上李代数的物理意义就是旋转向量。反过来,也能通过对数映射把李群空间中的元素映射为李代数空间的元素(不过实际中没必要这么算,因为我们已经通过前面三维空间中的刚体运动表达知道了如何从旋转矩阵计算旋转向量)。

  关于李群和李代数的指数和对数映射关系,我们只需要理解高博的两张表即可:

image-20220904163006192

  说到这里,我们已经讨论完了李群和李代数的意义以及映射关系,那么它们该如何使用呢?这也就回到了本章最开始的问题,如何对矩阵进行求导。这里就有一个基本的问题需要解决,那就是李代数的加法是否对应着李群的乘法,如果是标量那是显然成立的,而对于矩阵,有相关的BCH公式做理论支撑:

image-20220904180322922

  这里求导数的方式有两种,一个是导数模型,另一个是扰动模型,下面对这两个方式进行一一介绍:

(1)求导模型

  由于李群可以映射为李代数,李代数对加法封闭,所以我们可以将李群先映射为李代数,通过对李代数添加一个小量,对该小量求导,求导完之后再将李代数映射为李群。但是该方法的计算结果会有一个雅可比矩阵,较为繁琐。

(2)扰动模型

  通过对李群左乘或者右乘一个小量,相当于对李代数加减了一个小量,然后对该小量求导。这样计算出来没有雅可比,形式简洁。

总结:为了解决对矩阵求导的问题,我们引入了李群和李代数,在BCH公式满足的情况下,扰动模型的结果具有更加简洁的优势。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值