李群与李代数

本文为个人笔记,查看原文请关注公众号:计算机视觉life

为什么需要李代数

假如某个时刻相机的位姿是T,它观察到一个在世界坐标系中的空间点p,并在相机上产生了一个观测数据z,那么
z = Tp + noise
noise 是观测噪声。那么观测误差是
e = z - Tp
我们的目的是误差最小。假如我们有N个这样的三维点p和观测值z,那么我们的目标就是寻找一个最佳的位姿T,使得整体误差最小化,即
\min_{T}J(T) = \sum_{t=1}^{N}{||z_i - Tp_i||}^2_2
求解此问题即对求目标函数J对于变换矩阵T的导数
T所在的SE(3)空间,任意两个变换矩阵相加后并不是一个变换矩阵,所以SE(3)对加法计算并不封闭,它是有约束的。我们把SE(3)空间的T映射为se(3)se(3)称为李代数。se(3)由向量组成,因此李代数对加法封闭。我们可以通过对李代数求导间接对变换矩阵求导。

李群

群(group):群表示一个拥有满足封闭性、满足结合律、有单位元(幺元)、有逆元的二元运算的代数结构。即:一种几何加上一种运算的代数结构。
例如:旋转矩阵乘以旋转矩阵仍然是旋转矩阵,因此旋转矩阵和乘法构成了旋转矩阵群

  1. 旋转矩阵本身具有约束 R^TR = I, det(R) = 1
    两个旋转矩阵相加的结果不满足上述要求,因此旋转矩阵和加法不能构成群。
  2. 旋转矩阵有结合率:R_1 * R_2 = R_2 * R_1
    幺元是单位矩阵I。
  3. SLAM常用的两个群:特殊正交群SO(3)和特殊欧式群SE(3),即旋转矩阵群和变换矩阵群,3代表是三维的。注意:SE(3)是4×4的矩阵
  4. 李群的定义是指连续光滑的群,比如特殊正交群SO(3)和特殊欧式群SE(3)

李群和李代数的关系

结论:李代数对应李群的正切空间,它描述了李群的局部导数

  1. 矩阵的微分是一个反对称(也叫斜对称)矩阵左乘它本身。
  2. 对于某个时刻的R(t),存在一个三维向量φ=(φ_1,φ_2,φ_3)(李代数空间),用来描述Rt时刻的局部导数
    {\dot {\bf R}}(t) = \phi^{\wedge}{\bf R} = \left[ \begin{matrix} 0 & -\phi_3 & \phi_2 \\ \phi_3 & 0 & -\phi_1 \\ -\phi_2 & \phi_1 & 0 \\ \end{matrix} \right] {\bf R}(t)

反对称矩阵(skew symmetric matrix)

反对称矩阵,有些地方也称为斜对称矩阵。定义:如果一个3×3的矩阵A满足下式:A^T = -A
那么A就是反对称矩阵.
特点:根据反对称矩阵的性质,反对称矩阵A转置后对角线元素a_{ii}位置不变,所以a_{ii} = -a_{ii},得a_{ii} = 0。非对角线元素a_{ij} = -a_{ji},所以使用一个元素及其负数可以表示矩阵中 a_{ij}a_{ji} 这两个元素,所以矩阵A中非对角线元素可以用三个元素表示。也就是说反对称矩阵A只有3个自由度。因此,我们可以把反对称矩阵和向量建立对应关系:
假设我们有一个反对称矩阵A,定义如下
{\bf A} = \left[ \begin{matrix} 0 & -a_3 & a_2 \\ a_3 & 0 & -a_1 \\ -a_2 & a_1 & 0 \\ \end{matrix} \right]
定义一个对应的三维向量:
{\bf a} = [a_1, a_2, a_3]
我们用上三角符号表示向量\bf a和三维矩阵\bf A的对应关系:
{\bf a^{\wedge}}={\bf A}

指数映射

在原点处t_0 = 0,假设{\bf R}(t_0) = {\bf I}t_0附近t处,{\bf R}(t) = {\bf R}(t_0) + {\bf \dot{R}}(t_0)(t - t_0){\bf \dot{R}}(t) = {\bf \phi^{\wedge}R}(t)可得,{\bf R}(t) = {\bf I} +{\bf \phi}(t_0)^{\wedge}(t)t_0附近,设\bf \phi为常数{\bf \phi}(t_0) = {\bf \phi}_0{\bf \dot{R}(t)} = {\bf \phi}(t_0)^{\wedge}{\bf R}(t) = {\bf \phi}_0^{\wedge}{\bf R}(t) 因为{\bf R}(0) = {\bf I},所以{\bf R}(t) =exp(\phi_0^{\wedge}t)

李代数so(3)是三维向量\phi的集合,每个向量\phi_i的反对称矩阵都可以表达李群SO(3)上旋转矩阵R的导数,而R\phi是一个指数映射关系。也就是说,李群空间的任意一个旋转矩阵R都可以用李代数空间的一个向量的反对称矩阵的指数来近似。

求解exp(\phi^{\wedge})需要用到指数e的泰勒展开式\bf e^x = 1 + x + \frac{1}{2!}x^2 + \frac{1}{3!}x^3 + \frac{1}{4!}x^4 + \frac{1}{5!}x^5 + \frac{1}{6!}x^6 + \cdots
结论:罗德里格斯公式(\bf a是长度为1的方向向量) \bf exp(\theta a) = cos\theta I + (1 - cos\theta)aa^T + sin\theta a^a
罗德里格斯公式是表示从旋转向量到旋转矩阵的转换过程。
\bf so(3)的李代数空间就是由旋转向量组成的空间,其物理意义是旋转向量。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容