视觉SLAM十四讲学习笔记——第四章 李群与李代数

版权声明:这些都是咸鱼Nova最后的挣扎,各位大佬转载请注明出处 https://blog.csdn.net/weixin_40883049/article/details/86829354

在这里插入图片描述

4.1 李群李代数基础

4.1.1 群

  1. 群的定义:群(Group)是一种集合加上一种运算的代数结构,把集合记作 A A ,运算记作 ·,则群记作 G = ( A , ) G = (A, ·)
  2. 群的性质:
    1. 封闭性: a 1 , a 2 A , a 1 a 2 A \forall a_1, a_2 \in A, \quad a_1 · a_2 \in A .
    2. 结合律: a 1 , a 2 , a 3 A , ( a 1 a 2 ) a 3 = a 1 ( a 2 a 3 ) \forall a_1, a_2, a_3 \in A, \quad (a_1 · a_2) · a_3 = a_1 · (a_2 · a_3) .
    3. 幺元: a 0 A , s . t . a A , a 0 a = a a 0 = a \forall a_0 \in A,\quad s.t. \quad \forall a \in A,\quad a_0 · a = a · a_0 = a .
    4. 逆: a A , a 1 A , s . t . a a 1 = a 0 \forall a \in A,\quad \exists a^{−1} \in A,\quad s.t.\quad a · a^{−1} = a_0
  3. 矩阵中常见的群:
    1.一般线性群 G L ( n ) GL(n) n × n n × n 的可逆矩阵,它们对矩阵乘法成群。
    2. 特殊正交群 S O ( n ) SO(n) 也就是所谓的旋转矩阵群,其中 S O ( 2 ) SO(2) S O ( 3 ) SO(3) 最为常见。
    3. 特殊欧氏群 S E ( n ) SE(n) 也就是前面提到的 n n 维欧氏变换,如 S E ( 2 ) SE(2) S E ( 3 ) SE(3)
  4. 李群是指具有连续(光滑)性质的群, S O ( n ) SO(n) S E ( n ) SE(n) ,它们在实数空间上是连续的,所以他们都是李群。
  5. 每个李群都有李代数

4.2.2 李代数的引出

  1. R ˙ ( t ) R ( t ) T \bm{\dot{R}}(t)\bm{R}(t)^T 是反对称矩阵。
  2. 每对旋转矩阵求一次导数,左乘一个 ϕ ( t ) ϕ(t)^{\bm\land} 矩阵
    在这里插入图片描述
  3. t = 0 t = 0 附近,有 R ( t ) = e x p ( ϕ 0 t ) \bm{R(t)} = exp (\bm{ϕ_0^\wedge} t) .

4.1.3 李代数的定义

  1. 定义:李代数由一个集合 V \mathbb{V} ,一个数域 F \mathbb{F} 和一个二元运算 [ , ] [,] 组成。如果它们满足以下几条性质,称 ( V , F , [ , ] ) (\mathbb{V}, \mathbb{F}, [,]) 为一个李代数,记作 g \bm{\mathfrak{g}}
    在这里插入图片描述
    其中二元运算被称为李括号
  2. 例子,三维向量的叉积: g = ( R 3 , R ; × ) \bm{\mathfrak{g}} = (\mathbb{R}^3, \R; ×) .

4.1.4 李代数 s o ( 3 ) \mathfrak{so}(3)

s o ( 3 ) \mathfrak{so}(3) 的内容:是一个由三维向量组成的集合,每个向量对应到一个反对称矩阵,可以表达旋转矩阵的导数
          在这里插入图片描述
其中:
      在这里插入图片描述
两个向量的李括号为:
          在这里插入图片描述

4.1.5 李代数 s e ( 3 ) \mathfrak{se}(3)

s e ( 3 ) \mathfrak{se}(3) 位于 R 6 \R^6 空间中:
在这里插入图片描述
s e ( 3 ) \mathfrak{se}(3) 中,同样使用 \bm{^\land} 符号,将一个六维向量转换成四维矩阵,但这里不再表示反对称。

其中李括号为:
                在这里插入图片描述

4.2 指数与对数映射

4.2.1 S O ( 3 ) SO(3) 上的指数映射

  1. 计算公式:
          在这里插入图片描述
    其中 ϕ = θ a \bm{ϕ} = θ\bm{a} 。这里 a \bm{a} 是一个长度为 1 的方向向量
  2. s o ( 3 ) \mathfrak{so}(3) 实际上就是由旋转向量组成的空间,指数映射即罗德里格斯公式,指数映射把 s o ( 3 ) \mathfrak{so}(3) 中任意一个向量对应到了一个位于 S O ( 3 ) SO(3) 中的旋转矩阵。
  3. 通过对数映射,把 S O ( 3 ) SO(3) 中的元素对应到 s o ( 3 ) \mathfrak{so}(3)
            在这里插入图片描述
  4. 每个 S O ( 3 ) SO(3) 中的元素,都可以找到一个 s o ( 3 ) \mathfrak{so}(3) 元素与之对应;可能存在多个 s o ( 3 ) \mathfrak{so}(3) 中的元素,对应到同一个 S O ( 3 ) SO(3) 。对于旋转角 θ θ ,由周期性知,多转 360 度和没有转是同样的情况。若规定转角度固定在 ± π ±π 之间,那么李群和李代数元素是一一对应的。

4.2.2 S E ( 3 ) SE(3) 上的指数映射

  1. s e ( 3 ) \mathfrak{se}(3) 上的指数映射形式如下:
    在这里插入图片描述
    其中, J \bm{J} 的定义如下:
            在这里插入图片描述
  2. 由变换矩阵 T \bm{T} 的表达式可知, t = J ρ \bm{t} = \bm{Jρ}

在这里插入图片描述

4.3 李代数求导与扰动模型

4.3.1 BCH 公式与近似形式

  1. 以下两式在变量为矩阵时不成立:
            在这里插入图片描述
            在这里插入图片描述
  2. BCH 展开式:
    在这里插入图片描述
    其中 [ ] [] 为李括号
  3. 考虑 S O ( 3 ) SO(3) 上的李代数 ln ( exp ( ϕ 1 ) exp ( ϕ 2 ) ) \ln {(\exp (\bm{ϕ_1^\land} ) \exp (\bm{ϕ_2^\land} ))^\lor} ,当 ϕ 1 \bm{ϕ_1} ϕ 2 \bm{ϕ_2} 为小量时,小量二次以上的项都可以被忽略掉。此时, BCH 拥有线性近似表达:
    在这里插入图片描述
    其中 J l \bm{J_l} 的定义为:
            在这里插入图片描述
    它的逆为:
            在这里插入图片描述
    右乘雅可比矩阵对自变量变号:
                        在这里插入图片描述
  4. 李群乘法与李代数加法的关系:
    1. S O ( 3 ) SO(3) 上:
      在这里插入图片描述
      在这里插入图片描述
    2. S E ( 3 ) SE(3) 上:
      在这里插入图片描述

4.3.2 S O ( 3 ) SO(3) 李代数上的求导

  1. 在实践中经常会构建与位姿有关的函数,然后讨论该函数关于位姿的导数,以调整当前的估计值。
  2. 由于 S O ( 3 ) , S E ( 3 ) SO(3), SE(3) 上并没有良好定义的加法,李代数由向量组成,具有良好的加法运算。因此,使用李代数解决求导问题。思路分为两种:
    1. 用李代数表示姿态,然后对根据李代数加法来对李代数求导——求导模型。
    2. 对李群左乘或右乘微小扰动,然后对该扰动求导,称为左扰动和右扰动模型——扰动模型。

4.3.3 李代数求导

  1. 由于 S O ( 3 ) SO(3) 没有加法,所以该导数无法按照导数的定义进行计算。设 R \bm{R} 对应的李代数为 ϕ \bm{ϕ} ,转而计算:
                   在这里插入图片描述
  2. 李代数求导公式推导:
    在这里插入图片描述

4.3.4 扰动模型

  1. 扰动模型是对 R \bm{R} 进行一次扰动 R ∆\bm{R} 。这个扰动可以乘在左边也可以乘在右边,最后结果会有一点儿微小的差异。
  2. 左扰动模型的推导:设左扰动 R ∆\bm{R} 对应的李代数为 φ φ 。然后,对 φ φ 求导,即:
          在这里插入图片描述
    推导过程:
          在这里插入图片描述
  3. 扰动模型省去了雅可比计算,扰动模型更为实用。

4.3.5 S E ( 3 ) SE(3) 上的李代数求导

  1. 假设某空间点 p \bm{p} 经过一次变换 T \bm{T} (对应李代数为 ξ \bm{ξ} ),得到 T p \bm{Tp} 。现在,给 T \bm{T} 左乘一个扰动 T = exp ( δ ξ ) ∆\bm{T} = \exp (δ\bm{ξ^\land}) ,我们设扰动项的李代数为 δ ξ = [ δ ρ , δ ϕ ] T δ\bm{ξ} = [δ\bm{ρ}, δ\bm{ϕ}]^T ,那么:
    在这里插入图片描述

4.4 实践: Sophus

sophus github链接:https://github.com/strasdat/Sophus

4.5 *相似变换群与李代数

  1. 单目相机具有尺度不确定性,在计算时要显示的把尺度因子表示出来。
  2. 对于位于空间的点 p,在相机坐标系下经过一个相似变换,而非欧氏变换:
                在这里插入图片描述
    其中 s s 为尺度因子,它同时作用在 p 的三个坐标之上,对 p 进行了一
    次缩放
  3. S O ( 3 ) S E ( 3 ) SO(3)、 SE(3) 相似,相似变换亦对矩阵乘法构成群,称为相似变换群 S i m ( 3 ) Sim(3)
                在这里插入图片描述
  4. 李代数 s i m ( 3 ) \mathfrak{sim}(3) 元素是一个七维向量 ζ \bm{ζ} 。它的前六维与 s e ( 3 ) \mathfrak{se}(3) 相同,最后多了一项 σ σ
    在这里插入图片描述
  5. 指数映射为:
                在这里插入图片描述
    其中 J s \bm{J_s} 的形式为:
        在这里插入图片描述
  6. 李代数与李群的关系为:
                在这里插入图片描述
  7. s i m ( 3 ) sim(3) 的扰动模型:
                在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_40883049/article/details/86829354