本系列文章由 youngpan1101 出品,转载请注明出处。
文章链接: http://blog.csdn.net/youngpan1101/article/details/71087470
作者:宋洋鹏(youngpan1101)
邮箱: yangpeng_song@163.com
该讲详细资料下载链接 【Baidu Yun】【Video】【Code】
若您觉得本博文对您有帮助,请支持高博的新书《视觉SLAM十四讲》,【点击购买】
若您觉得本博文对您有帮助,请支持高博的新书《视觉SLAM十四讲》,【点击购买】
若您觉得本博文对您有帮助,请支持高博的新书《视觉SLAM十四讲》,【点击购买】
李群与李代数
李群李代数基础
- 三维旋转矩阵构成
特殊正交群
SO(3)
:
SO(3)={R∈R3×3|RRT=I,det(R)=1}(4.1) - 三维变换矩阵构成
特殊欧式群
SE(3)
:
SE(3)={T=[R0Tt1]∈R4×4|R∈SO(3),t∈R3}(4.2) - 旋转矩阵、变换矩阵对加法是不封闭的,即 R1+R2∉SO(3) 。
-
SO(3)
和
SE(3)
关于乘法是封闭的
,即
R1R2∈SO(3),T1T2∈SE(3)
。
乘法对应着旋转或变换的复合(两个旋转矩阵相乘表示做了两次旋转),对于这种只有一种运算的集合,称之为 群(Group)。
——————————– 分割线<< 家有小武,如有一母 >>分割线 ——————————–
群
- 群是 一种集合加上一种运算的代数结构 。
- 记集合为
A
,运算为
⋅ ,那么当运算满足以下性质时( 封结幺逆 ,“凤姐咬你”),称 G=(A,⋅) 为群:
- 封闭性: ∀a1,a2∈A,a1⋅a2∈A .
- 结合律: ∀a1,a2,a3∈A,(a1⋅a2)⋅a3=a1⋅(a2⋅a3) .
- 幺元: ∃a0∈A,s.t.∀a∈A,a0⋅a=a⋅a0=a .
- 逆: ∀a∈A,∃a−1∈A,s.t.a⋅a−1=a0 .
- 矩阵中常见的群:
- 一般线性群 GL(n) : n×n 的可逆矩阵,它们对矩阵乘法成群。
- 特殊正交群 SO(n) : 即旋转矩阵群,其中 SO(2) 和 SO(3) 最为常见。
- 特殊欧式群
SE(n)
: 即
n
维欧氏变换,如
SE(2) 和 SE(3) 。
- 李群(Lie Group):
- 具有 连续 (光滑)性质的群。
- 既是群也是流形。
- 直观上看,一个刚体能够连续地在空间中运动,故
SO(3)
和
SE(3)
都是李群。
但是, SO(3) 和 SE(3) 只有定义良好的乘法,没有加法,所以 难以进行取极限、求导 等操作。 - SO(3) 和 SE(3) 对于 相机姿态估计 尤其重要,本讲主要讨论这两个李群。
——————————– 分割线<< 家有小武,如有一母 >>分割线 ——————————–
李代数
定义:与李群对应的一种结构,位于向量空间。
李代数的引出
任意旋转矩阵 R ,满足:
RRT=I(4.3)
R 为时间 t 的函数,有
R(t)R(t)T=I(4.4)
式 (4.4) 两侧对时间求导,得
R˙(t)R(t)T+R(t)R˙(t)T=0(4.5)
整理得
R˙(t)R(t)T=−(R˙(t)R(t)T)T(4.6)
可以看出 R˙(t)R(t)T 是一个反对称矩阵,记:
R˙(t)R(t)T=ϕ(t)∧(4.7)
等式 (4.7) 两侧右乘 R(t) ,而 R(t) 又为正交阵,有
R˙(t)=ϕ(t)∧R(t)=⎡⎣⎢0ϕ3−ϕ2−ϕ30ϕ1ϕ2−ϕ10⎤⎦⎥R(t)(4.8)
考虑简单的情况,设 t0=0 ,此时旋转矩阵 R(0)=I , 将 R(t) 在 0 附件进行一阶 泰勒展开:
R(t)≈R(t0)+R˙(t0)(t−t0)=I+ϕ(t0)∧(t)(4.9)
由式 (4.9) 可见, ϕ 反映了 R 的导数性质,故称它在 SO(3) 原点附近的正切空间(tangent space)上。
在 t0 附近,假设 ϕ 不变,有微分方程:
R˙(t)=ϕ(t0)∧R(t)=ϕ∧0R(t)(4.10)
已知初始情况: R(t0)=R(0)=I ,解之,得:(一阶向量微分方程的齐次方程 x˙(t)=Ax(t) 的解的形式为 x(t)=exp(A(t−t0))x(t0) , x(t0) 为初始状态)
R(t)=exp(ϕ∧0(t−t0))R(t0)=exp(ϕ∧0t)(4.11)
式 (4.11) 说明:对任意 t ,都可以找到一个R 和一个 ϕ 的对应关系- 该关系称为 指数映射 (Exponential Map)。
- 这里的 ϕ 称为 SO(3) 对应的李代数: so(3) 。
李代数的定义(Lie Algebra)
- 每个李群都有与之对应的李代数 。
- 李代数描述了李群单位元数的正切空间性质。
李代数由一个集合 V ,一个数域 F 和一个二元运算 [,] (李括号,反映两个元素的差异) 组成,若满足以下几条性质,称 (V,F,[,]) 为一个李代数,记作 g 。
- 封闭性: ∀X,Y∈V,[X,Y]∈V .
- 双线性:
∀X,Y,Z∈V,a,b∈F
, 有:
[aX+bY,Z]=a[X,Z]+b[Y,Z],[Z,aX+bY]=a[Z,X]+b[Z,Y] . - 自反性: ∀X∈V,[X,X]=0 .
- 雅克比等价: ∀X,Y,Z∈V,[X,[Y,Z]]+[Z,[Y,X]]+[Y,[Z,X]]=0
例子:三维空间向量 + 叉积运算 构成李代数。
- 将李代数理解成向量形式或矩阵形式都是可以的,向量形式更加自然一些。
李代数 so(3)
-
so(3)
的元素是 3 维向量或者 3 维反对称矩阵,不加区别:
so(3)={ϕ∈R3,Φ=ϕ∧∈R3×3}(4.12)
式 (4.12) 中 Φ :
Φ=ϕ∧=⎡⎣⎢0ϕ3−ϕ2−ϕ30ϕ1ϕ2−ϕ10⎤⎦⎥∈R3×3(4.13) - 李括号
[ϕ1,ϕ2]=(Φ1Φ2−Φ2Φ1)∨(4.14)
-
so(3)
的元素是 3 维向量或者 3 维反对称矩阵,不加区别:
李代数 se(3)
-
se(3)
位于
R6
空间中, 前三维为平移,记作
ρ
,后三维为旋转,记作
ϕ
:
se(3)={ξ=[ρϕ]∈R6,ρ∈R3,ϕ∈so(3),ξ∧=[ϕ∧0Tρ0]∈R4×4}(4.15) - 李括号
[ξ1,ξ2]=(ξ∧1ξ∧2−ξ∧2ξ∧1)∨(4.16) - 不同书籍对 se(3) 的平移、旋转分量的先后顺序定义不同。
-
se(3)
位于
R6
空间中, 前三维为平移,记作
ρ
,后三维为旋转,记作
ϕ
: