计算机视觉的李代数

http://ethaneade.com/lie_groups.pdf

《Lie Groups for Computer Vision》

2.1、矩阵群(matrix groups):

李群G(Lie group)既是光滑可微流形(manifold),也是一个群(group)。本文档设计的李群都是实矩阵群,也就是每一个元素都是实数。群的乘法和反运算和矩阵的乘法和反运算类似。因为每个群都可以由一个nxn的非奇异指定子类表示,自由度一般都不到n^2.

2.2、李代数(Lie Algebra):

假定李群G表示在\mathbb{R}^{n\times n},并且自由度是k。李代数\mathfrak{g}是关于李群G恒等微分变换空间-切空间(tangent space)。该切空间是由基元素 \left \{G_1,\cdots ,G_k \right \}组成的k维向量空间,这些基元素也称之为generators。李代数\mathfrak{g}的元素在\mathbb{R}^{n\times n}内表示成一个矩阵的形式,但基本的运算是标量间的加法和乘法,而不是矩阵的乘法。

对于这样的李代数\mathfrak{g},我们将一个系数为\mathbf{c},且表示为向量generators\left \{ G_i \right \}的线性组合写成alg\left ( \mathbf{c} \right )

alg:\mathbb{R}^{k}\rightarrow \mathfrak{g}\subset \mathbb{R}^{n\times n}          (1)

alg\left ( \mathbf{c} \right )\equiv \sum_{i=1}^{k}\mathbf{c}_{i}G_{i}               (2)

我们用alg^{-1}表示(2)线性组合的唯一逆。切向量\mathbf{c}实际上是一个n×n矩阵,这可能看起来令人困惑,但它总是可以被认为(和表示)为生成器generators\left \{ G_i \right \}的系数向量。

2.3、指数(Exponential)映射和对数(Logarithm):

指数映射是将Lie group中的元素映射到Lie algebra中。直观地说,群流形(group manifold)沿着代数(algebra)中切向量(tangent vector)指定的微分方向映射到代数。对于矩阵群(matrix group),指数映射(exponential map)就是简单的矩阵求幂(matrix exponentiation):

exp:\mathfrak{g}\rightarrow G                       (3)

exp\left ( x \right ) = \mathbf{I} + x+\frac{1}{2!}x^2+\frac{1}{3!}x^3+\cdots +\frac{1}{i!}x^i+\cdots(4)

公式(4)就是指数函数的泰勒级数。

对于下面描述的几个群,指数映射(exponential map)具有闭合形式。它总是一个连续的映射。指数映射的倒反变换就是对数:

exp\left ( log\left ( X \right ) \right )=X                               (5)

对数通常不是处处连续的,但在恒等式附近总是连续的。注意,对于大多数群,包括所有具有紧凑子群(比如旋转)的组,exp和log都不是单射的。

2.4、流行上的插值:

指数映射和对数为插值或混合变换提供了一种直观的方法。假设X,Y\in G是两个变换,t \in \left [ 0, 1 \right ]\subset \mathbb{R}是对应的插值系数。函数f通过沿着它们之间的测地线(geodesic)稳定移动,将这两种变换混合在一起:

f:G\times G\times \mathbb{R}\rightarrow G         (6) 两个子群的操作加上一个尺度系数变换到另一个李群

f\left ( X, Y,t \right ) = exp\left ( t \cdot log\left ( Y \cdot X^{-1} \right ) \right )\cdot X  (7) 李群操作后经过log变成李代数,李代数与标量操还是李代数,然后经过exp操作重新变成李群。

\Rightarrow f\left ( X,Y,0 \right ) = X                                       (8)如果子群X插值系数为0,还是它本身

\Rightarrow f\left ( X,Y,1 \right ) = Y                                       (9) 如果子群X插值系数是1,它就变换成了子群Y

\Rightarrow f\left ( X,Y,\frac{1}{2} \right )\cdot X^{-1} = Y \cdot f\left ( X,Y,\frac{1}{2} \right )^{-1}      (10)子群X插值系数为1/2,那么也可以从子群Y插值回来

2.5、 伴随表示(adjoint):

已知a,b \in \mathfrak{g}为切向量,即李代数,X \in G是一个群元素。我们如何选择b使得公式(11)成立?

exp\left ( b \right )\cdot X = X \cdot exp(a)                                   (11)

两边同时乘以X^{-1}得到X共轭:

exp\left ( b \right ) = X \cdot exp(a)\cdot X^{-1}                                 (12)

然后可以通过对数运算得到b

b = log\left ( X\cdot exp\left ( a \right )\cdot X^{-1} \right )                                  (13)

实际上,利用伴随表示也可以得到相同的结果。G\subset \mathbb{R}^{n\times n}是具有k个自由度的实群,在\mathfrak{g}上的线性变换群有一个同构表示,称为伴随(adjoint):

X \in G                                                                  (14) X是一个群

a \in \mathfrak{g}                                                                     (15) a是一个代数

Adj_{X}:\mathfrak{g}\rightarrow \mathfrak{g}                                                        (16) 伴随是一个从代数到代数的操作

Adj_{X}\left (a \right )=X \cdot a\cdot X^{-1} \in \mathfrak{g}                                (17) a的伴随矩阵和公式12是不是很像

伴随表示的元素通常写成k x k矩阵,通过乘法作用于\mathfrak{g}中元素的系数向量。

伴随表示保留了G群的结构

X,Y \in G                                                                (18)

Adj_{X \cdot Y}=Adj_{X }\cdot Adj_{Y}                                           (19)

Adj_{X^{-1}}=Adj_{X }^{-1}                                                     (20)

回到伴随矩阵b的问题,

b = Adj_{X}\left (a \right )                                                             (21)

\Rightarrow exp\left ( b \right ) = X \cdot exp(a)\cdot X^{-1}                                 (22)这不就是公式(12)么

\Rightarrow exp\left ( b \right )\cdot X = X \cdot exp(a)                                   (23)公式(11)推出来了

因此,伴随是切向量通过群元素变换的雅可比矩阵

c \in \mathbb{R}^{k}                                                                       (24)

X \in G                                                                       (25) 

f:G\times \mathbb{R}^{k}\rightarrow \mathbb{R}^{k}                                                      (26)

f\left ( X, c \right ) = alg^{-1}\left ( log\left ( X\cdot exp\left ( alg\left ( c \right ) \right ) \cdot X^{-1} \right ) \right )    (27)

\frac{\partial f }{\partial c}|_{c=0}=Adj_{X}                                                           (28)雅克比矩阵

2.6、在\mathbb{R}^{n \times n}群的作用

给定在\mathbb{R}^{n \times n}G群矩阵表示,乘法对向量空间\mathbb{R}^{n}(也就是投影空间\mathbb{P}^{n-1})有一个自然作用:

X \in G                                                                             (29)

X:\mathbb{R}^{n}\rightarrow \mathbb{R}^{n}                                                                  (30)

X\left ( \mathbf{v} \right ) = X \cdot \mathbf{v}                                                                 (31)

对于下面描述的群,这个由矩阵乘法产生的群作用,在二维或三维欧式空间或投影空间中的点或线上产生一个变换。例如,SE\left ( 2 \right )元素在\mathbb{P}^{2}(二维平面在\mathbb{R}^{3}中为齐次坐标)上的群作用是平面坐标的旋转和平移。

该恒等式周围的群微分作用的雅可比矩阵,可以用代数的k生成器简单地计算:

p \in \mathbb{R}^{n}                                                                               (32) group action

c \in \mathbb{R}^{k}                                                                                (33) 切向量

f\left ( \mathbf{c},p \right ) \equiv exp\left ( alg\left ( \mathbf{c} \right ) \right ) \cdot \mathbf{p}                                                (34)不明白为什么要先转成代数后转回李群

\frac{\partial f}{\partial \mathbf{c}}|_{c=0}=\left ( G_{1} \cdot \mathbf{p}|G_{2} \cdot \mathbf{p}|\cdots G_{k} \cdot \mathbf{p} \right ) \in \mathbb{R}^{n \times k}                    (35)群微分的雅克比矩阵可以由代数的k生成器

3、SO\left ( 2 \right ) 

3.1、描述

SO\left ( 2 \right )在2D平面上的旋转群,它只有一个自由度:旋转角度。群是可交换的。逆由转置给出:

X \in SO\left ( 2 \right ) \subset \mathbb{R}^{2 \times 2}                                                            (36) 2维旋转矩阵

X^{-1}=X^{T}                                                                           (37)

3.2、 李代数(Lie Algebra)

李代数\mathfrak{so}\left ( 2 \right )由一个反对称元素生成,对应的微分旋转:

G_{1}=\bigl(\begin{smallmatrix} 0 & -1 \\ 1 & 0 \end{smallmatrix}\bigr)                                                                           (38) 二维旋转群的generated

3.3、 指数映射(exponential map)

从李代数\mathfrak{so}\left ( 2 \right )到李群SO\left ( 2 \right )的指数映射是简单的2D旋转:

exp\left ( alg\left ( \theta \right ) \right ) = exp \bigl(\begin{smallmatrix} 0 & -\theta \\ \theta & 0 \end{smallmatrix}\bigr) = \bigl(\begin{smallmatrix} cos\theta & -sin\theta \\ sin\theta & cos\theta \end{smallmatrix}\bigr)                           (39)李代数到李群的指数映射不就是旋转矩阵么

对数是由SO\left ( 2 \right )的一个元素简单地计算出来的

3.4、伴随表示

那么SO\left ( 2 \right )的伴随表示是平凡的:

X = \bigl(\begin{smallmatrix} a & -b\\ b & a \end{smallmatrix}\bigr) \in SO\left ( 2 \right ), a^{2} + b^{2} = 1                                     (40)不清楚是怎么来的,2D平面上的旋转群

Adj_{X}\left ( alg\left ( \theta \right ) \right ) = X \cdot alg\left ( \theta \right ) \cdot X^{-1}                                       (41)

                          =\bigl(\begin{smallmatrix} 0 & -\theta\\ \theta & 0 \end{smallmatrix}\bigr)                                                       (42)直接计算

                          =alg\left ( \theta \right )                                                       (43) 可以通过公式(39)得出

           \Rightarrow Adj_{X} = \mathbf{I}                                                                (44)

4、SE\left ( 2 \right ) 

4.1、描述

SE\left ( 2 \right )是在2D平面的刚体变换群,半直积SO\left ( 2 \right ) \bowtie \mathbb{R}^{2}(符号不对,半直积符号打不出来,凑合着用),它有三个自由度:两个用于平移,一个用于旋转。子组包含SO\left ( 2 \right )

\mathbf{R} \in SO\left ( 2 \right )                                                                              (45)

t \in \mathbb{R}^{2}                                                                                        (46)

X=\bigl(\begin{smallmatrix} R&t \\ 0& 1 \end{smallmatrix}\bigr) \in SE\left ( 2 \right ) \subset\mathbb{R}^{3\times 3}                                                   (47)

X^{-1} =\bigl(\begin{smallmatrix} R^{T} & -R^{T}t\\ 0 & 1 \end{smallmatrix}\bigr)                                                                      (48)

4.2 李代数(Lie Algebra)

李代数\mathfrak{se}\left ( 2 \right )有三个生成器(generators):

G_{1} =\bigl(\begin{smallmatrix} 0 & 0 & 1 \\ 0 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)G_{2} =\bigl(\begin{smallmatrix} 0 & 0 & 0 \\ 0 & 0 & 1\\ 0 & 0 & 0 \end{smallmatrix}\bigr)G_{3} =\bigl(\begin{smallmatrix} 0 & -1 & 0 \\ 1 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)                             (49)

4.3 指数映射(Exponential Map)

\mathfrak{se}\left ( 2 \right )SE\left ( 2 \right )的指数映射是一个闭型:

v =\bigl(\begin{smallmatrix} x\\ y\\ \theta \end{smallmatrix}\bigr) \in \mathbb{R}^{3}                                                                                (50) 三个自由度,两个平移,一个旋转

R\equiv \bigl(\begin{smallmatrix} cos\theta & -sin\theta\\ sin\theta & cos\theta \end{smallmatrix}\bigr)                                                                             (51) 旋转矩阵

V = \bigl(\begin{smallmatrix} \frac{sin\theta}{\theta} & -\frac{1-cos\theta}{\theta} \\ \frac{1-cos\theta}{\theta} & \frac{sin\theta}{\theta} \end{smallmatrix}\bigr)                                                                      (52)  

exp\left ( alg\left ( v \right ) \right ) = exp\bigl(\begin{smallmatrix} 0 & -\theta & x\\ \theta & 0 & y\\ 0 & 0 & 0 \end{smallmatrix}\bigr)=\bigl(\begin{smallmatrix} R & V \cdot\binom{x}{y} \\ 0 & 1 \end{smallmatrix}\bigr)                                      (53)分块运算

\theta很小时,V的元素用泰勒级数计算(见第11节)。

4.4 伴随表示(Adjoint Representation)

X = \bigl(\begin{smallmatrix} R & t \\ 0 & 1 \end{smallmatrix}\bigr) \in SE\left ( 2 \right )                                                                        (54)

Adj_{X} = \bigl(\begin{smallmatrix} R & \binom{t_{1}}{-t_{0}}\\ 0 & 1 \end{smallmatrix}\bigr)                                                                              (55)

5、Sim\left ( 2 \right ) 

5.1、描述

Sim\left ( 2 \right )是二维平面上保持方向的相似性变换的组,即半直积SE\left ( 2 \right ) \bowtie \mathbb{R}^{*}。它有四个自由度:两个用于平移,一个用于旋转,还有一个用于缩放。子组包括SE\left ( 2 \right )\mathbb{R}^{*}

X=\bigl(\begin{smallmatrix} R & t\\ 0 & s^{-1} \end{smallmatrix}\bigr) \in Sim\left ( 2 \right ) \subset \mathbb{R}^{3\times3}                                                       (56)

X^{-1} = \bigl(\begin{smallmatrix} R^{T} & -sR^{T}t \\ 0 & s \end{smallmatrix}\bigr)                                                                              (57)

5.2、李代数(Lie Algebra)

李代数\mathfrak{sim}\left ( 2 \right )有4个生成器generators:

G_{1} =\bigl(\begin{smallmatrix} 0 & 0 & 1 \\ 0 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)G_{2} =\bigl(\begin{smallmatrix} 0 & 0 & 0 \\ 0 & 0 & 1\\ 0 & 0 & 0 \end{smallmatrix}\bigr)G_{3} =\bigl(\begin{smallmatrix} 0 & -1 & 0 \\ 1 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)  、G_{4} =\bigl(\begin{smallmatrix} 0 & 0 & 0 \\ 0 & 0 & 0\\ 0 & 0 & -1\end{smallmatrix}\bigr)        (58) 放缩这个不太明白估计和s^{-1}有关

5.3 指数映射(Exponential Map)

从李代数\mathfrak{sim}\left ( 2 \right )到群Sim\left ( 2 \right )的指数映射的闭型:

v =\bigl(\begin{smallmatrix} x\\ y\\ \theta\\ \lambda \end{smallmatrix}\bigr) \in \mathbb{R}^{4}                                                                                         (59)  两个平移、一个旋转、一个放缩

R\equiv \bigl(\begin{smallmatrix} cos\theta & -sin\theta\\ sin\theta & cos\theta \end{smallmatrix}\bigr)                                                                                      (60) 旋转矩阵

A\equiv \frac{sin\theta}{\theta}                                                                                                  (61) 

B \equiv \frac{1-cos\theta}{\theta}                                                                                            (62) 

C \equiv \frac{\theta-sin\theta}{\theta^{3}}                                                                                            (63) 

\alpha \equiv \frac{\lambda^{2}}{\lambda^{2}+\theta^{2}}                                                                                               (64) 

s \equiv e^{\lambda}                                                                                                         

X \equiv \alpha \left ( \frac{1-s^{-1}}{\lambda} \right )+\left(1-\alpha \right )\left(A- \lambda B \right )                                                  (65) 

Y \equiv \alpha \left ( \frac{s^{-1} -1 + \lambda}{\lambda^{2}} \right )+\left(1-\alpha \right )\left(B- \lambda C \right )                                            (66) 

V = \bigl(\begin{smallmatrix} X & -\theta Y \\ \theta Y & X \end{smallmatrix}\bigr)                                                                                              (67)

exp\left ( alg\left ( v \right ) \right ) = exp\bigl(\begin{smallmatrix} 0 & -\theta & x\\ \theta & 0 & y\\ 0 & 0 & -\lambda \end{smallmatrix}\bigr)=\bigl(\begin{smallmatrix} R & V \cdot\binom{x}{y} \\ 0 & s^{-1} \end{smallmatrix}\bigr)                                                (68)

\theta\lambda较小时,用泰勒级数计算V的元素(见第11节)

5.4 伴随表示(Adjoint Representation)

X = \bigl(\begin{smallmatrix} R & t \\ 0 & 1 \end{smallmatrix}\bigr) \in Sim\left ( 2 \right )                                                                                  (69)

Adj_{X} =\bigl(\begin{smallmatrix} sR & & s \cdot\bigl(\begin{smallmatrix} t_{1} & -t_{0}\\ -t_{0} & -t_{1} \end{smallmatrix}\bigr)& \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ & & & \end{smallmatrix}\bigr)                                                                          (70)

6、Aff\left ( 2 \right ) 

6.1、描述

Aff\left ( 2 \right )是二维平面上保持方向的仿射变换的组。它有6个自由度:两个用于平移,一个用于旋转,一个用于缩放,一个用于拉伸,一个用于剪切。子组包括Sim\left ( 2 \right )\mathbb{R}^{*}

X=\bigl(\begin{smallmatrix} A & t\\ 0 &1 \end{smallmatrix}\bigr) \in Aff\left ( 2 \right ) \subset \mathbb{R}^{3\times3}                                                                      (71)

X^{-1} = \bigl(\begin{smallmatrix} A^{-1} & -A^{-1}t \\ 0 & 1 \end{smallmatrix}\bigr)                                                                                        (72)

6.2、李代数(Lie Algebra)

李代数\mathfrak{aff}\left ( 2 \right )有6个生成器generators:

G_{1} =\bigl(\begin{smallmatrix} 0 & 0 & 1 \\ 0 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)G_{2} =\bigl(\begin{smallmatrix} 0 & 0 & 0 \\ 0 & 0 & 1\\ 0 & 0 & 0 \end{smallmatrix}\bigr)G_{3} =\bigl(\begin{smallmatrix} 0 & -1 & 0 \\ 1 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)                                                  (73) 两个平移、旋转

G_{4} =\bigl(\begin{smallmatrix} 1 & 0 & 0 \\ 0 & 1 & 0\\ 0 & 0 & 0\end{smallmatrix}\bigr)G_{5} =\bigl(\begin{smallmatrix} 1 & 0 & 0 \\ 0 & -1 & 0\\ 0 & 0 & 0\end{smallmatrix}\bigr)G_{6} =\bigl(\begin{smallmatrix} 0 & 1 & 0 \\ 1 & 0 & 0\\ 0 & 0 & 0\end{smallmatrix}\bigr)                                                  (74) 与\mathfrak{sim}\left ( 2 \right )差异蛮大的,一个放缩、一个拉伸、一个剪切

6.3 指数映射(Exponential Map)

从李代数\mathfrak{aff}\left ( 2 \right )到群Aff\left ( 2 \right )不是闭型,它可以用任何一般的矩阵指数程序来计算。对数也是如此。

6.4 伴随表示(Adjoint Representation)

X = \bigl(\begin{smallmatrix} A & t \\ 0 & 1 \end{smallmatrix}\bigr) =\begin{pmatrix} a & b & x\\ c & d & y\\ 0 & 0 & 1 \end{pmatrix} \in Aff\left ( 2 \right )                                                                  (75)

E\equiv \begin{pmatrix} 1 & 0 & 0 & 0 & 0 & 0\\ 0& 1& 0& 0& 0& 0\\ 0 & 0 & 0 & \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{2}} & 0\\0 & 0& -\frac{1}{\sqrt{2}}& 0& 0& \frac{1}{\sqrt{2}}\\ 0& 0& \frac{1}{\sqrt{2}}& 0& 0& \frac{1}{\sqrt{2}}\\ 0& 0& 0& \frac{1}{\sqrt{2}}& -\frac{1}{\sqrt{2}}& 0\end{pmatrix} \in \mathbb{R}^{6\times 6}                                                        (76)

f\equiv \frac{1}{ad-bc}                                                                                                               (77)

C\equiv \begin{pmatrix} a \cdot A^{-T} & b \cdot A^{-T}\\ c \cdot A^{-T} & d \cdot A^{-T} \end{pmatrix} \in \mathbb{R}^{4 \times 4}                                                                             (78)

     \equiv f\begin{pmatrix} ad & -ac & bd & -bc\\ -ab & a^{2} & -b^{2} & ab\\ cd & -c^{2} & d^{2} & -cd\\ -bc & ac & -bd & ad \end{pmatrix}                                                                              (79)

T\equiv \bigl(\begin{smallmatrix} x & y & 0 & 0\\ 0 & 0 & x & y \end{smallmatrix}\bigr) \in \mathbb{R}^{2\times 4}                                                                                                   (80)

Adj_{X} = E^{T}\begin{pmatrix} A & -T \cdot C\\ 0 & C \end{pmatrix}E                                                                                       (81)

明确的写出积:

Adj_{X}=\begin{pmatrix} a& b & fy\left(a^{2}+b^{2} \right ) -fx\left(ac+bd \right ) & -x & fy\left(2ab \right )-fx\left(ad+bc \right ) & fx\left(ac-bd \right )-fy\left(a^{2}-b^{2}) \right )\\ c& d & fy\left(ac+bd \right )-fx\left(c^{2}+d^{2} \right ) & -y & fy \left(ab+cd \right )-fx\left(2cd \right ) & fx\left(c^{2}-d^{2} \right )-fy\left(ac-bd \right )\\ 0& 0 & \frac{f}{2}\left(a^{2}+b^{2}+c^{2}+d^{2} \right ) & 0 & f\left(ab+cd \right ) & \frac{f}{2}\left(-a^{2}+b^{2}-c^{2}+d^{2} \right )\\ 0& 0 & 0 &1 & 0 &0 \\ 0& 0 & f\left(ac+bd \right ) & 0 & f\left(ad+bc \right ) & f\left(bd-ac \right )\\ 0& 0 & \frac{f}{2}\left(-a^{2}-b^{2}+c^{2}+d^{2} \right ) & 0 & f \left(cd -ab \right) & \frac{f}{2}\left(a^{2}-b^{2}-c^{2}+d^{2} \right ) \end{pmatrix}  (82)

7、SL\left ( 3 \right ) 

7.1、描述

SL\left ( 3 \right )是单位行列式线性变换群,二维投影平面上的单应变换。它有8个自由度:两个用于平移,一个用于旋转,一个用于缩放,一个用于拉伸,一个用于剪切,两个投影变换。子组包括Aff\left ( 2 \right )SO\left ( 3 \right )

H \in SL\left ( 3 \right ) \subset \mathbb{R}^{3\times3}                                                                                       (83)

det\left ( H \right ) =1                                                                                                    (84)

7.2、李代数(Lie Algebra)

李代数\mathfrak{sl}\left ( 3 \right )有8个生成器generators,所有的迹都是0:

G_{1} =\bigl(\begin{smallmatrix} 0 & 0 & 1 \\ 0 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)G_{2} =\bigl(\begin{smallmatrix} 0 & 0 & 0 \\ 0 & 0 & 1\\ 0 & 0 & 0 \end{smallmatrix}\bigr)G_{3} =\bigl(\begin{smallmatrix} 0 & -1 & 0 \\ 1 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)                                                  (85) 两个平移、旋转

G_{4} =\bigl(\begin{smallmatrix} 1 & 0 & 0 \\ 0 & 1 & 0\\ 0 & 0 & -2\end{smallmatrix}\bigr)G_{5} =\bigl(\begin{smallmatrix} 1 & 0 & 0 \\ 0 & -1 & 0\\ 0 & 0 & 0\end{smallmatrix}\bigr)G_{6} =\bigl(\begin{smallmatrix} 0 & 1 & 0 \\ 1 & 0 & 0\\ 0 & 0 & 0\end{smallmatrix}\bigr)                                                (86) 一个放缩、一个拉伸、一个剪切

G_{7} =\bigl(\begin{smallmatrix} 0 & 0 & 0 \\ 0 & 0 & 0\\ 1 & 0 & 0\end{smallmatrix}\bigr)G_{8} =\bigl(\begin{smallmatrix} 0 & 0 & 0 \\ 0 & 0 & 0\\ 0 & 1 & 0\end{smallmatrix}\bigr)                                                                               (87)两个投影变换

7.3 指数映射(Exponential Map)

从李代数\mathfrak{sl}\left ( 3 \right )到群SL\left ( 3 \right )不是闭型,它可以用任何一般的矩阵指数程序来计算。对数也是如此。注意,任何无迹方阵的指数都是一个具有单位行列式的矩阵。

7.4 伴随表示(Adjoint Representation)

首先,我们将李代数\mathfrak{sl}\left ( 3 \right )元素写做3×3矩阵、9个元素向量,以行大数的顺序写入元素。因此,对h\in\mathfrak{sl}\left ( 3 \right )H\in SL\left ( 3 \right ),共轭H \cdot h \cdot H^{-1}表示为在元素h上的线性映射C_{H}。Pre-和post-分别应用alg和alg−1的矩阵表示,并给出了伴随表示。

\left [ alg \right ]\equiv \begin{pmatrix} 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\\ 0 & 0 & -1 & 0 & 0 & 1 & 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{pmatrix} \in \mathbb{R}^{9\times 8}                                                                  (88)

\left [ alg^{-1} \right ]\equiv \begin{pmatrix} 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{pmatrix} \in \mathbb{R}^{8 \times 9}                                                        (89)

C_{H}\equiv \begin{pmatrix} 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{pmatrix}                                                                               (90)

Adj_{H} = [alg^{-1}] \cdot C_{H} \cdot [alg]                                                                                                       (91)

8、SO\left ( 3 \right ) 

8.1、描述

SO\left ( 3 \right )在三维空间中的旋转群,由单位行列式的3x3正交矩阵表示。它有3个自由度:每个可微分旋转轴各一个。逆由转置给出:

R \in SO\left ( 3 \right ) \subset \mathbb{R}^{3\times3}                                                                                                                      (92)

R^{-1} = R^{T}                                                                                                                                      (93)

det\left ( R \right ) =1                                                                                                                                     (94)

8.2、李代数(Lie Algebra)

李代数\mathfrak{so}\left ( 3 \right )是3x3的反对称矩阵,每个的微分旋转都有一个生成器generators:

G_{1} =\bigl(\begin{smallmatrix} 0 & 0 & 0 \\ 0 & 0 & -1\\ 0 & 1 & 0 \end{smallmatrix}\bigr)G_{2} =\bigl(\begin{smallmatrix} 0 & 0 & 1 \\ 0 & 0 & 0\\ -1 & 0 & 0 \end{smallmatrix}\bigr)G_{3} =\bigl(\begin{smallmatrix} 0 & -1 & 0 \\ 1 & 0 & 0\\ 0 & 0 & 0 \end{smallmatrix}\bigr)                                                                             (95) 3个平移

映射alg:\mathbb{R}^{3}\rightarrow \mathfrak{so}\left(3 \right )将3个向量发送到它们的斜矩阵:

w \equiv \begin{pmatrix} a\\ b\\ c \end{pmatrix} \in \mathbb{R}^{3}                                                                                                                                   (96) 

alg\left ( w \right ) =w_{X}、                                                                                                                                    (97) 

              =\bigl(\begin{smallmatrix} 0 & -c & b \\ c & 0 & -a\\ -b & a & 0\end{smallmatrix}\bigr)                                                                                                                            (98) 

8.3 指数映射(Exponential Map)

从李代数\mathfrak{so}\left ( 3 \right )到群SO\left ( 3 \right )是闭型(也称为罗德里格斯公式),切向量w可以解释为旋转的轴角表示:它的指数是绕w/\left \| w \right \|轴旋转的\left \| w \right \|弧度。

w \in \mathbb{R}^{3}                                                                                                                                                   (99) 

\theta \equiv \sqrt{w^{T}w}                                                                                                                                             (100) 

exp\left ( alg w \right )=exp\left(w_{X} \right )                                                                                                                          (101) 

                    =\mathbf{I}+w_{x}+\frac{1}{2!}w_{X}^{2}+\frac{1}{3!}w_{X}^{3}+\cdots                                                                                        (102) 

                    =\mathbf{I}+\left ( \frac{sin\theta}{\theta} \right )w_{x}+\left ( \frac{1-cos\theta}{\theta^{2}} \right )w_{X}^{2}                                                                                (103) 

式102中的高阶项由于w_{X}^{3} = -\theta^{2}w_{X}而收缩。当\theta很小时,R的系数用泰勒级数计算(见第11节)。

给定旋转矩阵R \in SO \left(3 \right ),先确定cos \theta = \frac{1}{2}\left(tr\left(R \right )-1 \right )即可计算出对数,再由对称差计算w(见公式103第二项)。

8.4 伴随表示(Adjoint Representation)

由于叉乘的性质,SO\left ( 3 \right )的伴随表示实际上与旋转矩阵的表示相同:

R \in SO\left(3 \right )                                                                                                                                                 (104)

a,b \in \mathbb{R}^{3}                                                                                                                                                      (105)

\left (R\cdot a_{X}\cdot R^{T} \right ) \cdot b = R \cdot \left(a \times R^{T} \cdot b \right )                                                                                                          (106)

                             = \left(R \cdot a \right )\times b                                                                                                                   (107)

                             = \left(R \cdot a \right )_{X}\cdot b                                                                                                                   (108)

    \Rightarrow R\cdot a_{X}\cdot R^{T} =\left(R \cdot a \right )_{X}                                                                                                                        (109)

                \Rightarrow Adj_{R}=R                                                                                                                                  (110)

9、SE\left ( 3 \right ) 

9.1、描述

SE\left (3 \right )是在3D平面的刚体变换群,半直积SO\left ( 3 \right ) \bowtie \mathbb{R}^{3}(符号不对,半直积符号打不出来,凑合着用),它有6个自由度:三个用于平移,三个用于旋转。子组包含SE\left ( 2 \right )SO\left ( 3 \right )

R \in SO\left ( 3 \right )                                                                                                                                                    (111)

t \in \mathbb{R}^{3}                                                                                                                                                             (112)

X=\begin{pmatrix} R & t\\ 0 & 1 \end{pmatrix} \in SE\left(3 \right ) \subset\mathbb{R}^{4 \times 4}                                                                                                                    (113)

X^{-1}=\begin{pmatrix} R & -R^{T}t\\ 0 & 1 \end{pmatrix}                                                                                                                                        (114)

9.2、李代数(Lie Algebra)

李代数\mathfrak{se}\left ( 3 \right )有6个生成器generators:

G_{1} =\begin{pmatrix} 0 & 0 & 0 & 1\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}G_{2} =\begin{pmatrix} 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 1\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}G_{3} =\begin{pmatrix} 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 1\\ 0 & 0 & 0 & 0 \end{pmatrix}                                                               (115) 3个平移

G_{4} =\begin{pmatrix} 0 & 0 & 0 & 0\\ 0 & 0 & 1 & 0\\ 0 & -1 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}G_{5} =\begin{pmatrix} 0 & 0 & -1 & 0\\ 0 & 0 & 0 & 0\\ 1 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}G_{6} =\begin{pmatrix} 0 & 1 & 0 & 0\\ -1 & 0 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}                                                       (116) 3个旋转

映射alg:\mathbb{R}^{3}\rightarrow \mathfrak{se}\left(3 \right ):

u,w \in \mathbb{R}^{3}                                                                                                                                                                (117) 

alg\begin{pmatrix} u\\ w \end{pmatrix}= \begin{pmatrix} w_{X} & u\\ 0 & 0 \end{pmatrix}                                                                                                                                            (118) 

9.3 指数映射(Exponential Map)

从李代数\mathfrak{se}\left ( 3 \right )到群SE\left ( 3 \right )是闭型:

u,w \in \mathbb{R}^{3}                                                                                                                                                                  (119) 

\theta \equiv \sqrt{w^{T}w}                                                                                                                                                               (120) 

exp\left ( alg \binom{u }{w}\right )=exp \begin{pmatrix} w_{x} & u\\ 0 & 0 \end{pmatrix}                                                                                                                           (121) 

                             =\mathbf{I}+\begin{pmatrix} w_{x} & u\\ 0 & 0 \end{pmatrix}+\frac{1}{2!}\begin{pmatrix} w_{X}^{2} & w_{X} u\\ 0 & 0 \end{pmatrix}+\frac{1}{3!}\begin{pmatrix} w_{X}^{2} & w_{X}^{2}u\\ 0 & 0 \end{pmatrix}+\cdots                                                (122) 

                              =\begin{pmatrix} exp \left( w_{X} \right ) & V\cdot u\\ 0 & 1 \end{pmatrix}                                                                                                                 (123) 

V\equiv \mathbf{I} +\left(\frac{1-cos\theta}{\theta^{2}} \right )w_{X}+\left(\frac{\theta-sin\theta}{\theta^{3}} \right )w_{X}^{2}                                                                                                          (124)

注意,旋转块是根据公式103计算的。当\theta很小时,V的系数用泰勒级数计算(见第11节)。

V的逆也可以写成封闭形式:

V^{-1}\equiv \mathbf{I} -\frac{1}{2}w_{X}+\frac{1}{\theta^{2}}\left ( 1- \frac{\theta sin\theta}{2\left(1-cos\theta \right )}\right )w_{X}^{2}                                                                                                       (125)

\begin{pmatrix} R & t\\ 0 & 1 \end{pmatrix}\in SE\left(3 \right )的对数可以通过首先计算w=alg^{-1}\left(log \left(R \right ) \right ),然后计算u=V^{-1}\cdot t

9.4 伴随表示(Adjoint Representation)

X = \begin{pmatrix} R & t\\ 0 & 1 \end{pmatrix} \in SE\left(3 \right )                                                                                                                                             (126)

Adj_{X} = \begin{pmatrix} R & t_{X}R\\ 0 & R \end{pmatrix} \in \mathbb{R}^ {6\times 6}                                                                                                                                       (127)

10、Sim\left ( 3 \right ) 

10.1、描述

Sim\left (3 \right )这是三维空间中的一组相似变换,半直积SE\left ( 3 \right ) \bowtie \mathbb{R}^{3}(符号不对,半直积符号打不出来,凑合着用),它有7个自由度:三个用于平移,三个用于旋转,一个放缩。子组包含Sim\left ( 2 \right )SE\left ( 3 \right )

R \in SO\left ( 3 \right )                                                                                                                                                                   (128)

t \in \mathbb{R}^{3}                                                                                                                                                                            (129)平移

s \in \mathbb{R}^{+}                                                                                                                                                                           (130)

X=\begin{pmatrix} R & t\\ 0 & s^{-1} \end{pmatrix} \in Sim\left(3 \right ) \subset\mathbb{R}^{4 \times 4}                                                                                                                             (131)

X^{-1}=\begin{pmatrix} R^{T} & -sR^{T}t\\ 0 & s \end{pmatrix}                                                                                                                                                   (132)

9.2、李代数(Lie Algebra)

李代数\mathfrak{se}\left ( 3 \right )有7个生成器generators:

G_{1} =\begin{pmatrix} 0 & 0 & 0 & 1\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}G_{2} =\begin{pmatrix} 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 1\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}G_{3} =\begin{pmatrix} 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 1\\ 0 & 0 & 0 & 0 \end{pmatrix}                                                                 (133) 3个平移

G_{4} =\begin{pmatrix} 0 & 0 & 0 & 0\\ 0 & 0 & 1 & 0\\ 0 & -1 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}G_{5} =\begin{pmatrix} 0 & 0 & -1 & 0\\ 0 & 0 & 0 & 0\\ 1 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}G_{6} =\begin{pmatrix} 0 & 1 & 0 & 0\\ -1 & 0 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 \end{pmatrix}                                                       (134) 3个旋转

G_{7} =\begin{pmatrix} 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0\\ 0 & 0 & 0 & -1 \end{pmatrix}                                                                                                                                          (135)  

10.3 指数映射(Exponential Map)

从李代数\mathfrak{sim}\left ( 3 \right )到群Sim\left ( 3 \right )是闭型:

v=\begin{pmatrix} u\\ w\\ \lambda \end{pmatrix} \in \mathbb{R}^{7}                                                                                                                                                       (136) 

\theta \equiv \sqrt{w^{T}w}                                                                                                                                                               (137) 

A\equiv \frac{sin\theta}{\theta}                                                                                                                                                                  (138) 

B\equiv \frac{1-cos\theta}{\theta^{2}}                                                                                                                                                            (139) 

C \equiv \frac{1-A}{\theta^{2}}                                                                                                                                                                 (140) 

D \equiv \frac{\frac{1}{2}-B}{\theta^{2}}                                                                                                                                                                (141) 

s^{-1} \equiv e^{-\lambda}                                                                                                                                                                    (142) 

\alpha \equiv \frac{\lambda^{2}}{\lambda^{2}+\theta^{2}}                                                                                                                                                                (143) 

\beta \equiv \frac{s^{-1}-1+\lambda}{\lambda^{2}}                                                                                                                                                          (144) 

\gamma \equiv \frac{\frac{1}{2}-\beta}{\lambda}​​​​​​​                                                                                                                                                                      (145) 

X\equiv \frac{1-s^{-1}}{\lambda}​​​​​​​                                                                                                                                                                   (146) 

Y\equiv \alpha \cdot \beta +\left(1-\alpha \right )\cdot \left(B-\lambda C \right )​​​​​​​                                                                                                                                   (147) 

Z\equiv \alpha \cdot \gamma +\left(1-\alpha \right )\cdot \left(C-\lambda D \right )​​​​​​​                                                                                                                                   (148) 

R\equiv \mathbf{I}+Aw_{X} +Bw_{X}^{2}​​​​​​​                                                                                                                                                     (149) 

V\equiv X\mathbf{I}+Yw_{X} +Zw_{X}^{2}​​​​​​​                                                                                                                                                  (150) 

exp\left ( alg\left ( v \right )\right )=exp \begin{pmatrix} w_{X} & u\\ 0 & -\lambda \end{pmatrix}=\begin{pmatrix} R & V \cdot u\\ 0 & s^{-1} \end{pmatrix}                                                                                                           (151) 

\theta​​​​​​​或\lambda很小时,RV的系数应用泰勒级数计算(见11节)。

注意,旋转块是根据公式103计算的。当\theta很小时,V的系数用泰勒级数计算(见第11节)。

10.4 伴随表示(Adjoint Representation)

X = \begin{pmatrix} R & t\\ 0 & s^{-1} \end{pmatrix} \in Sim\left(3 \right )                                                                                                                                             (152)

Adj_{X} = \begin{pmatrix} sR & st_{X}R & -st\\ 0 & R & 0\\ 0 & 0 & 1 \end{pmatrix} \in \mathbb{R}^ {7\times 7}​​​​​​​                                                                                                                              (153)

11 泰勒级数

这是上述方程中系数的泰勒级数,当参数接近于零时:

\frac{sin\theta}{\theta} = 1 - \frac{\theta^{2}}{6} + \frac{\theta^{4}}{120}-\frac{\theta^{6}}{5040}+O\left( \theta ^{8}\right)                                                                                                                          (154)

         \approx 1-\frac{\theta^{2}}{6}\left(1-\frac{\theta^{2}}{20} \left(1-\frac{\theta^{2}}{42} \right ) \right)                                                                                                                                 (155)

\frac{1-cos\theta}{\theta^{2}} = \frac{1}{2} - \frac{\theta^{2}}{24} + \frac{\theta^{4}}{720}-\frac{\theta^{6}}{40320}+O\left( \theta ^{8}\right)                                                                                                                  (156)

                 \approx \frac{1}{2} \left(1 -\frac{\theta^{2}}{12}\left(1-\frac{\theta^{2}}{30} \left(1-\frac{\theta^{2}}{56} \right ) \right) \right )                                                                                                                (157)

\frac{1-sin\theta}{\theta^{3}} = \frac{1}{6} - \frac{\theta^{2}}{120} + \frac{\theta^{4}}{5040}-\frac{\theta^{6}}{362880}+O\left( \theta ^{8}\right)                                                                                                            (158)

                 \approx \frac{1}{6} \left(1 -\frac{\theta^{2}}{20}\left(1-\frac{\theta^{2}}{42} \left(1-\frac{\theta^{2}}{72} \right ) \right) \right )                                                                                                                (159)

\frac{\frac{1}{2}-\frac{1-cos\theta}{\theta^{2}}}{\theta^{3}} = \frac{1}{24} - \frac{\theta^{2}}{720} + \frac{\theta^{4}}{40320}-\frac{\theta^{6}}{3628800}+O\left( \theta ^{8}\right)                                                                                                     (160)

                 \approx \frac{1}{24} \left(1 -\frac{\theta^{2}}{30}\left(1-\frac{\theta^{2}}{56} \left(1-\frac{\theta^{2}}{90} \right ) \right) \right )                                                                                                                (161)

\frac{1}{\theta^{2}}\left(1-\frac{\theta sin\theta}{2\left(1-cos\theta \right )} \right)= \frac{1}{12} - \frac{\theta^{2}}{720} + \frac{\theta^{4}}{30240}-\frac{\theta^{6}}{1209600}+O\left( \theta ^{8}\right)                                                                                (162)

                 \approx \frac{1}{12} \left(1 +\frac{\theta^{2}}{60}\left(1+\frac{\theta^{2}}{42} \left(1+\frac{\theta^{2}}{40} \right ) \right) \right )                                                                                                                (163)

\frac{1-e^{-\lambda}}{\lambda} = 1-\frac{\lambda}{2}+\frac{\lambda^{2}}{6}-\frac{\lambda^{3}}{24}+O\left(\lambda^{4} \right)                                                                                                                                (164)

               \approx 1-\frac{\lambda}{2}\left(1 - \frac{\lambda}{3} \left(1-\frac{\lambda}{4} \right )\right)                                                                                                                                   (165)

\frac{e^{-\lambda}-1+\lambda}{\lambda^{2}} = \frac{1}{2}-\frac{\lambda}{6}+\frac{\lambda^{2}}{24}-\frac{\lambda^{3}}{120}+O\left(\lambda^{4} \right)                                                                                                                       (166)

                      \approx\frac{1}{2} \left( 1-\frac{\lambda}{3}\left(1 - \frac{\lambda}{4} \left(1-\frac{\lambda}{5} \right )\right)\right )                                                                                                                   (167)

\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}+O\left(\lambda^{4} \right)                                                                                                                    (168)

                      \approx\frac{1}{6} \left( 1-\frac{\lambda}{4}\left(1 - \frac{\lambda}{5} \left(1-\frac{\lambda}{6} \right )\right)\right )                                                                                                                     (169)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值