目录

  • 1、李群和李代数
    • 李群
  • 2、李代数的引出
  • 3、为什么要用李代数
  • 4、李群与李代数间的指数映射
  • 5、李代数求导(扰动模型)
    • 扰动模型(左扰动为例)
  • 6、下节预告
  • 7、==非常感谢您的阅读!==

1、李群和李代数

三维旋转矩阵构成了特殊正交群SO(3),变换矩阵构成了特殊欧式群SE(3),表示如下:

但是什么是呢?
群(Group)是一种集合加上一种运算的代数结构。
我们把集合记作A,运算记作 ·,那么群可以记作G = (A, ·)。群要求这个运算满足以下几个条件:

简单验证可知旋转矩阵和变换矩阵都是群。

李群

李群是指具有连续(光滑)性质的群。SO(n) 和 SE(n),它们在实数空间上是连续的。我们能够直观地想象一个刚体能够连续地在空间中运动,所以它们都是李群。由于 SO(3) 和 SE(3) 对于相机姿态估计尤其重要,所以主要讨论这两个李群。
先从较简单的 SO(3) 开始讨论,将发现每个李群都有对应的李代数。

2、李代数的引出

考虑任意旋转矩阵 R,满足:RRT = I.
R是某个相机的旋转,它会随时间连续地变化,即为时间的函数:R(t)。

在其两边对时间求导,可得:


进一步整理,得到:

仔细观察上式,发现满足A = -AT的形式,即:

记得上一节引入一个^符号,可以将一个向量转换为一个反对称矩阵。同理,对于任意反对称矩阵,我们也能找到一个与之对应的向量。所以有:


在等式两边右乘R(t),由于R是正交阵,所以可以得到:
我们设 t0=0 时的旋转矩阵 R(0)=I。按照导数定义,对R(t)在 0 附近进行一阶泰勒展开:

可以看到ϕ反映了 R 的导数性质,故称它在 SO(3) 原点附近的正切空间 (Tangent Space) 上。同时在 t0 附近,设 ϕ 保持为常数 ϕ(t0) = ϕ0
这是一个关于 R 的微分方程,而且初始值 R(0) = I,解之,得:

在这个式子中我们发现,在t=0附近,只要知道某时刻的R,则会存在一个向量ϕ,他们满足这个矩阵指数关系!
它描述了 R 在局部的导数关系。与 R 对应的 ϕ 有什么含义呢?ϕ 正是对应到 SO(3) 上的李代数 so(3)

注意:SO(3) 对应的李代数是定义在 R3上的三维向量,我们记作 ϕ。根据前面的推导,每个 ϕ 都可以生成一个反对称矩阵:

总结:SO(3)对应的李代数so(3)表示为:

对于 SE(3),它也有对应的李代数 se(3)。与 so(3) 相似,se(3) 位于 R6 空间中:

3、为什么要用李代数

在 SLAM 中,除了位姿的表示之外,我们还要对它们进行估计和优化。因为在 SLAM 中位姿是未知的,而我们需要解决什么样的相机位姿最符合当前观测数据这样的问题。一种典型的方式是把它构建成一个优化问题,求解最优的 R, t,使得误差最小化。旋转矩阵自身是带有约束的(正交且行列式为 1)。它们作为优化变量时,会引入额外的约束,使优化变得困难。通过李群——李代数间的转换关系,我们希望把位姿估计变成无约束的优化问题,简化求解方式。再有,优化问题是要误差函数对状态变量求导的,对于旋转矩阵的导数,由于其对加法不封闭,不好定义其导数,而李代数对加法封闭并且其用3个参数就可以表达旋转,6个量就能表达欧式变换,比旋转矩阵和变换矩阵的参数少得多。

4、李群与李代数间的指数映射

exp(ϕ^) 是如何计算的?它是一个矩阵的指数,在李群和李
代数中,称为指数映射(Exponential Map)。

任意矩阵的指数映射可以写成一个泰勒展开,但是只有在收敛的情况下才会有结果,其结果仍是一个矩阵。

同样,对 so(3) 中任意一元素 ϕ,我们也能按此方式定义它的指数映射:

由于 ϕ 是三维向量,我们可以定义它的模长和它的方
向,分别记作 θ 和 a,于是有 ϕ = θa。这里 a 是一个长度为 1 的方向向量。对于a^,有以下两条性质:



由第一条性质可得:I = aaT - aa

于是,完整推导为:
最后得到:
形式正好就是罗德里格斯公式。这表明,so(3) 实际上就是由所谓的旋转向量组成的空间,而指数映射即罗德里格斯公式。通过它们,我们把so(3) 中任意一个向量对应到了一个位于 SO(3) 中的旋转矩阵。反之,如果定义对数映射,我们也能把 SO(3) 中的元素对应到 so(3) 中:(直接用罗德里格斯公式反推)

关于SO(3)和SE(3)上的指数映射和对数映射,关系如下:

5、李代数求导(扰动模型)

使用李代数的一大动机是为了进行优化,而在优化过程中导数是非常必要的信息。在SLAM中,我们经常会构建与位姿有关的函数,然后讨论该函数关于位姿的导数,以调整当前的估计值。
使用李代数解决求导问题的思路分为两种:

  1. 用李代数表示姿态,然后对根据李代数加法来对李代数求导。
  2. 对李群左乘或右乘微小扰动,然后对该扰动求导,称为左扰动和右扰动模型。

第一种方式对应到李代数的求导模型,而第二种则对应到扰动模型。

①求导模型
按照导数的定义由:

得到:

可见,等式里包含一个形式相当复杂的雅可比矩阵,而扰动模型能完美的避免他的计算。

扰动模型(左扰动为例)

R 进行一次扰动 ∆R,设左扰动 ∆R 对应的李代数为φ。然后,对 φ 求导,即:

可见,扰动模型相比于直接对李代数求导,省去了一个雅可比 的计算。这使得扰动模型更为实用。
对于SE(3) 上的李代数求导:

6、下节预告

视觉SLAM中,我们研究的主要是观测方程,见SLAM的数学描述。也就是“机器人如何观测外部世界”,在以相机为主的视觉 SLAM 中,观测主要是指相机成像的过程。所以下一节学习经典的针孔相机模型,搞清楚一个空间点是如何投影到相机成像平面的。

7、非常感谢您的阅读!

李群和李代数以及李代数求导(扰动模型)相关推荐

  1. 视觉SLAM十四讲学习笔记-第四讲-李代数求导与扰动模型

    专栏系列文章如下: 视觉SLAM十四讲学习笔记-第一讲_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习笔记-第二讲-初识SLAM_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习 ...

  2. 视觉SLAM笔记(17) 李代数求导与扰动模型

    视觉SLAM笔记(17) 李代数求导与扰动模型 1. BCH 公式与近似形式 2. SO(3) 李代数上的求导 3. 李代数求导 4. 扰动模型 5. SE(3) 上的李代数求导 1. BCH 公式与 ...

  3. 李代数的求导及扰动模型

    1.引言 李代数的求导以及扰动模型有什么用?当然就是求导的用,但在什么情况下需要求导,在机器人领域和3d视觉领域当然是函数的变量是旋转矩阵或变换矩阵,多发生在优化问题上! 举个例子,比如说在PnP问题 ...

  4. 李代数求导与扰动模型

    我们经常构建与位姿有关的函数,然后讨论该函数关于位姿的导数,以调整当前的估计值.表示姿态的李群与表示位姿的李群上并没有定义加法,而求导数是需要加法的.因此此时如何求导就成了一个需要解决的问题,它们的李 ...

  5. SLAM总结(二)-数学基础之求导和线性方程求解

    SLAM总结(二)-数学基础之求导和线性方程求解 1.求导:高数中常见的是一个函数对一个自变量求导,属于标量对标量求导.在SLAM问题中,函数是目标函数(残差项,约束项),一般包含多个函数,用多维列向 ...

  6. 学习笔记三:MLP基本原理、矩阵求导术推反向传播、激活函数、Xavier

    文章目录 一.BP神经网络(MLP) 1.1 感知机模型及其局限性 1.2 BP神经网络基本原理 1.3 softmax多分类.求导 1.4 二分类使用softmax还是sigmoid好? 1.5 为 ...

  7. 李群与李代数2:李代数求导和李群扰动模型

    李群与李代数2:李代数求导和李群扰动模型 1. 整体误差最小化引出求导问题 2. BCH公式与近似形式 2.1 BCH公式 2.2 BCH线性近似 2.3 BCH近似的意义 3. 微分模型--李代数求 ...

  8. VSLAM学习记录-求导:李群与李代数

    旋转的求导过程 1.基础知识回顾:导数与微分 2.优化中的旋转量 2.1 背景 2.2 李群和李代数 2.2.1 李群 2.2.2 李代数与李群的关系:指数映射 2.2.3 如何求李代数 3.求导:左 ...

  9. 李群李代数:李代数求导

    雅可比 雅可比分为左乘雅可比和右乘雅可比,分别记为JlJ_lJl​和JrJ_rJr​.左乘雅可比即为李代数se(3)中的JJJ Jl=J=sin⁡θθI+(1−sin⁡θθ)aaT+1−cos⁡θθa ...

最新文章

  1. java socket 全双工客户端_java socket实现全双工通信
  2. Flink从入门到精通100篇(四)-基于 Flink 和 Drools 的实时日志处理
  3. Supporting Python 3(支持python3)——为Python 3做准备
  4. 重学java基础第八课:硬件和冯洛伊曼系统
  5. HugeTLB Pages大页内存
  6. bzoj1003[ZJOI2006]物流运输
  7. 修改保留注释_Kraken2:宏基因组快速物种注释神器
  8. HDU 3466 Proud Merchants 带有限制的01背包问题
  9. 计算机原理教程 pdf,《计算机组成原理》教程 概述.pdf
  10. 解决IE当前脚本发生错误异常
  11. 【RL从入门到放弃】【二 表格型RL】
  12. 计算机函数sumif求平均值,SUMIF在指定条件下求平均值
  13. mysql经典问题之group by和max函数
  14. 工程光学第一、二、六章学习总结
  15. 阿里云大数据认证——基于阿里云数加构建企业级数据分析平台-课堂笔记
  16. 天然场景文本检测识别技术综述
  17. 高中数学必修二平面解析几何之两直线的位置关系(归纳与整理)
  18. 广东外语外贸大学英语文学期末考试复习(解析+细节)2023
  19. 骁龙870和天玑1200哪个好 骁龙870和天玑1200对比性能差距
  20. 搭建公司wiki系统Confluence

热门文章

  1. 数字信号处理2-截止频率
  2. Ubuntu Linux虚拟机不识别U盘问题解决
  3. VMware虚拟机不能识别U盘
  4. 使用ipv6-test.com测试服务器域名是否支持IPV6
  5. nginx证书绑定及二级域名反向代理
  6. 导出pdf文件时加图片水印
  7. 有50 家人家,每家一条狗。有一天警察通知
  8. git init和git clone获取仓库 (一)
  9. PS技巧三------五彩斑斓的黑色(滤镜---镜头光晕和波浪|||||混合选项---柔光)
  10. 【计算机视觉】opencv入门学习笔记Part.1