大家好,欢迎来到IT知识分享网。
目录
1. 群的定义
群(Group)是一种集合加上一种运算的代数结构,以A表示集合,“·”表示运算,则群一般写作 G(A, ·)。群要求满足以下四个条件:
举个例子,旋转矩阵和乘法可以构成旋转矩阵群,因为其满足:
1). 旋转矩阵相乘后仍是旋转矩阵; 2). 矩阵乘法满足结合律; 3). 幺元为单位矩阵,也属旋转矩阵; 4). 旋转矩阵的逆也为旋转矩阵,且相乘为单位矩阵。
2. 李群
李群是指拥有(连续)光滑性质的群,比如上面提到的旋转矩阵群,因其能在空间中连续旋转,变换矩阵群也是李群(就是在旋转过程中加上平移)。
3. 李代数的引入
直观的导出
数学层面的导出
(之后的部分《视觉SLAM 十四讲》里写得已经很精炼很清楚了,这里大概重述一遍以加深印象,也方便以后的查询)
先给一个结论:李代数对应李群的正切空间,描述了李群的局部导数。
4. 李代数的定义
5. 李代数so(3)
由上面的结果可得,三维向量 ϕ \phi ϕ为李群SO(3)所对应的,定义在 ℜ 3 \Re^{3} ℜ3上的李代数,每个 ϕ \phi ϕ对应一个反对称矩阵: Φ = ϕ ( t ) ∧ R ( t ) = [ 0 − ϕ 3 ϕ 2 ϕ 3 0 − ϕ 1 − ϕ 2 ϕ 1 0 ] ∈ ℜ 3 × 3 \Phi=\phi(t)^{\land}R(t)=\begin{bmatrix}0 & -\phi_{3} & \phi_{2}\\\phi_{3}&0&-\phi_{1}\\-\phi_{2}&\phi_{1}&0\end{bmatrix}\in \Re^{3\times3} Φ=ϕ(t)∧R(t)=⎣⎡0ϕ3−ϕ2−ϕ30ϕ1ϕ2−ϕ10⎦⎤∈ℜ3×3
两个向量 ϕ 1 , ϕ 2 \phi_{1},\phi_{2} ϕ1,ϕ2的李括号为: [ ϕ 1 , ϕ 2 ] = ( Φ 1 Φ 2 − Φ 2 Φ 1 ) ∨ [\phi_{1},\phi_{2}]=(\Phi_{1}\Phi_{2}-\Phi_{2}\Phi_{1})^{\vee} [ϕ1,ϕ2]=(Φ1Φ2−Φ2Φ1)∨
它与SO(3)的关系由指数映射指定: R = e x p ( ϕ ∧ ) R=exp(\phi^{\land}) R=exp(ϕ∧)
6. 李代数se(3)
SE(3)对应的李代数se(3)与so(3)类似,但其定义在 ℜ 6 \Re^{6} ℜ6空间中,如下:
我们把每个se(3)的元素记作 ξ \xi ξ,表示一个六维向量,前三维表平移,但不同于变换矩阵的平移,记作 ρ \rho ρ,后三维表旋转,记作 ϕ \phi ϕ,其实就是上面提到的so(3)元素。se(3)表示如下(注:这里的 ∧ \land ∧不再表示反对称矩阵,而是表示六维向量向四维矩阵的转换):
ξ ∧ = [ ϕ ∧ ρ 0 T 0 ] \xi^{\land}=\begin{bmatrix}\phi^{\land}&\rho\\0^{T}&0\end{bmatrix} ξ∧=[ϕ∧0Tρ0]
(注: ∧ \land ∧和 ∨ \vee ∨这里表示“从向量到矩阵”和“从矩阵到向量”,se(3)可理解成:由平移加上一个so(3)元素构成的向量)
其李括号为: [ ξ 1 , ξ 2 ] = ( ξ 1 ∧ ξ 2 ∧ − ξ 2 ∧ ξ 1 ∧ ) ∨ [\xi_{1},\xi_{2}]=(\xi^{\land}_{1}\xi^{\land}_{2}-\xi^{\land}_{2}\xi^{\land}_{1})^{\vee} [ξ1,ξ2]=(ξ1∧ξ2∧−ξ2∧ξ1∧)∨
7. 指数与对数映射
矩阵的指数如 e x p ( ϕ ∧ ) exp(\phi^{\land}) exp(ϕ∧)在李群李代数中称为指数映射。
关于so(3)的映射
那么如何计算 e x p ( ϕ ∧ ) exp(\phi^{\land}) exp(ϕ∧)呢?首先,任何矩阵 A A A的指数都可以表示成一个泰勒展开,但只有收敛的情况下才会有结果,结果如下: e x p ( A ) = ∑ n = 0 ∞ 1 n ! A n exp(A)=\sum_{n=0}^{\infty}\frac{1}{n!}A^{n} exp(A)=n=0∑∞n!1An
即是对so(3)的元素有: e x p ( ϕ ∧ ) = ∑ n = 0 ∞ 1 n ! ( ϕ ∧ ) n exp(\phi^{\land})=\sum_{n=0}^{\infty}\frac{1}{n!}(\phi^{\land})^{n} exp(ϕ∧)=n=0∑∞n!1(ϕ∧)n
但要计算这个太复杂,因为有无穷次幂。所以一般情况下我们用下面的方法: ϕ \phi ϕ是一个三维向量,我们定义其模长和方向,分别记为 θ \theta θ和 a a a,写作 ϕ = θ a \phi=\theta a ϕ=θa,这里 a a a的模长为1.即: ∣ ∣ a ∣ ∣ = 1 ||a||=1 ∣∣a∣∣=1:
a = [ a 1 , a 2 , a 3 ] T a = [a_{1}, a_{2}, a_{3}]^{T} a=[a1,a2,a3]T a 1 2 + a 2 2 + a 3 2 = 1 a^{2}_{1}+a^{2}_{2}+a^{2}_{3}=1 a12+a22+a32=1
对于 a ∧ a^{\land} a∧有以下性质:
图里的两个式子提供了处理高阶 a ∧ a^{\land} a∧的方法,所以其指数映射可写成一个神奇的形式:(最好自己写一遍)
这个式子与罗德里格斯公式如出一辙。
关于se(3)的映射(待补充。。。)
与so(3)的过程类似,所以这里主要给结论(这个过程没具体算,之后补上。)。
se(3)的指数映射形式如下:
同样令 ϕ = θ a \phi=\theta a ϕ=θa, a a a为单位向量,则:
从结果来看, ξ \xi ξ的指数映射左上角的 R R R就是上面的SO(3),与se(3)中的旋转部分 ϕ \phi ϕ对应,而右上角的 J J J由上面图里的推导给出,即:
映射表*
本文主要参考《视觉SLAM十四讲》
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/126501.html