李群李代数基础

李群李代数基础

本文档推导了表示二维空间和三维空间中转换的李群常用公式。

李群 一个拓扑群,它也是一个光滑流形,还有一些其它的良好性质。与每个李群相关的是其李代数,它是下文中我们将要讨论的一个向量空间。重要的是,一个李群和它的李代数时密切相关的,允许李群和李代数之间的映射能进行有效的计算。

本文档没有对李群进行严格的介绍,也没有讨论李群的所有数学细节。它试图提供足够的信息,表示空间变换的李群可以在机器人和计算机视觉等领域中使用。

以下是本文档涉及的李群:

描述维度矩阵表示
SO(2)二维旋转1二维旋转矩阵
SE(2)二维刚体变换3同态3维向量上的线性变换
Sim(2)二维相似变换(刚体运动+尺度)4同态3维向量上的线性变换
Aff(2)二维仿射变换6二维仿射变换群
SO(3)三维旋转3三维旋转矩阵
SE(3)三维刚体变换6同态4维向量上的线性变换
Sim(3)三维相似变换(刚体运动+尺度)7同态4维向量上的线性变换
SL(3)8单位行列(unit-determinant)式线性变换

对于每一个这样的群,本文档描述了它们的表示形式以及和李代数之间的转换关系,并推导了它们的指数映射、对数映射和伴随关系。

符号约定

∧ \wedge : a l g alg alg将向量映射为李代数表示的矩阵 ,向量中的关于旋转的分量有时在第二个有时在第一个!
∨ \vee : a l g − 1 alg^{-1} alg1将李代数表示的矩阵映射为向量
exp标量的指数映射
log标量的对数映射
Exp矩阵的指数映射,特别是将李代数表示的矩阵映射为李群表示的矩阵
Log矩阵的对数映射,特别是将李群表示的矩阵映射为李代数表示的矩阵
g \mathfrak{g} g李代数
G \mathbf{G} G李群

1. 机器人和计算机视觉中为什么使用李群?

机器人技术和计算机视觉中的许多问题都设计到三维几何中的计算(operation)和估计。没有一个连贯和鲁棒的框架来表示和处理三维变换,这些任务既繁重又巨大。变换必须被结合,求逆,微分和内插。李群及其相关的机制解决了所有这些运算(operation)并且以有原则的方式完成,因此,一旦这样的直觉得到发展,它就能很好地被遵循。

2. 一般性质

2.1 矩阵李群

李群 G G G既是一个光滑可微流形又是一个群。本文处理的李群均为实矩阵群;群元素可以表示为 R n × n \R^{n\times n} Rn×n中的矩阵。群的乘法运算和逆运算等价于矩阵的乘法运算和逆运算。由于每个群可以由非奇异 n × n n\times n n×n矩阵的一个特定子类表示,因此其自由度小于 n 2 n^2 n2

2.2 李代数

每个李群都有一个相关的李代数,它是群在单位元附近的切空间。也就是说,李代数是一个向量空间,它是沿切线方向上的群变换在恒等元处进行微分得到的。切空间在所有群元素上都有相同的结构,每个群元素的切空间之间相互同构,因此我们可以仅仅研究单位元处的切空间。而切向量从一个切空间移动到另外一个切空间时会进行坐标变换。

考虑 R n × n \R^{n\times n} Rn×n中表示的一个具有k自由度的李群 G G G。李代数 g \mathfrak{g} g是李群G在单位元附近的微分变换的空间-切空间。这个切空间是一个k维向量空间,它的基元素是 { G 1 , ⋯   , G k } : 生 成 元 \left\{G_1,\cdots,G_k\right\}:生成元 {G1,,Gk}:。李代数 g \mathfrak{g} g的元素在中表示为矩阵,但是是在加法和标量乘法下,而不是在矩阵乘法下。李代数的基本元素称为生成元,所有切向量可以表示为生成元的线性组合。

2.3 non-commutativity

2.3.1 Adjoint representation

The Adjoint representation of G on R n \mathbb{R}^n Rn is defined as the operator A d G Ad_G AdG:
A d G ( X ) a = [ X [ a ] G ∧ X − 1 ] G ∨ , X ∈ G  and  a , b ∈ R n Ad_G(X)a=[X[a]_G^{\wedge}X^{-1}]_G^{\vee}, \text{$X\in G$ and $a,b\in\mathbb{R}^n$} AdG(X)a=[X[a]GX1]G,XG and a,bRn
The Adjoint representation of G on g \mathfrak{g} g is defined as the linear operator A d G Ad_G AdG, it captures properties related to commutation:
exp ⁡ G ( [ A d G ( X ) a ] G ∧ ) X = exp ⁡ G ( X [ a ] G ∧ X − 1 ) X = X exp ⁡ G ( [ a ] G ∧ ) , X ∈ G  and  a , b ∈ R n \exp_G([Ad_G(X)a]_G^{\wedge})X=\exp_G(X[a]_G^{\wedge}X^{-1})X=X\exp_G([a]_G^{\wedge}), \text{$X\in G$ and $a,b\in\mathbb{R}^n$} expG([AdG(X)a]G)X=expG(X[a]GX1)X=XexpG([a]G),XG and a,bRn
The Adjoint representation A d G ⊂ R n × n Ad_G\subset \mathbb{R}^{n\times n} AdGRn×n of G on R n \mathbb{R}^n Rn is defined as
exp ⁡ G ( [ a ] G ∧ ) X = X exp ⁡ G ( [ A d G ( X − 1 ) a ] G ∧ ) \exp_G([a]_G^{\wedge})X=X\exp_G([Ad_G(X^{-1})a]_G^{\wedge}) expG([a]G)X=XexpG([AdG(X1)a]G)

2.3.2 adjoint representation

The adjoint representation of G on R n \mathbb{R}^n Rn is defined as the operator a d G ad_G adG:
a d G ( a ) b = [ [ a ] G ∧ [ b ] G ∧ − [ b ] G ∧ [ a ] G ∧ ] G ∨ ad_G(a)b=[[a]_G^{\wedge}[b]_G^{\wedge}-[b]_G^{\wedge}[a]_G^{\wedge}]_G^{\vee} adG(a)b=[[a]G[b]G[b]G[a]G]G

3. SO(2)

3.1 描述及表示

SO(2)是二维平面上的旋转群。它的自由度为1:旋转角度。该群是可交换群。它的逆是它的转置:
X ∈ S O ( 2 ) ⊂ R 2 × 2 X − 1 = X T \begin{aligned} X &\in SO(2)\subset \R^{2\times 2}\\ X^{-1}&=X^T \end{aligned} XX1SO(2)R2×2=XT

3.2 李代数

李代数 s o ( 2 ) \mathfrak{so}(2) so(2)由反对称元素生成,对应于可微的旋转生成元(连续旋转):
G 1 = ( 0 − 1 1 0 ) \begin{aligned} G_1=\left(\begin{array}{cc}0&-1\\1&0\end{array}\right) \end{aligned} G1=(0110)

李代数中的元素可以由生成元乘以一个标量得到:
θ ∈ R θ G 1 ∈ s o ( 2 ) \begin{aligned} \theta \in \R\\ \theta G_1\in \mathfrak{so}(2) \end{aligned} θRθG1so(2)

3.3 指数映射和对数映射

从李代数 s o ( 2 ) \mathfrak{so}(2) so(2)到李群 S O ( 2 ) SO(2) SO(2)的指数映射是一个矩阵的指数映射,其结果是一个二维平面的旋转矩阵:
E x p ( a l g ( θ ) ) = E x p ( 0 − θ θ 0 ) = I + θ ∧ + 1 2 ! θ ∧ 2 + 1 3 ! θ ∧ 3 + ⋯ = I + ( 0 − θ θ 0 ) + 1 2 ! ( − θ 2 0 0 − θ 2 ) + 1 3 ! ( 0 θ 3 − θ 3 0 ) + ⋯ = ( cos ⁡ θ − sin ⁡ θ cos ⁡ θ cos ⁡ θ ) \begin{aligned} Exp(alg(\theta))&=Exp\left(\begin{array}{cc}0&-\theta\\\theta&0\end{array}\right)\\ &=I+\theta_\wedge+\frac{1}{2!}\theta_\wedge^2+\frac{1}{3!}\theta_\wedge^3+\cdots \\ &=I+\left(\begin{array}{cc}0&-\theta\\\theta&0\end{array}\right)+ \frac{1}{2!}\left(\begin{array}{cc}-\theta^2&0\\0&-\theta^2\end{array}\right)+ \frac{1}{3!}\left(\begin{array}{cc}0&\theta^3\\-\theta^3&0\end{array}\right)+\cdots \\ &=\left(\begin{array}{cc}\cos\theta&-\sin\theta\\\cos\theta&\cos\theta\end{array}\right) \end{aligned} Exp(alg(θ))=Exp(0θθ0)=I+θ+2!1θ2+3!1θ3+=I+(0θθ0)+2!1(θ200θ2)+3!1(0θ3θ30)+=(cosθcosθsinθcosθ)
对数映射可以很简单的通过 S O ( 2 ) SO(2) SO(2)的元素通过反三角函数得到。

3.4 伴随表示

SO(2)的伴随表示是平凡的(由于平面上的旋转是可交换的,因此SO(2)的伴随表示是恒等元):
X = ( a − b b a ) ∈ S O ( 2 ) , a 2 + b 2 = 1 A d j X ( a l g ( θ ) ) = X ⋅ a l g ( θ ) ⋅ X − 1 定义2 = ( 0 − θ θ 0 ) = a l g ( θ ) ⟹ A d j X = I \begin{aligned} X=\left(\begin{array}{cc}a&-b\\ b&a\end{array}\right)&\in SO(2),a^2+b^2=1\\ Adj_X(alg(\theta))&=X\cdot alg(\theta)\cdot X^{-1}&\text{定义2}\\ &=\left(\begin{array}{cc}0&-\theta\\\theta&0\end{array}\right)\\ &=alg(\theta)\\ \Longrightarrow Adj_X&=I \end{aligned} X=(abba)AdjX(alg(θ))AdjXSO(2),a2+b2=1=Xalg(θ)X1=(0θθ0)=alg(θ)=I定义2

如果按照定义3来计算,则 a l g ( A d j X ( θ ) ) = a l g ( θ ) → A d j X = 1 alg(Adj_X(\theta))=alg(\theta)\rightarrow Adj_X=1 alg(AdjX(θ))=alg(θ)AdjX=1

因为平面中旋转变换是可交换的,因此SO(2)的伴随作用是恒等函数(identity function)。

4. SE(2)

4.1 描述及表示

SE(2)是二维平面的刚体变换群,也是半直积 S O ( 2 ) ⋉ R 2 SO(2)\ltimes\R^2 SO(2)R2。它有三个自由度:平移对应2个自由度,旋转对应1个自由度。它的子群包括 S O ( 2 ) SO(2) SO(2)
R ∈ S O ( 2 ) t ∈ R 2 X = ( R t 0 1 × 2 1 ) ∈ S E ( 2 ) ⊂ R 3 × 3 X − 1 = ( R T − R T t 0 1 × 2 1 ) \begin{aligned} R&\in SO(2)\\ t&\in \R^2\\ X=\left(\begin{array}{cc}R&t\\0_{1\times 2}&1\end{array}\right) &\in SE(2)\subset\R^{3\times 3}\\ X^{-1}&=\left(\begin{array}{cc}R^T&-R^Tt\\0_{1\times 2}&1\end{array}\right) \end{aligned} RtX=(R01×2t1)X1SO(2)R2SE(2)R3×3=(RT01×2RTt1)

4.2 李代数

李代数 s e ( 2 ) \mathfrak{se}(2) se(2)有三个生成元
G 1 = ( 0 0 1 0 0 0 0 0 0 ) , G 2 = ( 0 0 0 0 0 1 0 0 0 ) , G 3 = ( 0 − 1 0 1 0 0 0 0 0 ) \begin{aligned} G_1=\left(\begin{array}{ccc}0&0&1\\0&0&0\\0&0&0\end{array}\right), G_2=\left(\begin{array}{ccc}0&0&0\\0&0&1\\0&0&0\end{array}\right), G_3=\left(\begin{array}{ccc}0&-1&0\\1&0&0\\0&0&0\end{array}\right) \end{aligned} G1=000000100,G2=000000010,G3=010100000

李代数中的元素可以表示成生成元的线性组合:
( u 1 , u 2 , θ ) T ∈ R 3 u 1 G 1 + u 2 G 2 + θ G 3 = ( 0 − θ u 1 θ 0 u 2 0 0 0 ) ∈ s e ( 2 ) \begin{aligned} (u_1,u_2,\theta)^T\in \R^3\\ u_1G_1+u_2G_2+\theta G_3=\left(\begin{array}{ccc}0&-\theta&u_1 \\ \theta&0&u_2\\0&0&0\end{array}\right)\in \mathfrak{se}(2) \end{aligned} (u1,u2,θ)TR3u1G1+u2G2+θG3=0θ0θ00u1u20se(2)

4.3 指数映射和对数映射

从李代数 s e ( 2 ) \mathfrak{se}(2) se(2)到李群SE(2)的指数映射有一个闭合形式:
v = ( θ x y ) ∈ R 3 R = ( cos ⁡ θ − sin ⁡ θ cos ⁡ θ cos ⁡ θ ) V = ( sin ⁡ θ θ − 1 − cos ⁡ θ θ 1 − cos ⁡ θ θ sin ⁡ θ θ ) E x p ( a l g ( v ) ) = E x p ( 0 − θ x θ 0 y 0 0 0 ) = ( R V ⋅ ( x y ) 0 1 × 2 1 ) \begin{aligned} v&=\left(\begin{array}{c}\theta\\x\\y\end{array}\right) \in \R^3 \\ R&=\left(\begin{array}{cc}\cos\theta&-\sin\theta\\\cos\theta&\cos\theta\end{array}\right)\\ V&=\left(\begin{array}{cc}\frac{\sin\theta}{\theta}&-\frac{1-\cos\theta}{\theta}\\\frac{1-\cos\theta}{\theta}&\frac{\sin\theta}{\theta}\end{array}\right)\\ Exp(alg(v))=Exp\left(\begin{array}{ccc}0&-\theta&x \\ \theta&0&y\\0&0&0\end{array}\right) &=\left(\begin{array}{cc}R& V\cdot \left(\begin{array}{c}x\\y \end{array}\right) \\0_{1\times 2}&1\end{array}\right) \end{aligned} vRVExp(alg(v))=Exp0θ0θ00xy0=θxyR3=(cosθcosθsinθcosθ)=(θsinθθ1cosθθ1cosθθsinθ)=R01×2V(xy)1
V是R的左雅克比矩阵。当 θ \theta θ是小量的时候,V的每个元素可以通过泰勒级数展开求解。

4.4 伴随表示

X = ( R t 0 1 × 2 1 ) = ( R ( t 1 t 2 ) 0 1 × 2 1 ) ∈ S E ( 2 ) A d j X = ( ( t 2 − t 1 ) R 1 0 1 × 2 ) \begin{aligned} X&=\left(\begin{array}{cc}R&t\\0_{1\times 2}&1\end{array}\right)=\left(\begin{array}{cc}R&\left(\begin{array}{c}t_1\\t_2 \end{array}\right)\\0_{1\times 2}&1\end{array}\right) \in SE(2)\\ Adj_X&=\left(\begin{array}{cc}\left(\begin{array}{c}t_2\\-t_1 \end{array}\right)&R\\1&0_{1\times 2}\end{array}\right) \end{aligned} XAdjX=(R01×2t1)=R01×2(t1t2)1SE(2)=(t2t1)1R01×2

如果 v = ( x y θ ) ∈ R 3 v=\left(\begin{array}{c}x\\y\\\theta\end{array}\right) \in \R^3 v=xyθR3,则 A d j X = ( R ( t 2 − t 1 ) 0 1 × 2 1 ) Adj_X=\left(\begin{array}{cc}R&\left(\begin{array}{c}t_2\\-t_1 \end{array}\right)\\0_{1\times 2}&1\end{array}\right) AdjX=R01×2(t2t1)1

5. Sim(2)

5.1 描述及表示

Sim(2)是二维平面上保持方向相似变换的群,也是半直积 S E ( 2 ) ⋊ R ∗ SE(2)\rtimes \R^* SE(2)R。它有4个自由度:平移有2个自由度,旋转有1个自由度,尺度对应1个自由度。它的子群包括: S E ( 2 ) SE(2) SE(2) R ∗ R^* R
R ∈ S O ( 2 ) t ∈ R 2 X = ( R t 0 1 × 2 s − 1 ) ∈ S i m ( 2 ) ⊂ R 3 × 3 X − 1 = ( R T − s R T t 0 1 × 2 s ) \begin{aligned} R&\in SO(2)\\ t&\in \R^2\\ X=\left(\begin{array}{cc}R&t\\0_{1\times 2}&s^{-1}\end{array}\right) &\in Sim(2)\subset\R^{3\times 3}\\ X^{-1}&=\left(\begin{array}{cc}R^T&-sR^Tt\\0_{1\times 2}&s\end{array}\right) \end{aligned} RtX=(R01×2ts1)X1SO(2)R2Sim(2)R3×3=(RT01×2sRTts)

5.2 李代数

李代数 s i m ( 2 ) \mathfrak{sim}(2) sim(2)有4个生成元:
G 1 = ( 0 0 1 0 0 0 0 0 0 ) , G 2 = ( 0 0 0 0 0 1 0 0 0 ) , G 3 = ( 0 − 1 0 1 0 0 0 0 0 ) , G 4 = ( 0 0 0 0 0 0 0 0 − 1 ) \begin{aligned} G_1=\left(\begin{array}{ccc}0&0&1\\0&0&0\\0&0&0\end{array}\right), G_2=\left(\begin{array}{ccc}0&0&0\\0&0&1\\0&0&0\end{array}\right), G_3=\left(\begin{array}{ccc}0&-1&0\\1&0&0\\0&0&0\end{array}\right), G_4=\left(\begin{array}{ccc}0&0&0\\0&0&0\\0&0&-1\end{array}\right) \end{aligned} G1=000000100,G2=000000010,G3=010100000G4=000000001

5.3 指数映射和对数映射

从李代数 s i m ( 2 ) \mathfrak{sim}(2) sim(2)到李群 S i m ( 2 ) Sim(2) Sim(2)的指数映射得到一个闭合形式结果:
v = ( x y θ λ ) ∈ R 4 R = ( cos ⁡ θ − sin ⁡ θ cos ⁡ θ cos ⁡ θ ) A = sin ⁡ θ θ B = 1 − cos ⁡ θ θ C = θ − sin ⁡ θ θ 3 α = λ 2 λ 2 + θ 2 s = e λ X = α ( 1 − s − 1 λ ) + ( 1 − α ) ( A − λ B ) Y = α ( s − 1 − 1 + λ λ 2 ) + ( 1 − α ) ( B − λ C ) V = ( X − θ Y θ Y X ) E x p ( a l g ( v ) ) = E x p ( 0 − θ x θ 0 y 0 0 − λ ) = ( R V ⋅ ( x y ) 0 1 × 2 s − 1 ) \begin{aligned} v&=\left(\begin{array}{c}x\\y\\\theta\\\lambda\end{array}\right) \in \R^4\\ \\ R&=\left(\begin{array}{cc}\cos\theta&-\sin\theta\\\cos\theta&\cos\theta\end{array}\right)\\ A&=\frac{\sin\theta}{\theta}\\ B&=\frac{1-\cos\theta}{\theta}\\ C&=\frac{\theta-\sin\theta}{\theta^3}\\ \alpha&=\frac{\lambda^2}{\lambda^2+\theta^2}\\ s&=e^\lambda\\ X&=\alpha(\frac{1-s^{-1}}{\lambda})+(1-\alpha)(A-\lambda B)\\ Y&=\alpha(\frac{s^{-1}-1+\lambda}{\lambda^2})+(1-\alpha)(B-\lambda C)\\ V&=\left(\begin{array}{cc}X &-\theta Y\\\theta Y&X\end{array}\right)\\ Exp(alg(v))=Exp\left(\begin{array}{ccc}0&-\theta&x \\ \theta&0&y\\0&0&-\lambda\end{array}\right) &=\left(\begin{array}{cc}R& V\cdot \left(\begin{array}{c}x\\y \end{array}\right) \\0_{1\times 2}&s^{-1}\end{array}\right) \end{aligned} vRABCαsXYVExp(alg(v))=Exp0θ0θ00xyλ=xyθλR4=(cosθcosθsinθcosθ)=θsinθ=θ1cosθ=θ3θsinθ=λ2+θ2λ2=eλ=α(λ1s1)+(1α)(AλB)=α(λ2s11+λ)+(1α)(BλC)=(XθYθYX)=R01×2V(xy)s1
θ \theta θ λ \lambda λ比较小的时候,V中的元素可以通过泰勒级数展开计算。

5.4 伴随表示

X = ( R t 0 1 × 2 s − 1 ) = ( R ( t 1 t 2 ) 0 1 × 2 s − 1 ) ∈ S i m ( 2 ) A d j X = ( s R s ( t 2 − t 1 − t 1 − t 2 ) 0 2 × 2 I 2 × 2 ) \begin{aligned} X&=\left(\begin{array}{cc}R&t\\0_{1\times 2}&s^{-1}\end{array}\right)=\left(\begin{array}{cc}R&\left(\begin{array}{c}t_1\\t_2 \end{array}\right)\\0_{1\times 2}&s^{-1}\end{array}\right) \in Sim(2)\\ Adj_X&=\left(\begin{array}{cc}sR&s\left(\begin{array}{cc}t_2&-t_1\\-t_1&-t_2 \end{array}\right)\\0_{2\times2}&I_{2\times2}\end{array}\right) \end{aligned} XAdjX=(R01×2ts1)=R01×2(t1t2)s1Sim(2)=sR02×2s(t2t1t1t2)I2×2

6. A f f ( 2 ) Aff(2) Aff(2)

6.1 描述及表示、

A f f ( 2 ) Aff(2) Aff(2)是二维平面上的一个仿射变换群。它有6个自由度:平移对应2个自由度,旋转对应1个自由度,缩放(尺度,scale)对应1个自由度,拉伸(stretch)对应1个自由度,剪切(shear)对应1个自由度。它的子群包括 S i m ( 2 ) Sim(2) Sim(2)
X = ( A t 0 1 × 2 1 ) ∈ A f f ( 2 ) ⊂ R 3 × 3 X − 1 = ( A T − A T t 0 1 × 2 1 ) \begin{aligned} X=\left(\begin{array}{cc}A&t\\0_{1\times 2}&1\end{array}\right) &\in Aff(2)\subset\R^{3\times 3}\\ X^{-1}&=\left(\begin{array}{cc}A^T&-A^Tt\\0_{1\times 2}&1\end{array}\right) \end{aligned} X=(A01×2t1)X1Aff(2)R3×3=(AT01×2ATt1)

6.2 李代数

李代数 a f f ( 2 ) \mathfrak{aff}(2) aff(2)有6个生成元:
G 1 = ( 0 0 1 0 0 0 0 0 0 ) , G 2 = ( 0 0 0 0 0 1 0 0 0 ) , G 3 = ( 0 − 1 0 1 0 0 0 0 0 ) , G 4 = ( 1 0 0 0 1 0 0 0 0 ) , G 5 = ( 1 0 0 0 − 1 0 0 0 0 ) , G 6 = ( 0 1 0 1 0 0 0 0 0 ) \begin{aligned} G_1=\left(\begin{array}{ccc}0&0&1\\0&0&0\\0&0&0\end{array}\right), G_2=\left(\begin{array}{ccc}0&0&0\\0&0&1\\0&0&0\end{array}\right), G_3=\left(\begin{array}{ccc}0&-1&0\\1&0&0\\0&0&0\end{array}\right),\\ G_4=\left(\begin{array}{ccc}1&0&0\\0&1&0\\0&0&0\end{array}\right), G_5=\left(\begin{array}{ccc}1&0&0\\0&-1&0\\0&0&0\end{array}\right), G_6=\left(\begin{array}{ccc}0&1&0\\1&0&0\\0&0&0\end{array}\right) \end{aligned} G1=000000100,G2=000000010,G3=010100000G4=100010000,G5=100010000,G6=010100000

6.3 指数映射和对数映射

从李代数 a f f ( 2 ) \mathfrak{aff}(2) aff(2)到李群 A f f ( 2 ) Aff(2) Aff(2)的指数映射没有闭合形式。它可以用任何一般的矩阵指数例程计算。对数映射也是一样的。

6.4 伴随表示


X = ( A t 0 1 × 2 1 ) = ( a b x c d y 0 0 1 ) ∈ A f f ( 2 ) ⊂ R 3 × 3 E = ( A t 0 1 × 2 1 ) \begin{aligned} X=\left(\begin{array}{cc}A&t\\0_{1\times 2}&1\end{array}\right)=\left(\begin{array}{ccc}a&b&x\\c&d&y\\0&0&1\end{array}\right) &\in Aff(2)\subset\R^{3\times 3}\\ E&=\left(\begin{array}{cc}A&t\\0_{1\times 2}&1\end{array}\right) \end{aligned} X=(A01×2t1)=ac0bd0xy1EAff(2)R3×3=(A01×2t1)

A d j X = E T ( A − T ⋅ C 0 2 × 4 C ) E \begin{aligned} Adj_X&=E^T\left(\begin{array}{cc}A&-T\cdot C\\0_{2\times4}&C\end{array}\right)E \end{aligned} AdjX=ET(A02×4TCC)E
明确写出乘积就是:
A d j X = ( a b f y ( a 2 + b 2 ) − f x ( a c + b d ) − x f y ( 2 a b ) − f x ( a d + b c ) f x ( a c − b d ) − f y ( a 2 − b 2 ) c d f y ( a c + b d ) − f x ( c 2 + d 2 ) − y f y ( a d + b c ) − f x ( 2 c d ) f x ( c 2 − d 2 ) − f y ( a c − b d ) 0 0 f 2 ( s 2 + b 2 + c 2 + d 2 ) 0 f ( a b + c d ) f 2 ( − a 2 + b 2 − c 2 + d 2 ) 0 0 0 1 0 0 0 0 f ( a c + b d ) 0 f ( a d + b c ) f ( b d − a c ) 0 0 f 2 ( − a 2 − b 2 + c 2 + d 2 ) 0 f ( c d − a b ) f 2 ( a 2 − b 2 − c 2 + d 2 ) ) \begin{aligned} Adj_X&=\left(\begin{array}{cccccc}a&b& fy(a^2+b^2)-fx(ac+bd)&-x&fy(2ab)-fx(ad+bc)&fx(ac-bd)-fy(a^2-b^2)\\ c&d&fy(ac+bd)-fx(c^2+d^2)&-y&fy(ad+bc)-fx(2cd)&fx(c^2-d^2)-fy(ac-bd)\\ 0&0&\frac{f}{2}(s^2+b^2+c^2+d^2)&0&f(ab+cd)&\frac{f}{2}(-a^2+b^2-c^2+d^2)\\ 0&0&0&1&0&0\\ 0&0&f(ac+bd)&0&f(ad+bc)&f(bd-ac)\\ 0&0&\frac{f}{2}(-a^2-b^2+c^2+d^2)&0&f(cd-ab)&\frac{f}{2}(a^2-b^2-c^2+d^2) \end{array}\right) \end{aligned} AdjX=ac0000bd0000fy(a2+b2)fx(ac+bd)fy(ac+bd)fx(c2+d2)2f(s2+b2+c2+d2)0f(ac+bd)2f(a2b2+c2+d2)xy0100fy(2ab)fx(ad+bc)fy(ad+bc)fx(2cd)f(ab+cd)0f(ad+bc)f(cdab)fx(acbd)fy(a2b2)fx(c2d2)fy(acbd)2f(a2+b2c2+d2)0f(bdac)2f(a2b2c2+d2)

7. SO(3)

7.1 描述及表示

三维旋转群的每个元素 S O ( 3 ) SO(3) SO(3)可以由行列式等于1的三维旋转矩阵表示。它的自由度为3:每个旋转轴对应1个自由度。群元素的组合和逆对应于矩阵的乘法和逆运算。因为旋转矩阵是正交的,所以它的逆等于它的转置。
R ∈ S O ( 3 ) ⊂ R 3 × 3 R − 1 = R T invSO3 det ⁡ ( R ) = 1 \begin{aligned} R &\in SO(3)\subset \R^{3\times 3}\\ R^{-1}&=R^T&\text{invSO3}\\ \det (R)&=1 \end{aligned} RR1det(R)SO(3)R3×3=RT=1invSO3

7.2 李代数

李代数 s o ( 3 ) \mathfrak{so}(3) so(3)是所有 3 × 3 3\times3 3×3反对称矩阵的集合,它由各轴的微分旋转产生:
G 1 = ( 0 0 0 0 0 − 1 0 1 0 ) , G 2 = ( 0 0 1 0 0 0 − 1 0 0 ) , G 3 = ( 0 − 1 0 1 0 0 0 0 0 ) \begin{aligned} G_1=\left(\begin{array}{ccc}0&0&0\\0&0&-1\\0&1&0\end{array}\right), G_2=\left(\begin{array}{ccc}0&0&1\\0&0&0\\-1&0&0\end{array}\right), G_3=\left(\begin{array}{ccc}0&-1&0\\1&0&0\\0&0&0\end{array}\right) \end{aligned} G1=000001010,G2=001000100,G3=010100000
李代数 s o ( 3 ) \mathfrak{so}(3) so(3)的所有元素可以写成生成元的线性组合:
w ∈ R 3 w 1 G 1 + w 2 G 2 + w 3 G 3 ∈ s o ( 3 ) \begin{aligned} w&\in \R^3\\ w_1G_1+w_2G_2+w_3G_3&\in \mathfrak{so}(3) \end{aligned} ww1G1+w2G2+w3G3R3so(3)
映射 a l g : R 3 → s o ( 3 ) alg:\R^3\rightarrow \mathfrak{so}(3) alg:R3so(3)将三维向量映射为反对称矩阵:
w = ( a b c ) a l g ( w ) = w ∧ HatSO3 = ( 0 − c b b 0 − a − b a 0 ) \begin{aligned} w&=\left(\begin{array}{c}a\\b\\c\end{array}\right)\\ alg(w)&=w_\wedge&\text{HatSO3}\\ &=\left(\begin{array}{ccc}0&-c&b\\b&0&-a\\-b&a&0\end{array}\right) \end{aligned} walg(w)=abc=w=0bbc0aba0HatSO3

dualHatSO3: w_hat * x = x_dual_hat * w x_dual_hat= − H a t S O 3 ( x ) -HatSO3(x) HatSO3(x)

李代数到向量的映射VecSO3为: w = ( w ∧ ( 3 , 2 ) ; w ∧ ( 1 , 3 ) ; w ∧ ( 2 , 1 ) ) w=(w_{\wedge}(3,2);w_{\wedge}(1,3);w_{\wedge}(2,1)) w=(w(3,2);w(1,3);w(2,1))

normalizeSO3: [ u , s , v ] = s v d ( R ) ; R n o r m = v ∗ v ’ [u,s,v]=svd(R); Rnorm=v*v’ [u,s,v]=svd(R);Rnorm=vv

PhiSO3:
P h i w = I 3 × 3 + 1 2 ∣ ∣ w ∣ ∣ 2 ( 4 − ∣ ∣ w ∣ ∣ sin ⁡ ( ∣ ∣ w ∣ ∣ ) − 4 cos ⁡ ( ∣ ∣ w ∣ ∣ ) ) ∗ a d S O 3 ( w ) + 1 2 ∣ ∣ w ∣ ∣ 3 ( 4 ∣ ∣ w ∣ ∣ − 5 sin ⁡ ( ∣ ∣ w ∣ ∣ ) + ∣ ∣ w ∣ ∣ cos ⁡ ( ∣ ∣ w ∣ ∣ ) ) ∗ a d S O 3 ( w ) 2 + 1 2 ∣ ∣ w ∣ ∣ 4 ( 2 − ∣ ∣ w ∣ ∣ sin ⁡ ( ∣ ∣ w ∣ ∣ ) − 2 cos ⁡ ( ∣ ∣ w ∣ ∣ ) ) ∗ a d S O 3 ( w ) 3 + 1 2 ∣ ∣ w ∣ ∣ 5 ( 2 ∣ ∣ w ∣ ∣ − 3 sin ⁡ ( ∣ ∣ w ∣ ∣ ) + ∣ ∣ w ∣ ∣ cos ⁡ ( ∣ ∣ w ∣ ∣ ) ) ∗ a d S O 3 ( w ) 4 Phiw=I_{3\times 3}+\frac{1}{2||w||^2}(4-||w||\sin(||w||)-4\cos(||w||))*ad_{SO3}(w)\\ +\frac{1}{2||w||^3}(4||w||-5\sin(||w||)+||w||\cos(||w||))*ad_{SO3}(w)^2\\ +\frac{1}{2||w||^4}(2-||w||\sin(||w||)-2\cos(||w||))*ad_{SO3}(w)^3\\ +\frac{1}{2||w||^5}(2||w||-3\sin(||w||)+||w||\cos(||w||))*ad_{SO3}(w)^4\\ Phiw=I3×3+2w21(4wsin(w)4cos(w))adSO3(w)+2w31(4w5sin(w)+wcos(w))adSO3(w)2+2w41(2wsin(w)2cos(w))adSO3(w)3+2w51(2w3sin(w)+wcos(w))adSO3(w)4

7.3 指数映射和对数映射

从李代数到李群的指数映射有闭合形式,该闭合形式也称为罗德里格斯公式。切向量w可以解释为旋转的轴角表示:它的指数是围绕轴 w ∣ ∣ w ∣ ∣ \frac{w}{||w||} ww旋转 ∣ ∣ w ∣ ∣ ||w|| w弧度:
w ∈ R 3 θ = w T w = ∣ ∣ w ∣ ∣ w ∧ 3 = − θ 2 w ∧ E x p ( a l g ( w ) ) = E x p ( w ∧ ) = I + w ∧ + 1 2 ! w ∧ 2 + 1 3 ! w ∧ 3 + ⋯ = I + ( sin ⁡ θ θ ) w ∧ + ( 1 − cos ⁡ θ θ 2 ) w ∧ 2 \begin{aligned} w&\in\R^3\\ \theta&=\sqrt{w^Tw}=||w||\\ w_\wedge^3&=-\theta^2w_\wedge\\ Exp(alg(w))&=Exp(w_\wedge)\\ &=I+w_\wedge+\frac{1}{2!}w_\wedge^2+\frac{1}{3!}w_\wedge^3+\cdots\\ &=I+(\frac{\sin \theta}{\theta})w_\wedge+(\frac{1-\cos\theta}{\theta^2})w_\wedge^2 \end{aligned} wθw3Exp(alg(w))R3=wTw =w=θ2w=Exp(w)=I+w+2!1w2+3!1w3+=I+(θsinθ)w+(θ21cosθ)w2
θ \theta θ较小时,R的系数可以由泰勒级数计算。

从李群SO(3)到李代数 s o ( 3 ) \mathfrak{so}(3) so(3)的对数映射可以计算如下:给定一个旋转矩阵 R ∈ S O ( 3 ) R\in SO(3) RSO(3),对数映射可以先确定 cos ⁡ θ = 1 2 ( t r ( R ) − 1 ) \cos\theta=\frac{1}{2}(tr(R)-1) cosθ=21(tr(R)1),然后计算 w w w,w可以从 L o g ( R ) Log(R) Log(R)中的非对角线元素中取下来合成该向量。
R ∈ S O ( 3 ) θ = arccos ⁡ ( t r ( R ) − 1 2 ) L o g ( R ) = θ 2 sin ⁡ θ ⋅ ( R − R T ) \begin{aligned} R&\in SO(3)\\ \theta &=\arccos (\frac{tr(R)-1}{2})\\ Log(R)&=\frac{\theta}{2\sin\theta}\cdot(R-R^T) \end{aligned} RθLog(R)SO(3)=arccos(2tr(R)1)=2sinθθ(RRT)
θ \theta θ较小时, θ 2 sin ⁡ θ \frac{\theta}{2\sin\theta} 2sinθθ的系数可以由泰勒级数展开计算。

7.4 伴随表示

对于三维空间中的旋转群 S O ( 3 ) SO(3) SO(3)以及李代数 w ∧ w_\wedge w,考虑伴随表示的计算公式
R ∈ S O ( 3 ) a l g ( w ) ∈ s o ( 3 ) E x p [ a l g ( A d j R ⋅ w ) ] = R ⋅ E x p [ a l g ( w ) ] ⋅ R − 1 a l g ( A d j R ⋅ w ) = R ⋅ a l g ( w ) ⋅ R − 1 \begin{aligned} R&\in SO(3)\\ alg(w) &\in \mathfrak{so}(3)\\ Exp[alg(Adj_R \cdot w)]&=R\cdot Exp[alg(w)]\cdot R^{-1}\\ alg(Adj_R \cdot w)&=R\cdot alg(w)\cdot R^{-1} \end{aligned} Ralg(w)Exp[alg(AdjRw)]alg(AdjRw)SO(3)so(3)=RExp[alg(w)]R1=Ralg(w)R1
由于叉积的性质,SO(3)的伴随表示实际上与旋转矩阵表示相同:
R ∈ S O ( 3 ) a , b , c ∈ R 3 a = b × c ⟺ ( R a ) = ( R b ) × ( R c ) ⟺ a = R − 1 ( R b ) × ( R c ) ⟺ R − 1 ( R b ) × R = b × ⟹ R b ∧ R T = ( R b ) ∧ a l g ( b ) ∈ s o ( 3 ) E x p [ a l g ( A d j R ( b ) ) ] = R ⋅ E x p [ a l g ( b ) ] ⋅ R − 1 定义3 a l g ( A d j R ( b ) ) = R ⋅ a l g ( b ) ⋅ R − 1 = R ⋅ ( ∑ i = 1 3 b i G i ) ⋅ R − 1 = a l g ( R b ) A d j R ( b ) = R b A d j R = R \begin{aligned} R&\in SO(3)\\ a,b,c &\in \R^3\\ a=b\times c&\Longleftrightarrow (Ra)=(Rb)\times (Rc)\\ &\Longleftrightarrow a=R^{-1}(Rb)\times (Rc)\\ &\Longleftrightarrow R^{-1}(Rb)\times R=b\times\\ &\Longrightarrow R b_\wedge R^T=(R b)_\wedge \\ alg(b)&\in \mathfrak{so}(3)\\ Exp[alg(Adj_R(b))]&=R \cdot Exp[alg(b)]\cdot R^{-1}&\text{定义3}\\ alg(Adj_R(b))&=R \cdot alg(b)\cdot R^{-1}=R \cdot (\sum_{i=1}^3b_iG_i)\cdot R^{-1}=alg(Rb)\\ Adj_R(b)&=Rb\\ Adj_R&=R \end{aligned} Ra,b,ca=b×calg(b)Exp[alg(AdjR(b))]alg(AdjR(b))AdjR(b)AdjRSO(3)R3(Ra)=(Rb)×(Rc)a=R1(Rb)×(Rc)R1(Rb)×R=b×RbRT=(Rb)so(3)=RExp[alg(b)]R1=Ralg(b)R1=R(i=13biGi)R1=alg(Rb)=Rb=R定义3

ad表示: a d = a d S 0 ( 3 ) ( w ) = H a t S O 3 ( w ) ad=ad_{S0(3)}(w)=HatSO3(w) ad=adS0(3)(w)=HatSO3(w)

Ad表示: A d = A d S O ( 3 ) ( R ) = R Ad=Ad_{SO(3)}(R)=R Ad=AdSO(3)(R)=R

7.5 雅克比

7.5.1 李群 S O ( 3 ) SO(3) SO(3)作用于空间 R 3 \R^3 R3的微分

考虑李群中的一个元素 R ∈ S O ( 3 ) R\in SO(3) RSO(3),同时 x ∈ R 3 x\in \R^3 xR3。通过旋转矩阵R来旋转向量x,结果为向量左乘旋转矩阵:
y = f ( R , x ) = R x y=f(R,x)=Rx y=f(R,x)=Rx
对向量的微分很简单,因为f在x中是线性的:
∂ y ∂ x = R \frac{\partial y}{\partial x}=R xy=R
对旋转参数的微分是通过隐式左乘旋转切向量的指数并在零附近扰动表达式进行微分实现的。这等价于生成元左边乘以y得到的:
∂ y ∂ R = ∂ ∂ w ∣ w = 0 ( e x p ( w ) ⋅ R ) ⋅ x = ∂ ∂ w ∣ w = 0 e x p ( w ) ⋅ ( R ⋅ x ) = ∂ ∂ w ∣ w = 0 e x p ( w ) ⋅ y = ( G 1 y ∣ G 2 y ∣ G 3 y ) = − y ∧ \begin{aligned} \frac{\partial y}{\partial R}&=\frac{\partial }{\partial w}|_{w=0}(exp(w)\cdot R)\cdot x\\ &=\frac{\partial }{\partial w}|_{w=0}exp(w)\cdot (R\cdot x)\\ &=\frac{\partial }{\partial w}|_{w=0}exp(w)\cdot y\\ &=(G_1 y|G_2 y|G_3 y)\\ &=-y_\wedge \end{aligned} Ry=ww=0(exp(w)R)x=ww=0exp(w)(Rx)=ww=0exp(w)y=(G1yG2yG3y)=y

7.5.2 通过群中的一个参数对群-值函数微分

考虑一个群G和群上的一个映射 f : G → G f:G\rightarrow G f:GG。由于定义域和值域都不是向量空间,通过切空间扰动在输入变量端引入参数,在结果端也可以引入参数,然后我们通过微分记号可以得到从输入扰动到输出扰动的一个映射关系:
exp ⁡ ( ϵ ) ⋅ f ( g ) = f ( exp ⁡ ( δ ) ⋅ g ) ∂ f ∂ g ≡ ∂ ϵ ∂ δ ∣ δ = 0 \begin{aligned} \exp(\epsilon)\cdot f(g)&=f(\exp(\delta)\cdot g)\\ \frac{\partial f}{\partial g}&\equiv\frac{\partial \epsilon}{\partial \delta}|_{\delta=0} \end{aligned} exp(ϵ)f(g)gf=f(exp(δ)g)δϵδ=0
求解 ϵ \epsilon ϵ并且微分得到输入扰动 δ \delta δ对输出扰动 ϵ \epsilon ϵ微分的显示表达式:
ϵ = log ⁡ ( f ( exp ⁡ ( δ ) ⋅ g ) ⋅ f ( g ) − 1 ) ∂ f ∂ g ≡ ∂ log ⁡ ( f ( exp ⁡ ( δ ) ⋅ g ) ⋅ f ( g ) − 1 ) ∂ δ ∣ δ = 0 \begin{aligned} \epsilon&=\log(f(\exp(\delta)\cdot g)\cdot f(g)^{-1})\\ \frac{\partial f}{\partial g}&\equiv\frac{\partial \log(f(\exp(\delta)\cdot g)\cdot f(g)^{-1})}{\partial \delta}|_{\delta=0} \end{aligned} ϵgf=log(f(exp(δ)g)f(g)1)δlog(f(exp(δ)g)f(g)1)δ=0
上式产生了一个从参数的左切空间扰动到结果的左切空间扰动的映射。正如所料,如果将这个微分简写应用于恒等函数 f ( g ) = g f(g)=g f(g)=g,就得到了单位矩阵。

对于此过程的一个重要示例应用,考虑群 G = S O ( 3 ) G=SO(3) G=SO(3)中的元素与第二个因子 R 0 R_0 R0相乘:
R 2 = f ( R 0 ) ≡ R 1 ⋅ R 0 \begin{aligned} R_2=f(R_0)\equiv R_1\cdot R_0 \end{aligned} R2=f(R0)R1R0
首先,切空间so(3)中的输入扰动和输出扰动都是明确的:
exp ⁡ ( ϵ ) ⋅ R 2 = R 1 ⋅ exp ⁡ ( w ) ⋅ R 0 \begin{aligned} \exp(\epsilon)\cdot R_2= R_1\cdot\exp(w)\cdot R_0\end{aligned} exp(ϵ)R2=R1exp(w)R0
输入扰动w对 ϵ \epsilon ϵ的微分是在 w = 0 w=0 w=0附近进行的。伴随映射将切向量移动到表达式的左边。表达式的其余部分抵消,结果很简单。
∂ R 2 ∂ R 0 ≡ ∂ log ⁡ ( ( R 1 ⋅ exp ⁡ ( w ) ⋅ R 0 ) ⋅ ( R 1 ⋅ R 0 ) − 1 ) ∂ w ∣ w = 0 = ∂ ∂ w ∣ w = 0 log ⁡ ( exp ⁡ ( A d j R 1 ⋅ w ⋅ R 1 ⋅ R 0 ) ⋅ ( R 1 ⋅ R 0 ) − 1 ) = ∂ ∂ w ∣ w = 0 [ log ⁡ ( exp ⁡ ( A d j R 1 ⋅ w ) ) ] = ∂ ∂ w ∣ w = 0 [ A d j R 1 ⋅ w ] = A d j R 1 = R 1 \begin{aligned} \frac{\partial R_2}{\partial R_0}&\equiv\frac{\partial \log((R_1\cdot \exp(w)\cdot R_0)\cdot (R_1\cdot R_0)^{-1})}{\partial w}|_{w=0}\\ &=\frac{\partial }{\partial w}|_{w=0}\log(\exp(Adj_{R_1}\cdot w\cdot R_1\cdot R_0)\cdot (R_1\cdot R_0)^{-1})\\ &=\frac{\partial }{\partial w}|_{w=0}[\log(\exp(Adj_{R_1}\cdot w))]\\ &=\frac{\partial }{\partial w}|_{w=0}[Adj_{R_1}\cdot w]=Adj_{R_1}=R_1 \end{aligned} R0R2wlog((R1exp(w)R0)(R1R0)1)w=0=ww=0log(exp(AdjR1wR1R0)(R1R0)1)=ww=0[log(exp(AdjR1w))]=ww=0[AdjR1w]=AdjR1=R1

7.6 SO(3)上的高斯分布

7.6.1 采样

我们可以对三维旋转的高斯分布进行规定:用SO(3)中的元素表示均值,用so(3)中的一个切向量的二次形式表示协方差。更精确的说,考虑高斯分布的均值 R ∈ S O ( 3 ) R\in SO(3) RSO(3),协方差为 Σ ∈ R 3 × 3 \Sigma \in \R^{3\times 3} ΣR3×3。我们可以通过在切空间中对零均值分布采样,然后用它左乘均值,从而从分布中采样得到一个旋转S:
ϵ ∈ N ( 0 , Σ ) S = exp ⁡ ( ϵ ) ⋅ R \epsilon \in N(0,\Sigma)\\ S=\exp(\epsilon)\cdot R ϵN(0,Σ)S=exp(ϵ)R

7.6.2 不确定旋转的合成

给定了旋转上的两个高斯分布,利用伴随变换可以构造出两个不确定变换。记其中一个零均值方程对为 ( R 0 , Σ 0 ) (R_0,\Sigma_0) (R0,Σ0),另外一个记为 R 1 , Σ 1 R_1,\Sigma_1 R1,Σ1。那么先经过 R 0 R_0 R0变换,再经过 R 1 R_1 R1旋转得到的旋转的分布可以记为:
( R 1 , Σ 1 ) ∘ ( R 0 , Σ 0 ) = ( R 1 ⋅ R 0 , Σ 1 + R 1 ⋅ Σ 0 ⋅ R 1 T ) (R_1,\Sigma_1)\circ (R_0,\Sigma_0)=(R_1\cdot R_0,\Sigma_1+R_1\cdot \Sigma_0\cdot R_1^T) (R1,Σ1)(R0,Σ0)=(R1R0,Σ1+R1Σ0R1T)

7.6.3 旋转估计的贝叶斯组合

这两个高斯分布的信息矩阵 ( R c , Σ c ) (R_c,\Sigma_c) (Rc,Σc)可以通过贝叶斯方法组合得到:首先找出切空间中两个向量之间的偏差,然后对两个向量的估计通过信息矩阵进行加权。信息矩阵(也即协方差矩阵的逆)可以像往常一样计算:
Σ = ( Σ 0 − 1 + Σ 1 − 1 ) − 1 = Σ 0 − Σ 0 ( Σ 0 + Σ 1 ) − 1 Σ 0 协方差更新 v = R 1 ⊖ R 0 = L o g ( R 1 ⋅ R 0 − 1 ) 新息 R c = E x p ( Σ c ⋅ Σ 1 − 1 ⋅ v ) ⋅ R 0 均值更新 \begin{aligned} \Sigma&=(\Sigma_0^{-1}+\Sigma_1^{-1})^{-1}=\Sigma_0-\Sigma_0(\Sigma_0+\Sigma_1)^{-1}\Sigma_0&\text{协方差更新}\\ v&=R_1\ominus R_0=Log(R_1\cdot R_0^{-1})&\text{新息}\\ R_c&=Exp(\Sigma_c\cdot \Sigma_1^{-1}\cdot v)\cdot R_0&\text{均值更新} \end{aligned} ΣvRc=(Σ01+Σ11)1=Σ0Σ0(Σ0+Σ1)1Σ0=R1R0=Log(R1R01)=Exp(ΣcΣ11v)R0协方差更新新息均值更新

7.7 SO(3)上的EKF

两个不确定旋转的组合可以看作EKF的动力学更新过程,其中 ( R 0 , Σ 0 ) (R_0,\Sigma_0) (R0,Σ0)看作是状态的先验信息, ( R 1 , Σ 1 ) (R_1,\Sigma_1) (R1,Σ1)是系统的动力学模型。

旋转估计的贝叶斯组合可以看作是EKF的量测过程中的均值更新(假设量测更新雅克比矩阵是单位矩阵,量测矩阵为单位矩阵)和协方差更新。而切向量v是EKF量测更新过程中的新息。

如果量测矩阵为单位矩阵,则EKF的卡尔曼滤波增益K计算如下:
K = Σ 0 ( Σ 0 + Σ 1 ) − 1 K=\Sigma_0(\Sigma_0+\Sigma_1)^{-1} K=Σ0(Σ0+Σ1)1
所以卡尔曼更新可以写成如下标准形式:
Σ = ( I − k ) Σ 0 协方差更新 R c = R o ⊕ ( K ⋅ v ) = E x p ( K ⋅ v ) ⋅ R 0 均值更新 \begin{aligned}\Sigma&=(I-k)\Sigma_0&\text{协方差更新}\\R_c&=R_o\oplus (K\cdot v)= Exp(K\cdot v)\cdot R_0&\text{均值更新}\end{aligned} ΣRc=(Ik)Σ0=Ro(Kv)=Exp(Kv)R0协方差更新均值更新
j将上述方程记为标准EKF框架,给出的状态协方差为 Σ 0 \Sigma_0 Σ0,量测噪声为 Σ 1 \Sigma_1 Σ1

如果雅克比矩阵是一个非平凡的测量,则需要对所给的方程做一个简单的修改。

8. SE(3)

8.1 描述及表示

SE(3)是三维空间中的刚体变换群,同时也是半直积: S O ( 3 ) ⋉ R 3 SO(3)\ltimes \R^3 SO(3)R3。它有6个自由度:三维空间平移对应3个自由度,三维空间旋转对应3个自由度。它的子群包括: S E ( 2 ) SE(2) SE(2) S O ( 3 ) SO(3) SO(3)
R ∈ S O ( 3 ) t ∈ R 3 X = ( R t 0 1 × 3 1 ) ∈ S E ( 3 ) ⊂ R 4 × 4 HatSE3 X 1 , X 2 ∈ S E ( 3 ) X 1 ⋅ X 2 = ( R 1 t 1 0 1 × 3 1 ) ( R 2 t 2 0 1 × 3 1 ) = ( R 1 R 2 R 1 t 2 + t 1 0 1 × 3 1 ) X − 1 = ( R T − R T t 0 1 × 3 1 ) invSE3 \begin{aligned} R&\in SO(3)\\ t&\in \R^3\\ X=\left(\begin{array}{cc}R&t\\0_{1\times 3}&1\end{array}\right) &\in SE(3)\subset\R^{4\times 4}&\text{HatSE3}\\ X_1,X_2\in SE(3)\\ X_1\cdot X_2= \left(\begin{array}{cc}R_1&t_1\\0_{1\times 3}&1\end{array}\right) \left(\begin{array}{cc}R_2&t_2\\0_{1\times 3}&1\end{array}\right) &=\left(\begin{array}{cc}R_1R_2&R_1t_2+t_1\\0_{1\times 3}&1\end{array}\right)\\ X^{-1}&=\left(\begin{array}{cc}R^T&-R^Tt\\0_{1\times 3}&1\end{array}\right)&\text{invSE3} \end{aligned} RtX=(R01×3t1)X1,X2SE(3)X1X2=(R101×3t11)(R201×3t21)X1SO(3)R3SE(3)R4×4=(R1R201×3R1t2+t11)=(RT01×3RTt1)HatSE3invSE3

8.2 李代数

李代数 s e ( 3 ) \mathfrak{se}(3) se(3)有6个生成元:
G 1 = ( 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 ) , G 2 = ( 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 ) , G 3 = ( 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 ) , G 4 = ( 0 0 0 0 0 0 1 0 0 − 1 0 0 0 0 0 0 ) , G 5 = ( 0 0 − 1 0 0 0 0 0 1 0 0 0 0 0 0 0 ) , G 6 = ( 0 1 0 0 − 1 0 0 0 0 0 0 0 0 0 0 0 ) \begin{aligned} G_1=\left(\begin{array}{cccc}0&0&0&1\\0&0&0&0\\0&0&0&0\\0&0&0&0\end{array}\right), G_2=\left(\begin{array}{cccc}0&0&0&0\\0&0&0&1\\0&0&0&0\\0&0&0&0\end{array}\right), G_3=\left(\begin{array}{cccc}0&0&0&0\\0&0&0&0\\0&0&0&1\\0&0&0&0\end{array}\right),\\ G_4=\left(\begin{array}{cccc}0&0&0&0\\0&0&1&0\\0&-1&0&0\\0&0&0&0\end{array}\right), G_5=\left(\begin{array}{cccc}0&0&-1&0\\0&0&0&0\\1&0&0&0\\0&0&0&0\end{array}\right), G_6=\left(\begin{array}{cccc}0&1&0&0\\-1&0&0&0\\0&0&0&0\\0&0&0&0\end{array}\right) \end{aligned} G1=0000000000001000,G2=0000000000000100,G3=0000000000000010G4=0000001001000000,G5=0010000010000000,G6=0100100000000000
因此映射 a l g : R 3 → s e ( 3 ) alg:\R^3\rightarrow \mathfrak{se}(3) alg:R3se(3)
u , w ∈ R 3 u 1 G 1 + u 2 G 2 + u 3 G 3 + w 1 G 4 + w 2 G 5 + w 3 G 6 ∈ s e ( 3 ) a l g ( u w ) = ( w ∧ u 0 1 × 3 0 ) \begin{aligned} u,w&\in \R^3\\ u_1G_1+u_2G_2+u_3G_3+w_1G_4+w_2G_5+w_3G_6 &\in \mathfrak{se}(3)\\ alg\left(\begin{array}{c}u\\w\end{array}\right)&=\left(\begin{array}{cc}w_\wedge&u\\0_{1\times 3}&0\end{array}\right) \end{aligned} u,wu1G1+u2G2+u3G3+w1G4+w2G5+w3G6alg(uw)R3se(3)=(w01×3u0)

李代数映射为向量 V e c S E 3 VecSE3 VecSE3为: m ( 4 : 6 ) = m h a t ( 1 : 3 , 4 ) ; m ( 1 : 3 ) = V e c S O 3 ( m h a t ( 1 : 3 , 1 : 3 ) ) ; m(4:6) = m_{hat}(1:3,4);m(1:3) = VecSO3(m_{hat}(1:3,1:3)); m(4:6)=mhat(1:3,4);m(1:3)=VecSO3(mhat(1:3,1:3));

8.3 指数映射和对数映射

李代数 s e ( 3 ) \mathfrak{se}(3) se(3)到李群SE(3)的指数映射有一个闭合形式:
w , u ∈ R 3 θ = w T w = ∣ ∣ w ∣ ∣ w ∧ 3 = − θ 2 w ∧ E x p ( a l g ( u w ) ) = E x p ( w ∧ u 0 1 × 3 0 ) = I + ( w ∧ u 0 1 × 3 0 ) + 1 2 ! ( w ∧ 2 w ∧ u 0 1 × 3 0 ) + 1 3 ! ( w ∧ 3 w ∧ 2 u 0 1 × 3 0 ) + ⋯ = ( E x p ( w ∧ ) V ⋅ u 0 1 × 3 1 ) expSE3 V = I + 1 2 ! w ∧ + 1 3 ! w ∧ 2 + ⋯ = I + ( 1 2 ! − θ 2 4 ! + θ 4 6 ! + ⋯   ) w ∧ + ( 1 3 ! − θ 2 5 ! + θ 4 7 ! + ⋯   ) w ∧ 2 = I + ( 1 − cos ⁡ θ θ 2 ) w ∧ + ( θ − sin ⁡ θ θ 3 ) w ∧ 2 \begin{aligned} w,u&\in\R^3\\ \theta&=\sqrt{w^Tw}=||w||\\ w_\wedge^3&=-\theta^2w_\wedge\\ Exp(alg\left(\begin{array}{c}u\\w\end{array}\right))&=Exp\left(\begin{array}{cc}w_\wedge&u\\0_{1\times 3}&0\end{array}\right)\\ &=I+\left(\begin{array}{cc}w_\wedge&u\\0_{1\times 3}&0\end{array}\right)+ \frac{1}{2!}\left(\begin{array}{cc}w_\wedge^2&w_\wedge u\\0_{1\times 3}&0\end{array}\right)+ \frac{1}{3!}\left(\begin{array}{cc}w_\wedge^3&w_\wedge^2 u\\0_{1\times 3}&0\end{array}\right)+\cdots\\ &=\left(\begin{array}{cc}Exp(w_\wedge)&V\cdot u\\0_{1\times 3}&1\end{array}\right)&\text{expSE3}\\ V&=I+\frac{1}{2!}w_\wedge+\frac{1}{3!}w_\wedge^2+\cdots\\ &=I+(\frac{1}{2!}-\frac{\theta^2}{4!}+\frac{\theta^4}{6!}+\cdots)w_\wedge+(\frac{1}{3!}-\frac{\theta^2}{5!}+\frac{\theta^4}{7!}+\cdots)w_\wedge^2\\ &=I+(\frac{1-\cos\theta}{\theta^2})w_\wedge+(\frac{\theta-\sin\theta}{\theta^3})w_\wedge^2 \end{aligned} w,uθw3Exp(alg(uw))VR3=wTw =w=θ2w=Exp(w01×3u0)=I+(w01×3u0)+2!1(w201×3wu0)+3!1(w301×3w2u0)+=(Exp(w)01×3Vu1)=I+2!1w+3!1w2+=I+(2!14!θ2+6!θ4+)w+(3!15!θ2+7!θ4+)w2=I+(θ21cosθ)w+(θ3θsinθ)w2expSE3
θ \theta θ较小时,V的系数可以使用泰勒级数进行计算。

V的逆可以写成闭合形式:
V − 1 = I − 1 2 w ∧ + 1 θ 2 ( 1 − θ sin ⁡ θ 2 ( 1 − cos ⁡ θ ) ) w ∧ 2 = I − 1 2 w ∧ + ( 2 sin ⁡ θ − θ ( 1 + cos ⁡ θ ) ) 2 θ 2 sin ⁡ θ w ∧ 2 \begin{aligned} V^{-1}&=I-\frac{1}{2}w_\wedge+\frac{1}{\theta^2}(1-\frac{\theta\sin\theta}{2(1-\cos\theta)})w_\wedge^2\\ &=I-\frac{1}{2}w_\wedge+\frac{(2\sin\theta-\theta(1+\cos\theta))}{2\theta^2\sin\theta}w_\wedge^2 \end{aligned} V1=I21w+θ21(12(1cosθ)θsinθ)w2=I21w+2θ2sinθ(2sinθθ(1+cosθ))w2
从李群 X = ( R t 0 1 × 3 1 ) ∈ S E ( 3 ) X=\left(\begin{array}{cc}R&t\\0_{1\times 3}&1\end{array}\right) \in SE(3) X=(R01×3t1)SE(3)到李代数的对数映射 l o g S E 3 logSE3 logSE3可以首先计算 w = a l g − 1 ( L o g ( R ) ) w=alg^{-1}(Log(R)) w=alg1(Log(R)),然后计算 u = V − 1 ⋅ t u=V^{-1}\cdot t u=V1t

8.4 伴随表示

X = ( R t 0 1 × 3 1 ) ∈ S E ( 3 ) δ = ( u w ) ∈ R 6 a l g ( δ ) ∈ s e ( 3 ) E x p [ a l g ( A d j X ( δ ) ) ] = X ⋅ E x p [ a l g ( δ ) ] ⋅ X − 1 定义3 a l g ( A d j X ( δ ) ) = X ⋅ a l g ( δ ) ⋅ X − 1 = X ⋅ ( ∑ i = 1 6 δ i G i ) ⋅ X − 1 = ( R t 0 1 × 3 1 ) ( w ∧ u 0 1 × 3 0 ) ( R T − R T t 0 1 × 3 1 ) = ( R w ∧ R T R u − R w ∧ R T t 0 1 × 3 0 ) = ( ( R w ) ∧ R u + t ∧ R w 0 1 × 3 0 ) ⟹ A d j X ( δ ) = ( R u + t ∧ R w R w ) A d j X = ( R t ∧ R 0 3 × 3 R ) ∈ R 6 × 6 \begin{aligned} X&=\left(\begin{array}{cc}R&t\\0_{1\times 3}&1\end{array}\right)\in SE(3)\\ \delta&=\left(\begin{array}{c}u\\w\end{array}\right)\in \R^6\\ alg(\delta)&\in \mathfrak{se}(3)\\ Exp[alg(Adj_X(\delta))]&=X \cdot Exp[alg(\delta)]\cdot X^{-1}&\text{定义3}\\ alg(Adj_X(\delta))&=X \cdot alg(\delta)\cdot X^{-1}=X \cdot (\sum_{i=1}^6\delta_iG_i)\cdot X^{-1}\\ &=\left(\begin{array}{cc}R&t\\0_{1\times 3}&1\end{array}\right) \left(\begin{array}{cc}w_\wedge&u\\0_{1\times 3}&0\end{array}\right) \left(\begin{array}{cc}R^T&-R^Tt\\0_{1\times 3}&1\end{array}\right)\\ &=\left(\begin{array}{cc}Rw_\wedge R^T&Ru-Rw_\wedge R^Tt\\0_{1\times 3}&0\end{array}\right)\\ &=\left(\begin{array}{cc}(Rw)_\wedge&Ru+t_\wedge Rw\\0_{1\times 3}&0\end{array}\right)\\ \Longrightarrow Adj_X(\delta)&=\left(\begin{array}{c}Ru+t_\wedge Rw\\Rw\end{array}\right)\\ Adj_X&=\left(\begin{array}{cc}R&t_\wedge R\\0_{3\times 3}&R\end{array}\right)\in \R^{6\times 6} \end{aligned} Xδalg(δ)Exp[alg(AdjX(δ))]alg(AdjX(δ))AdjX(δ)AdjX=(R01×3t1)SE(3)=(uw)R6se(3)=XExp[alg(δ)]X1=Xalg(δ)X1=X(i=16δiGi)X1=(R01×3t1)(w01×3u0)(RT01×3RTt1)=(RwRT01×3RuRwRTt0)=((Rw)01×3Ru+tRw0)=(Ru+tRwRw)=(R03×3tRR)R6×6定义3

映射 A d j X : R 6 → R 6 Adj_X:\R^6\rightarrow \R^6 AdjX:R6R6 S E ( 3 ) SE(3) SE(3)对采用射线坐标的李代数 s e ( 3 ) \mathfrak{se}(3) se(3)的伴随作用,其具体作用形式为 A d j X v = N v Adj_X v=Nv AdjXv=Nv,其中射线坐标下 v = ( w u ) ∈ R 6 v=\left(\begin{array}{c}w\\u\end{array}\right) \in \R^6 v=(wu)R6,则 A d j X = N = ( R 0 3 × 3 t ∧ R R ) ∈ R 6 × 6 Adj_X=N=\left(\begin{array}{cc}R&0_{3\times 3}\\t_\wedge R&R\end{array}\right)\in \R^{6\times 6} AdjX=N=(RtR03×3R)R6×6。This is the Adjoint representation of s e ( 3 ) \mathfrak{se}(3) se(3) ⟹ \Longrightarrow Ad_G表示.

其中轴线坐标系下 v = ( u w ) ∈ R 6 v=\left(\begin{array}{c}u\\w\end{array}\right) \in \R^6 v=(uw)R6,则SE(3)对采用轴线坐标的李代数 s e ( 3 ) \mathfrak{se}(3) se(3)的伴随作用为 A d j X = N = ( R t ∧ R 0 3 × 3 R ) ∈ R 6 × 6 Adj_X=N=\left(\begin{array}{cc}R&t_\wedge R\\0_{3\times 3}&R\end{array}\right)\in \R^{6\times 6} AdjX=N=(R03×3tRR)R6×6

ad_G表示为: a d S E 3 ( v ) = ( R 0 3 × 3 t ∧ R ) ∈ R 6 × 6 ad_{SE3}(v)=\left(\begin{array}{cc}R&0_{3\times 3}\\t_\wedge &R\end{array}\right)\in \R^{6\times 6} adSE3(v)=(Rt03×3R)R6×6

8.5 雅克比

考虑 C ∈ S E ( 3 ) C\in SE(3) CSE(3) x ∈ R 3 x\in \R^3 xR3。对向量的旋转和平移可以通过左乘得到:
y = f ( C , x ) = ( R ∣ t ) ⋅ ( x 1 ) = R ⋅ x + t \begin{aligned} y=f(C,x)=(R|t)\cdot \left(\begin{array}{c}x\\1\end{array}\right)=R\cdot x+t \end{aligned} y=f(C,x)=(Rt)(x1)=Rx+t
对向量的微分很简单,因为f在x中是线性的:
∂ y ∂ x = R \frac{\partial y}{\partial x}=R xy=R
与SO(3)一样,对变换参数进行微分的方法还是生成元左乘y得到(此处最后一行去除了):
∂ y ∂ C = ( G 1 y ∣ G 2 y ∣ G 3 y ∣ G 4 y ∣ G 5 y ∣ G 6 y ) = ( I ∣ − y ∧ ) \begin{aligned} \frac{\partial y}{\partial C}&=(G_1 y|G_2 y|G_3 y|G_4 y|G_5y|G_6y)\\ &=(I|-y_\wedge) \end{aligned} Cy=(G1yG2yG3yG4yG5yG6y)=Iy
同理,对向量进行变换乘积后进行微分,得到的结果在给定伴随表示的基础上是平凡的:
C = C 1 ⋅ C 0 ∂ C ∂ C 0 = ∂ [ C 1 ⋅ exp ⁡ ( δ ) ⋅ C 0 ] ∂ δ = A d j C 1 \begin{aligned} C&=C_1\cdot C_0\\ \frac{\partial C}{\partial C_0}&=\frac{\partial [C_1\cdot \exp(\delta)\cdot C_0]}{\partial \delta}=Adj_{C_1} \end{aligned} CC0C=C1C0=δ[C1exp(δ)C0]=AdjC1

9. Sim(3)

9.1 描述及表示

Sim(2)是三维平面上保持方向的相似变换群,也是半直积 S E ( 3 ) ⋊ R ∗ SE(3)\rtimes \R^* SE(3)R。它有7个自由度:三维空间平移有3个自由度,三维空间旋转有3个自由度,尺度缩放对应1个自由度。它的子群包括: S i m ( 2 ) Sim(2) Sim(2) S E ( 3 ) SE(3) SE(3)
R ∈ S O ( 3 ) t ∈ R 3 X = ( R t 0 1 × 3 s − 1 ) ∈ S i m ( 3 ) ⊂ R 4 × 4 X − 1 = ( R T − s R T t 0 1 × 3 s ) \begin{aligned}R&\in SO(3)\\ t&\in \R^3\\ X=\left(\begin{array}{cc}R&t\\0_{1\times 3}&s^{-1}\end{array}\right) &\in Sim(3)\subset\R^{4\times 4}\\ X^{-1}&=\left(\begin{array}{cc}R^T&-sR^Tt\\0_{1\times 3}&s\end{array}\right)\end{aligned} RtX=(R01×3ts1)X1SO(3)R3Sim(3)R4×4=(RT01×3sRTts)

9.2 李代数

李代数 s i m ( 3 ) \mathfrak{sim}(3) sim(3)有7个生成元:
G 1 = ( 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 ) , G 2 = ( 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 ) , G 3 = ( 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 ) , G 4 = ( 0 0 0 0 0 0 1 0 0 − 1 0 0 0 0 0 0 ) , G 5 = ( 0 0 − 1 0 0 0 0 0 1 0 0 0 0 0 0 0 ) , G 6 = ( 0 1 0 0 − 1 0 0 0 0 0 0 0 0 0 0 0 ) , G 7 = ( 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 − 1 ) \begin{aligned} G_1=\left(\begin{array}{cccc}0&0&0&1\\0&0&0&0\\0&0&0&0\\0&0&0&0\end{array}\right), G_2&=\left(\begin{array}{cccc}0&0&0&0\\0&0&0&1\\0&0&0&0\\0&0&0&0\end{array}\right), G_3=\left(\begin{array}{cccc}0&0&0&0\\0&0&0&0\\0&0&1&0\\0&0&0&0\end{array}\right),\\ G_4=\left(\begin{array}{cccc}0&0&0&0\\0&0&1&0\\0&-1&0&0\\0&0&0&0\end{array}\right), G_5&=\left(\begin{array}{cccc}0&0&-1&0\\0&0&0&0\\1&0&0&0\\0&0&0&0\end{array}\right), G_6=\left(\begin{array}{cccc}0&1&0&0\\-1&0&0&0\\0&0&0&0\\0&0&0&0\end{array}\right),\\ G_7&=\left(\begin{array}{cccc}0&0&0&0\\0&0&0&0\\0&0&0&0\\0&0&0&-1\end{array}\right) \end{aligned} G1=0000000000001000,G2G4=0000001001000000,G5G7=0000000000000100,G3=0000000000100000=0010000010000000,G6=0100100000000000,=0000000000000001

9.3 指数映射和对数映射

从李代数 s i m ( 3 ) \mathfrak{sim}(3) sim(3)到李群$Sim(3)​的指数映射得到一个闭合形式结果:
v = ( w u λ ) ∈ R 7 A = sin ⁡ θ θ B = 1 − cos ⁡ θ θ C = θ − sin ⁡ θ θ 3 α = λ 2 λ 2 + θ 2 s = e λ X = α ( 1 − s − 1 λ ) + ( 1 − α ) ( A − λ B ) Y = α ( s − 1 − 1 + λ λ 2 ) + ( 1 − α ) ( B − λ C ) V = ( X − θ Y θ Y X ) E x p ( a l g ( v ) ) = E x p ( w ∧ u 0 − λ ) = ( R V ⋅ u 0 1 × 3 s − 1 ) \begin{aligned} v&=\left(\begin{array}{c}w\\u\\ \lambda\end{array}\right) \in \R^7\\ A&=\frac{\sin\theta}{\theta}\\ B&=\frac{1-\cos\theta}{\theta}\\C&=\frac{\theta-\sin\theta}{\theta^3}\\\alpha&=\frac{\lambda^2}{\lambda^2+\theta^2}\\s&=e^\lambda\\X&=\alpha(\frac{1-s^{-1}}{\lambda})+(1-\alpha)(A-\lambda B)\\Y&=\alpha(\frac{s^{-1}-1+\lambda}{\lambda^2})+(1-\alpha)(B-\lambda C)\\ V&=\left(\begin{array}{cc}X &-\theta Y\\ \theta Y&X\end{array}\right)\\ Exp(alg(v))=Exp\left(\begin{array}{cc}w_\wedge&u \\0&-\lambda\end{array}\right) &=\left(\begin{array}{cc}R& V\cdot u \\0_{1\times 3}&s^{-1}\end{array}\right)\end{aligned} vABCαsXYVExp(alg(v))=Exp(w0uλ)=wuλR7=θsinθ=θ1cosθ=θ3θsinθ=λ2+θ2λ2=eλ=α(λ1s1)+(1α)(AλB)=α(λ2s11+λ)+(1α)(BλC)=(XθYθYX)=(R01×3Vus1)
θ \theta θ λ \lambda λ比较小的时候,R和V中的系数可以通过泰勒级数展开计算。

9.4 伴随表示

X = ( R t 0 1 × 3 s − 1 ) ∈ S i m ( 3 ) A d j X = ( s R s t ∧ R − s t 0 3 × 3 R 0 3 × 1 0 1 × 3 0 1 × 3 1 ) \begin{aligned} X&=\left(\begin{array}{cc}R&t\\0_{1\times 3}&s^{-1}\end{array}\right) \in Sim(3)\\ Adj_X&=\left(\begin{array}{cc}sR&s t_\wedge R&-st\\0_{3\times3}&R&0_{3\times1}\\0_{1\times 3}&0_{1\times 3}&1\end{array}\right) \end{aligned} XAdjX=(R01×3ts1)Sim(3)=sR03×301×3stRR01×3st03×11

10. SL(3)

10.1 描述及表示

SL(3)是单位行列式线性变换群,其表示二维摄影平面上的同伦。它有8个自由的:平移对应2个自由度,缩放对应1个自由度,拉伸对应1个自由度,剪切对应1个自由度,还有2个自由度对应于视角改变。子群包括 A f f ( 2 ) Aff(2) Aff(2) S O ( 3 ) SO(3) SO(3)
H ∈ S L ( 3 ) ⊂ R 3 × 3 det ⁡ ( H ) = 1 \begin{aligned} H &\in SL(3)\subset \R^{3\times 3}\\ \det (H)&=1 \end{aligned} Hdet(H)SL(3)R3×3=1

其逆为 H − 1 H^{-1} H1

由向量映射为李代数HatSL3为: [ n ] G ∧ = ( n ( 5 ) n ( 3 ) n ( 1 ) n ( 4 ) − n ( 5 ) − n ( 6 ) n ( 2 ) n ( 7 ) n ( 8 ) n ( 6 ) ) [n]_G^{\wedge}=\left(\begin{array}{ccc}n(5)&n(3)&n(1)\\n(4)&-n(5)-n(6)&n(2)\\n(7)&n(8)&n(6)\end{array}\right) [n]G=n(5)n(4)n(7)n(3)n(5)n(6)n(8)n(1)n(2)n(6)

由李代数转化为向量VecSL3为: n = [ N ( 1 , 3 ) ; N ( 2 , 3 ) ; N ( 1 , 2 ) ; N ( 2 , 1 ) ; N ( 1 , 1 ) ; N ( 3 , 3 ) ; N ( 3 , 1 ) ; N ( 3 , 2 ) ] ∈ R 8 n=[N(1,3);N(2,3);N(1,2);N(2,1);N(1,1);N(3,3);N(3,1);N(3,2)]\in \mathbb{R}^8 n=[N(1,3);N(2,3);N(1,2);N(2,1);N(1,1);N(3,3);N(3,1);N(3,2)]R8

归一化normalize为 H n o r m = H . / ( det ⁡ ( H ) 1 3 ) Hnorm=H./(\det(H)^{\frac{1}{3}}) Hnorm=H./(det(H)31)

x_dual_hat=dualHatSL3(x)= ( x ( 3 ) 0 x ( 2 ) 0 x ( 1 ) 0 0 0 0 x ( 3 ) 0 x ( 1 ) − x ( 2 ) − x ( 2 ) 0 0 0 0 0 0 0 x ( 3 ) x ( 1 ) x ( 2 ) ) \left(\begin{array}{cccccccc}x(3)&0&x(2)&0&x(1)&0&0&0\\ 0&x(3)&0&x(1)&-x(2)&-x(2)&0&0\\0&0&0&0&0&x(3)&x(1)&x(2)\end{array}\right) x(3)000x(3)0x(2)000x(1)0x(1)x(2)00x(2)x(3)00x(1)00x(2)

10.2 李代数

李代数 s l ( 3 ) \mathfrak{sl}(3) sl(3)有8个生成元,所有生成元的迹为0:
G 1 = ( 0 0 1 0 0 0 0 0 0 ) , G 2 = ( 0 0 0 0 0 1 0 0 0 ) , G 3 = ( 0 − 1 0 1 0 0 0 0 0 ) , G 4 = ( 1 0 0 0 1 0 0 0 − 2 ) , G 5 = ( 1 0 0 0 1 0 0 0 0 ) , G 6 = ( 0 1 0 1 0 0 0 0 0 ) , G 7 = ( 0 0 0 0 0 0 1 0 0 ) , G 8 = ( 0 0 0 0 0 0 0 1 0 ) \begin{aligned} G_1=\left(\begin{array}{ccc}0&0&1\\0&0&0\\0&0&0\end{array}\right), G_2&=\left(\begin{array}{ccc}0&0&0\\0&0&1\\0&0&0\end{array}\right), G_3=\left(\begin{array}{ccc}0&-1&0\\1&0&0\\0&0&0\end{array}\right),\\ G_4=\left(\begin{array}{ccc}1&0&0\\0&1&0\\0&0&-2\end{array}\right), G_5&=\left(\begin{array}{ccc}1&0&0\\0&1&0\\0&0&0\end{array}\right), G_6=\left(\begin{array}{ccc}0&1&0\\1&0&0\\0&0&0\end{array}\right),\\ G_7&=\left(\begin{array}{ccc}0&0&0\\0&0&0\\1&0&0\end{array}\right), G_8=\left(\begin{array}{ccc}0&0&0\\0&0&0\\0&1&0\end{array}\right) \end{aligned} G1=000000100,G2G4=100010002G5G7=000000010,G3=010100000=100010000G6=010100000=001000000G8=000001000

10.3 指数映射和对数映射

从李代数到李群的指数映射没有闭合形式。它可以用任何一般的矩阵指数routine来计算 H = e x p m ( H a t S L 3 ( h ) ) H=expm(HatSL3(h)) H=expm(HatSL3(h))

对数映射也是一样的: m = V e c S L 3 ( l o g m ( M ) ) m=VecSL3(logm(M)) m=VecSL3(logm(M))

注意,任何无迹方阵的指数都是一个具有单位行列式的矩阵。 det ⁡ ( exp ⁡ ( A ) ) = exp ⁡ ( t r ( A ) ) = 1 \det(\exp(A))=\exp(tr(A))=1 det(exp(A))=exp(tr(A))=1

10.4 伴随表示

首先,我们把 s l ( 3 ) \mathfrak{sl}(3) sl(3)的元素( 3 × 3 3\times 3 3×3的矩阵)按照行主要书序重新写成为9维向量。然后,对于 h ∈ s l ( 3 ) h\in \mathfrak{sl}(3) hsl(3) H ∈ S L ( 3 ) H\in SL(3) HSL(3),其共轭 H ⋅ h ⋅ H − 1 H\cdot h\cdot H^{-1} HhH1可以表述为h的元素上的线性映射 C H C_H CH。用 a l g − 1 alg^{-1} alg1 a l g alg alg分别左乘和右乘该线性映射就可以得到伴随表示。


[ a l g ] = ( 0 0 0 1 1 0 0 0 0 0 − 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 − 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 − 2 0 0 0 0 ) ∈ R 9 × 8 [ a l g − 1 ] = ( 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 − 1 2 0 1 2 0 0 0 0 0 1 2 0 0 0 1 2 0 0 0 0 1 2 0 0 0 − 1 2 0 0 0 0 0 1 2 0 1 2 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 ) ∈ R 8 × 9 C H = ( H 11 H − T H 12 H − T H 13 H − T H 21 H − T H 22 H − T H 23 H − T H 31 H − T H 32 H − T H 33 H − T ) \begin{aligned} \left[ alg\right]&=\left(\begin{array}{cccccccc}0&0&0&1&1&0&0&0\\ 0&0&-1&0&0&0&0&0\\ 1&0&0&0&0&0&0&0\\ 0&0&1&0&0&1&0&0\\ 0&0&0&1&-1&0&0&0\\ 0&1&0&0&0&0&0&0\\ 0&0&0&0&0&0&1&0\\ 0&0&0&0&0&0&0&1\\ 0&0&0&-2&0&0&0&0 \end{array}\right)\in \R^{9\times 8}\\ \left[ alg^{-1}\right]&=\left(\begin{array}{ccccccccc} 0&0&1&0&0&0&0&0&0\\ 0&0&0&0&0&1&0&0&0\\ 0&-\frac{1}{2}&0&\frac{1}{2}&0&0&0&0&0\\ \frac{1}{2}&0&0&0&\frac{1}{2}&0&0&0&0\\ \frac{1}{2}&0&0&0&-\frac{1}{2}&0&0&0&0\\ 0&\frac{1}{2}&0&\frac{1}{2}&0&0&0&0&0\\ 0&0&0&0&0&0&1&0&0\\ 0&0&0&0&0&0&0&1&0\\\end{array}\right)\in \R^{8\times 9}\\ C_H&=\left(\begin{array}{ccc}H_{11}H^{-T}&H_{12}H^{-T}&H_{13}H^{-T}\\ H_{21}H^{-T}&H_{22}H^{-T}&H_{23}H^{-T}\\ H_{31}H^{-T}&H_{32}H^{-T}&H_{33}H^{-T}\end{array}\right) \end{aligned} [alg][alg1]CH=001000000000001000010100000100010002100010000000100000000000100000000010R9×8=00021210000021002100100000000021002100000212100001000000000000100000000100000000R8×9=H11HTH21HTH31HTH12HTH22HTH32HTH13HTH23HTH33HT

A d j H = [ a l g − 1 ] ⋅ C H ⋅ [ a l g ] \begin{aligned} Adj_H&=[alg^{-1}]\cdot C_H \cdot [alg] \end{aligned} AdjH=[alg1]CH[alg]

ad_G表示:
a d = a d S L 3 ( h ) ∈ R 8 × 8 = ( h ( 5 ) − h ( 6 ) h ( 3 ) − h ( 2 ) 0 − h ( 1 ) h ( 1 ) 0 0 h ( 4 ) − h ( 5 ) − 2 ∗ h ( 6 ) 0 − h ( 1 ) h ( 2 ) 2 ∗ h ( 2 ) 0 0 − h ( 8 ) 0 2 ∗ h ( 5 ) + h ( 6 ) 0 − 2 ∗ h ( 3 ) − h ( 3 ) 0 h ( 1 ) 0 − h ( 7 ) 0 − 2 ∗ h ( 5 ) − h ( 6 ) 2 ∗ h ( 4 ) h ( 4 ) h ( 2 ) 0 − h ( 7 ) 0 − h ( 4 ) h ( 3 ) 0 0 h ( 1 ) 0 h ( 7 ) h ( 8 ) 0 0 0 0 − h ( 1 ) − h ( 2 ) 0 0 0 h ( 8 ) h ( 7 ) − h ( 7 ) − h ( 5 ) + h ( 6 ) − h ( 4 ) 0 0 h ( 7 ) 0 − h ( 8 ) − 2 ∗ h ( 8 ) − h ( 3 ) h ( 5 ) + 2 ∗ h ( 6 ) ) \begin{aligned} &\quad ad=ad_{SL3}(h)\in \R^{8\times 8}=\\ &\left(\begin{array}{cccccccc}h(5)-h(6)&h(3)&-h(2)&0&-h(1)&h(1)&0&0 \\h(4)&-h(5)-2*h(6)&0&-h(1)&h(2)&2*h(2)&0&0 \\-h(8)&0&2*h(5)+h(6)&0&-2*h(3)&-h(3)&0&h(1) \\0&-h(7)&0&-2*h(5)-h(6)&2*h(4)&h(4)&h(2)&0 \\-h(7)&0&-h(4)&h(3)&0&0&h(1)&0 \\h(7)&h(8)&0&0&0&0&-h(1)&-h(2) \\0&0&0&h(8)&h(7)&-h(7)&-h(5)+h(6)&-h(4) \\0&0&h(7)&0&-h(8)&-2*h(8)&-h(3)&h(5)+2*h(6) \end{array}\right) \end{aligned} ad=adSL3(h)R8×8=h(5)h(6)h(4)h(8)0h(7)h(7)00h(3)h(5)2h(6)0h(7)0h(8)00h(2)02h(5)+h(6)0h(4)00h(7)0h(1)02h(5)h(6)h(3)0h(8)0h(1)h(2)2h(3)2h(4)00h(7)h(8)h(1)2h(2)h(3)h(4)00h(7)2h(8)000h(2)h(1)h(1h(5)+h(6)h(3)00h(1)00h(2)h(4)h(5)+2h(6)
Ad_G表示为
A d 1 = [ ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 1 1 ; ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 2 1 ; ( H 1 2 ∗ H 3 1 − H 1 1 ∗ H 3 2 ) ∗ H 1 1 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 2 1 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 1 1 ; ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 3 1 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 3 1 ; ( H 1 2 ∗ H 3 1 − H 1 1 ∗ H 3 2 ) ∗ H 3 1 ] A d 2 = [ ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 1 2 ; ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 2 2 ; ( H 1 2 ∗ H 3 1 − H 1 1 ∗ H 3 2 ) ∗ H 1 2 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 2 2 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 1 2 ; ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 3 2 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 3 2 ; ( H 1 2 ∗ H 3 1 − H 1 1 ∗ H 3 2 ) ∗ H 3 2 ] ; A d 3 = [ ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 1 1 ; ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 2 1 ; ( H 1 1 ∗ H 3 3 − H 1 3 ∗ H 3 1 ) ∗ H 1 1 ; ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 2 1 ; ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 1 1 ; ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 3 1 ; ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 3 1 ; ( H 1 1 ∗ H 3 3 − H 1 3 ∗ H 3 1 ) ∗ H 3 1 ] ; A d 4 = [ ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 1 2 ; ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 2 2 ; ( H 1 3 ∗ H 3 2 − H 1 2 ∗ H 3 3 ) ∗ H 1 2 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 2 2 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 1 2 ; ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 3 2 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 3 2 ; ( H 1 3 ∗ H 3 2 − H 1 2 ∗ H 3 3 ) ∗ H 3 2 ] ; A d 5 = [ ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 1 1 − ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 1 2 ; ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 2 1 − ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 2 2 ; ( H 1 3 ∗ H 3 2 − H 1 2 ∗ H 3 3 ) ∗ H 1 1 − ( H 1 1 ∗ H 3 3 − H 1 3 ∗ H 3 1 ) ∗ H 1 2 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 2 1 − ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 2 2 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 1 1 − ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 1 2 ; ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 3 1 − ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 3 2 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 3 1 − ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 3 2 ; ( H 1 3 ∗ H 3 2 − H 1 2 ∗ H 3 3 ) ∗ H 3 1 − ( H 1 1 ∗ H 3 3 − H 1 3 ∗ H 3 1 ) ∗ H 3 2 ] ; A d 6 = [ ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 1 3 − ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 1 2 ; ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 2 3 − ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 2 2 ; ( H 1 2 ∗ H 3 1 − H 1 1 ∗ H 3 2 ) ∗ H 1 3 − ( H 1 1 ∗ H 3 3 − H 1 3 ∗ H 3 1 ) ∗ H 1 2 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 2 3 − ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 2 2 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 1 3 − ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 1 2 ; ( H 1 1 ∗ H 2 2 − H 1 2 ∗ H 2 1 ) ∗ H 3 3 − ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 3 2 ; ( H 2 1 ∗ H 3 2 − H 2 2 ∗ H 3 1 ) ∗ H 3 3 − ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 3 2 ; ( H 1 2 ∗ H 3 1 − H 1 1 ∗ H 3 2 ) ∗ H 3 3 − ( H 1 1 ∗ H 3 3 − H 1 3 ∗ H 3 1 ) ∗ H 3 2 ] ; A d 7 = [ ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 1 3 ; ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 2 3 ; ( H 1 3 ∗ H 3 2 − H 1 2 ∗ H 3 3 ) ∗ H 1 3 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 2 3 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 1 3 ; ( H 1 2 ∗ H 2 3 − H 1 3 ∗ H 2 2 ) ∗ H 3 3 ; ( H 2 2 ∗ H 3 3 − H 2 3 ∗ H 3 2 ) ∗ H 3 3 ; ( H 1 3 ∗ H 3 2 − H 1 2 ∗ H 3 3 ) ∗ H 3 3 ] ; A d 8 = [ ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 1 3 ; ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 2 3 ; ( H 1 1 ∗ H 3 3 − H 1 3 ∗ H 3 1 ) ∗ H 1 3 ; ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 2 3 ; ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 1 3 ; ( H 1 3 ∗ H 2 1 − H 1 1 ∗ H 2 3 ) ∗ H 3 3 ; ( H 2 3 ∗ H 3 1 − H 2 1 ∗ H 3 3 ) ∗ H 3 3 ; ( H 1 1 ∗ H 3 3 − H 1 3 ∗ H 3 1 ) ∗ H 3 3 ] ; A d = A d S L 3 ( H ) = ( A d 1 A d 2 A d 3 A d 4 A d 5 A d 6 A d 7 A d 8 ) ∈ R 8 × 8 \begin{aligned} Ad1=&[(H1_1*H2_2 - H1_2*H2_1)*H1_1; (H1_1*H2_2 - H1_2*H2_1)*H2_1; \\ &(H1_2*H3_1 - H1_1*H3_2)*H1_1; (H2_1*H3_2 - H2_2*H3_1)*H2_1;\\ &(H2_1*H3_2 - H2_2*H3_1)*H1_1; (H1_1*H2_2 - H1_2*H2_1)*H3_1;\\ &(H2_1*H3_2 - H2_2*H3_1)*H3_1; (H1_2*H3_1 - H1_1*H3_2)*H3_1]\\ Ad2 = &[ (H1_1*H2_2 - H1_2*H2_1)*H1_2 ; (H1_1*H2_2 - H1_2*H2_1)*H2_2;\\ &(H1_2*H3_1 - H1_1*H3_2)*H1_2; (H2_1*H3_2 - H2_2*H3_1)*H2_2;\\ &(H2_1*H3_2 - H2_2*H3_1)*H1_2; (H1_1*H2_2 - H1_2*H2_1)*H3_2 ;\\ &(H2_1*H3_2 - H2_2*H3_1)*H3_2; (H1_2*H3_1 - H1_1*H3_2)*H3_2 ];\\ Ad3 = &[ (H1_3*H2_1 - H1_1*H2_3)*H1_1; (H1_3*H2_1 - H1_1*H2_3)*H2_1;\\ &(H1_1*H3_3 - H1_3*H3_1)*H1_1; (H2_3*H3_1 - H2_1*H3_3)*H2_1 ;\\ &(H2_3*H3_1 - H2_1*H3_3)*H1_1; (H1_3*H2_1 - H1_1*H2_3)*H3_1 ;\\ &(H2_3*H3_1 - H2_1*H3_3)*H3_1; (H1_1*H3_3 - H1_3*H3_1)*H3_1 ]; \\ Ad4 = &[ (H1_2*H2_3 - H1_3*H2_2)*H1_2 ; (H1_2*H2_3 - H1_3*H2_2)*H2_2;\\ &(H1_3*H3_2 - H1_2*H3_3)*H1_2; (H2_2*H3_3 - H2_3*H3_2)*H2_2 ;\\ &(H2_2*H3_3 - H2_3*H3_2)*H1_2; (H1_2*H2_3 - H1_3*H2_2)*H3_2 ;\\ &(H2_2*H3_3 - H2_3*H3_2)*H3_2 ; (H1_3*H3_2 - H1_2*H3_3)*H3_2 ];\\ Ad5 = &[ (H1_2*H2_3 - H1_3*H2_2)*H1_1 - (H1_3*H2_1 - H1_1*H2_3)*H1_2;\\ &(H1_2*H2_3 - H1_3*H2_2)*H2_1 - (H1_3*H2_1 - H1_1*H2_3)*H2_2;\\ &(H1_3*H3_2 - H1_2*H3_3)*H1_1 - (H1_1*H3_3 - H1_3*H3_1)*H1_2;\\ &(H2_2*H3_3 - H2_3*H3_2)*H2_1 - (H2_3*H3_1 - H2_1*H3_3)*H2_2 ;\\ &(H2_2*H3_3 - H2_3*H3_2)*H1_1 - (H2_3*H3_1 - H2_1*H3_3)*H1_2;\\ &(H1_2*H2_3 - H1_3*H2_2)*H3_1 - (H1_3*H2_1 - H1_1*H2_3)*H3_2 ;\\ &(H2_2*H3_3 - H2_3*H3_2)*H3_1 - (H2_3*H3_1 - H2_1*H3_3)*H3_2;\\ &(H1_3*H3_2 - H1_2*H3_3)*H3_1 - (H1_1*H3_3 - H1_3*H3_1)*H3_2 ];\\ Ad6 = &[ (H1_1*H2_2 - H1_2*H2_1)*H1_3 - (H1_3*H2_1 - H1_1*H2_3)*H1_2;\\ &(H1_1*H2_2 - H1_2*H2_1)*H2_3 - (H1_3*H2_1 - H1_1*H2_3)*H2_2;\\ &(H1_2*H3_1 - H1_1*H3_2)*H1_3 - (H1_1*H3_3 - H1_3*H3_1)*H1_2;\\ &(H2_1*H3_2 - H2_2*H3_1)*H2_3 - (H2_3*H3_1 - H2_1*H3_3)*H2_2 ;\\ &(H2_1*H3_2 - H2_2*H3_1)*H1_3 - (H2_3*H3_1 - H2_1*H3_3)*H1_2;\\ &(H1_1*H2_2 - H1_2*H2_1)*H3_3 - (H1_3*H2_1 - H1_1*H2_3)*H3_2 ;\\ &(H2_1*H3_2 - H2_2*H3_1)*H3_3 - (H2_3*H3_1 - H2_1*H3_3)*H3_2;\\ &(H1_2*H3_1 - H1_1*H3_2)*H3_3 - (H1_1*H3_3 - H1_3*H3_1)*H3_2 ]; \\ Ad7 = &[(H1_2*H2_3 - H1_3*H2_2)*H1_3 ; (H1_2*H2_3 - H1_3*H2_2)*H2_3;\\ &(H1_3*H3_2 - H1_2*H3_3)*H1_3; (H2_2*H3_3 - H2_3*H3_2)*H2_3 ;\\ &(H2_2*H3_3 - H2_3*H3_2)*H1_3; (H1_2*H2_3 - H1_3*H2_2)*H3_3 ;\\ &(H2_2*H3_3 - H2_3*H3_2)*H3_3 ; (H1_3*H3_2 - H1_2*H3_3)*H3_3 ]; \\ Ad8 = &[(H1_3*H2_1 - H1_1*H2_3)*H1_3; (H1_3*H2_1 - H1_1*H2_3)*H2_3;\\ &(H1_1*H3_3 - H1_3*H3_1)*H1_3; (H2_3*H3_1 - H2_1*H3_3)*H2_3 ;\\ &(H2_3*H3_1 - H2_1*H3_3)*H1_3; (H1_3*H2_1 - H1_1*H2_3)*H3_3 ;\\ &(H2_3*H3_1 - H2_1*H3_3)*H3_3; (H1_1*H3_3 - H1_3*H3_1)*H3_3];\\ Ad=Ad_{SL3}(H)&= \left(\begin{array}{cccccccc}Ad1 &Ad2 &Ad3 &Ad4 &Ad5 &Ad6 &Ad7 &Ad8 \end{array}\right) \in \R^{8\times 8} \end{aligned} Ad1=Ad2=Ad3=Ad4=Ad5=Ad6=Ad7=Ad8=Ad=AdSL3(H)[(H11H22H12H21)H11;(H11H22H12H21)H21;(H12H31H11H32)H11;(H21H32H22H31)H21;(H21H32H22H31)H11;(H11H22H12H21)H31;(H21H32H22H31)H31;(H12H31H11H32)H31][(H11H22H12H21)H12;(H11H22H12H21)H22;(H12H31H11H32)H12;(H21H32H22H31)H22;(H21H32H22H31)H12;(H11H22H12H21)H32;(H21H32H22H31)H32;(H12H31H11H32)H32];[(H13H21H11H23)H11;(H13H21H11H23)H21;(H11H33H13H31)H11;(H23H31H21H33)H21;(H23H31H21H33)H11;(H13H21H11H23)H31;(H23H31H21H33)H31;(H11H33H13H31)H31];[(H12H23H13H22)H12;(H12H23H13H22)H22;(H13H32H12H33)H12;(H22H33H23H32)H22;(H22H33H23H32)H12;(H12H23H13H22)H32;(H22H33H23H32)H32;(H13H32H12H33)H32];[(H12H23H13H22)H11(H13H21H11H23)H12;(H12H23H13H22)H21(H13H21H11H23)H22;(H13H32H12H33)H11(H11H33H13H31)H12;(H22H33H23H32)H21(H23H31H21H33)H22;(H22H33H23H32)H11(H23H31H21H33)H12;(H12H23H13H22)H31(H13H21H11H23)H32;(H22H33H23H32)H31(H23H31H21H33)H32;(H13H32H12H33)H31(H11H33H13H31)H32];[(H11H22H12H21)H13(H13H21H11H23)H12;(H11H22H12H21)H23(H13H21H11H23)H22;(H12H31H11H32)H13(H11H33H13H31)H12;(H21H32H22H31)H23(H23H31H21H33)H22;(H21H32H22H31)H13(H23H31H21H33)H12;(H11H22H12H21)H33(H13H21H11H23)H32;(H21H32H22H31)H33(H23H31H21H33)H32;(H12H31H11H32)H33(H11H33H13H31)H32];[(H12H23H13H22)H13;(H12H23H13H22)H23;(H13H32H12H33)H13;(H22H33H23H32)H23;(H22H33H23H32)H13;(H12H23H13H22)H33;(H22H33H23H32)H33;(H13H32H12H33)H33];[(H13H21H11H23)H13;(H13H21H11H23)H23;(H11H33H13H31)H13;(H23H31H21H33)H23;(H23H31H21H33)H13;(H13H21H11H23)H33;(H23H31H21H33)H33;(H11H33H13H31)H33];=(Ad1Ad2Ad3Ad4Ad5Ad6Ad7Ad8)R8×8

泰勒级数

下文都是当参数接近于0的时候,上述方程中系数的泰勒级数展开近似形式:
sin ⁡ θ θ = 1 − θ 2 6 + θ 4 120 − θ 6 5040 + O ( θ 8 ) ≈ 1 − θ 2 6 ( 1 − θ 2 20 ( 1 − θ 2 42 ) ) \begin{aligned} \frac{\sin\theta}{\theta}=1-\frac{\theta^2}{6}+\frac{\theta^4}{120}-\frac{\theta^6}{5040}+\mathcal{O}(\theta^8)\approx 1-\frac{\theta^2}{6}(1-\frac{\theta^2}{20}(1-\frac{\theta^2}{42})) \end{aligned} θsinθ=16θ2+120θ45040θ6+O(θ8)16θ2(120θ2(142θ2))

1 − cos ⁡ θ θ 2 = 1 2 − θ 2 24 + θ 4 720 − θ 6 40320 + O ( θ 8 ) ≈ 1 2 ( 1 − θ 2 12 ( 1 − θ 2 30 ( 1 − θ 2 56 ) ) ) \begin{aligned} \frac{1-\cos\theta}{\theta^2}&=\frac{1}{2}-\frac{\theta^2}{24}+\frac{\theta^4}{720}-\frac{\theta^6}{40320}+\mathcal{O}(\theta^8)\approx \frac{1}{2}(1-\frac{\theta^2}{12}(1-\frac{\theta^2}{30}(1-\frac{\theta^2}{56}))) \end{aligned} θ21cosθ=2124θ2+720θ440320θ6+O(θ8)21(112θ2(130θ2(156θ2)))

θ − sin ⁡ θ θ 3 = 1 6 − θ 2 120 + θ 4 5040 − θ 6 362880 + O ( θ 8 ) ≈ 1 6 ( 1 − θ 2 20 ( 1 − θ 2 42 ( 1 − θ 2 72 ) ) ) \begin{aligned} \frac{\theta-\sin\theta}{\theta^3}&=\frac{1}{6}-\frac{\theta^2}{120}+\frac{\theta^4}{5040}-\frac{\theta^6}{362880}+\mathcal{O}(\theta^8)\approx \frac{1}{6}(1-\frac{\theta^2}{20}(1-\frac{\theta^2}{42}(1-\frac{\theta^2}{72}))) \end{aligned} θ3θsinθ=61120θ2+5040θ4362880θ6+O(θ8)61(120θ2(142θ2(172θ2)))

1 2 − 1 − cos ⁡ θ θ 2 θ 2 = 1 24 − θ 2 720 + θ 4 40320 − θ 6 3628800 + O ( θ 8 ) ≈ 1 24 ( 1 − θ 2 30 ( 1 − θ 2 56 ( 1 − θ 2 90 ) ) ) \begin{aligned} \frac{\frac{1}{2}-\frac{1-\cos\theta}{\theta^2}}{\theta^2}&=\frac{1}{24}-\frac{\theta^2}{720}+\frac{\theta^4}{40320}-\frac{\theta^6}{3628800}+\mathcal{O}(\theta^8) \approx \frac{1}{24}(1-\frac{\theta^2}{30}(1-\frac{\theta^2}{56}(1-\frac{\theta^2}{90}))) \end{aligned} θ221θ21cosθ=241720θ2+40320θ43628800θ6+O(θ8)241(130θ2(156θ2(190θ2)))

1 θ 2 ( 1 − θ sin ⁡ θ 2 ( 1 − cos ⁡ θ ) ) = 1 12 + θ 2 720 + θ 4 30240 + θ 6 1209600 + O ( θ 8 ) ≈ 1 12 ( 1 + θ 2 60 ( 1 + θ 2 42 ( 1 + θ 2 40 ) ) ) \begin{aligned} \frac{1}{\theta^2}(1-\frac{\theta\sin\theta}{2(1-\cos\theta)}) &=\frac{1}{12}+\frac{\theta^2}{720}+\frac{\theta^4}{30240}+\frac{\theta^6}{1209600}+\mathcal{O}(\theta^8)\\ &\approx \frac{1}{12}(1+\frac{\theta^2}{60}(1+\frac{\theta^2}{42}(1+\frac{\theta^2}{40}))) \end{aligned} θ21(12(1cosθ)θsinθ)=121+720θ2+30240θ4+1209600θ6+O(θ8)121(1+60θ2(1+42θ2(1+40θ2)))

1 − e − λ λ = 1 − λ 2 + λ 2 6 − λ 3 24 + O ( λ 4 ) ≈ 1 − λ 2 ( 1 − λ 3 ( 1 − λ 4 ) ) \begin{aligned} \frac{1-e^{-\lambda}}{\lambda} =1-\frac{\lambda}{2}+\frac{\lambda^2}{6}-\frac{\lambda^3}{24}+\mathcal{O}(\lambda^4) \approx 1-\frac{\lambda}{2}(1-\frac{\lambda}{3}(1-\frac{\lambda}{4})) \end{aligned} λ1eλ=12λ+6λ224λ3+O(λ4)12λ(13λ(14λ))

e − λ − 1 + λ λ = 1 2 − λ 6 + λ 2 24 − λ 3 120 + O ( λ 4 ) ≈ 1 2 ( 1 − λ 3 ( 1 − λ 4 ( 1 − λ 5 ) ) ) \begin{aligned} \frac{e^{-\lambda}-1+\lambda}{\lambda} =\frac{1}{2}-\frac{\lambda}{6}+\frac{\lambda^2}{24}-\frac{\lambda^3}{120}+\mathcal{O}(\lambda^4) \approx \frac{1}{2}(1-\frac{\lambda}{3}(1-\frac{\lambda}{4}(1-\frac{\lambda}{5}))) \end{aligned} λeλ1+λ=216λ+24λ2120λ3+O(λ4)21(13λ(14λ(15λ)))

1 2 − e − λ − 1 + λ λ 2 λ = 1 6 − λ 24 + λ 2 120 − λ 3 720 + O ( λ 4 ) ≈ 1 6 ( 1 − λ 4 ( 1 − λ 5 ( 1 − λ 6 ) ) ) \begin{aligned} \frac{\frac{1}{2}-\frac{e^{-\lambda}-1+\lambda}{\lambda^2}}{\lambda} =\frac{1}{6}-\frac{\lambda}{24}+\frac{\lambda^2}{120}-\frac{\lambda^3}{720}+\mathcal{O}(\lambda^4) \approx \frac{1}{6}(1-\frac{\lambda}{4}(1-\frac{\lambda}{5}(1-\frac{\lambda}{6}))) \end{aligned} λ21λ2eλ1+λ=6124λ+120λ2720λ3+O(λ4)61(14λ(15λ(16λ)))

参考文献

[1] Lie Groups for 2D and 3D Transformations

[2] Lie Groups for Computer Vision

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值