SLAM中使用李群和李代数的直觉
Published:
提供对SLAM中李群和李代数应用的直观理解,解释为什么在处理旋转和位姿时需要使用这些数学工具。重点讨论李群的光滑流形性质,以及李代数如何帮助我们在线性空间中处理旋转的不确定性和优化问题。
为什么需要李群?
位姿(position & rotation)是SLAM中的核心概念。旋转可以用旋转矩阵SO(3)或四元数表示,位姿可以用变换矩阵SE(3)表示。这些都是群的概念:
群:一个集合,定义了单位元,以及一种复合操作,集合中的两个元素在经过复合操作之后仍然在集合中,并且每个元素都可以找到逆元。
李群的光滑性质
李群是光滑的流形,具有以下重要性质:
光滑表示这个群在几何结构上是平滑的,不存在凸起,因此处处都存在切平面,是”广义”可微分的。
这种光滑性使得我们可以在李群上进行微分运算,这对优化算法至关重要。
为什么需要李代数?
在状态估计中,我们需要表示不确定性。传统方法使用加性噪声模型,但旋转群不支持加法运算。李代数解决了这个问题:
- 李代数与线性空间同构,可以使用向量空间中的所有技巧
- 定义复合运算:$\hat{R} = R \circ \exp(\delta x)$
- 在线性空间中处理不确定性
实际应用
1. 优化问题中的参数化
- 避免约束优化
- 使用无约束优化算法
- 保证旋转矩阵的正交性
2. 不确定性传播
- 在李代数空间中定义协方差
- 通过指数映射传播到李群
- 支持高斯分布假设
3. 雅可比计算
- 位姿图优化中的线性化
- Bundle Adjustment中的导数计算
- 卡尔曼滤波的状态更新
