简单了解李群和李代数的相关概念以及典型应用

目录

前言

一、先从直观理解

[1. 为什么需要它们](#1. 为什么需要它们)

二、基础概念:群、李群、李代数

[1. 它是一个群](#1. 它是一个群)

[2. 它是光滑的](#2. 它是光滑的)

三、最常见的李群

[1. SO(3):三维旋转群](#1. SO(3):三维旋转群)

[2. SE(3):三维刚体变换群](#2. SE(3):三维刚体变换群)

四、李代数是什么

五、最常见的李代数

六、指数映射和对数映射

[1. 指数映射 exp](#1. 指数映射 exp)

[2. 对数映射 log](#2. 对数映射 log)

七、为什么不能直接用普通向量

[1. 旋转不是线性空间](#1. 旋转不是线性空间)

[2. 欧拉角不稳定](#2. 欧拉角不稳定)

[3. 旋转矩阵有约束](#3. 旋转矩阵有约束)

八、在实际中怎么用

[1. 姿态表示](#1. 姿态表示)

[2. 位姿更新](#2. 位姿更新)

[3. 误差计算](#3. 误差计算)

[4. 轨迹插值](#4. 轨迹插值)

九、在机器人中的典型应用

[1. 机械臂正逆运动学](#1. 机械臂正逆运动学)

[2. 手眼标定](#2. 手眼标定)

[3. SLAM](#3. SLAM)

[4. 视觉里程计](#4. 视觉里程计)

[5. 点云配准](#5. 点云配准)

[6. 目标跟踪与姿态估计](#6. 目标跟踪与姿态估计)


前言

李群和李代数,最常出现在机器人、视觉、SLAM、手眼标定、姿态优化里;可以把它们理解成:

  • 李群 :描述"刚体位姿、旋转"等有限量的空间,属于"真实可用的变换"
  • 李代数 :描述这些变换在"无穷小变化"下的线性化表示,便于计算和优化

一句话概括:李群负责表示姿态,李代数负责做计算。

一、先从直观理解

1. 为什么需要它们

在机器人里,我们经常处理这些量:

  • 旋转
  • 平移
  • 刚体位姿
  • 坐标系变换
  • 相机姿态

这些东西不是普通的向量加法能直接处理的。

比如旋转:

  • 你不能把两个旋转角直接简单相加,就当作最终旋转
  • 旋转矩阵虽然能表示旋转,但直接做优化时不方便
  • 欧拉角会有万向节锁问题,不稳定

所以就需要一套更适合几何变换的数学工具。

二、基础概念:群、李群、李代数

李群是"既是群,又是光滑流形"的数学对象。主要有两个核心点:

1. 它是一个群

也就是说它满足:

  • 可以做组合
  • 有单位元
  • 每个元素都有逆
  • 组合满足结合律

例如旋转矩阵 R

  • 两个旋转矩阵相乘还是旋转矩阵
  • 有单位旋转 I
  • 每个旋转都有逆矩阵

所以旋转矩阵构成一个群。

2. 它是光滑的

这表示你可以在它上面讨论:

  • 连续变化
  • 微分
  • 导数
  • 局部线性近似

这对优化非常重要。

三、最常见的李群

1. SO(3):三维旋转群

表示三维空间中的旋转矩阵:

它描述的是"只旋转、不平移"的姿态。在机器人和视觉里,它常用来表示:

  • 相机朝向
  • 物体朝向
  • 机械臂某一坐标系的旋转

2. SE(3):三维刚体变换群

表示"旋转 + 平移"的刚体位姿:

它描述的是完整的位姿变换。在实际中,手眼标定、机器人位姿、相机外参,最常见的就是 SE(3)

四、李代数是什么

李代数可以理解成李群在单位元附近的"切空间"或"局部线性近似";如果李群是"真实姿态空间",那么李代数就是"在这个空间附近做小变化的坐标"。

它最大的作用是:

  • 把复杂的非线性变换,变成更容易处理的线性形式
  • 方便求导、优化、插值、误差建模

五、最常见的李代数

六、指数映射和对数映射

这是李群和李代数之间最关键的桥梁。

1. 指数映射 exp

把李代数里的"小量"变成李群里的"真实变换"。

2. 对数映射 log

把李群里的真实变换,转回李代数中的参数。

七、为什么不能直接用普通向量

因为位姿不是普通欧式空间里的点。

1. 旋转不是线性空间

你不能把两个旋转矩阵相加后还得到一个合法旋转矩阵。

2. 欧拉角不稳定

欧拉角虽然直观,但:

  • 可能有万向节锁
  • 不同顺序表示不同旋转
  • 不适合优化

3. 旋转矩阵有约束

(1)旋转矩阵必须满足正交和行列式约束,直接优化会破坏约束。

(2)李代数的好处就是:在局部把问题变成 3 维或 6 维的无约束小量,再映射回合法的旋转/位姿。

八、在实际中怎么用

下面是最常见的实际流程。

1. 姿态表示

2. 位姿更新

3. 误差计算

4. 轨迹插值

九、在机器人中的典型应用

1. 机械臂正逆运动学

机械臂每个关节最终会组合成一个末端位姿;位姿的计算结果本质上就在 *SE(3)*上。

2. 手眼标定

手眼标定,里面就是大量的位姿变换:

  • 机器人末端位姿
  • 标定板位姿
  • 相机位姿

这些都用 *SE(3)*表示,求解时经常借助李群/李代数的形式组织。

3. SLAM

SLAM 里相机在连续运动,状态量通常是:

  • 相机位姿
  • 地图点
  • 位姿图

位姿图优化几乎就是李群优化的经典应用。

4. 视觉里程计

从两帧图像估计相机运动,本质就是求一个 *SE(3)*变换。

5. 点云配准

ICP 配准中,点云之间的刚体变换也是 *SE(3)*问题。

6. 目标跟踪与姿态估计

只要涉及:

  • 物体旋转
  • 物体平移
  • 相机外参
  • 机器人坐标系变换

就离不开李群和李代数。

相关推荐
ethantan11 小时前
一篇讲解AI Agent 组成:像人一样思考的智能体
人工智能·后端·程序员
Cosolar13 小时前
vLLM 生产级部署完全指南
人工智能·后端·架构
CodePlayer竟然被占用了13 小时前
被美国政府封杀18天,Claude Fable 5 回来了——但代价是什么?
人工智能
IT_陈寒14 小时前
垃圾回收器选错了,我的Java服务内存炸了
前端·人工智能·后端
smartpi14 小时前
SmartPi GPIO 脉冲与回复语执行时序指南
人工智能
阿里云大数据AI技术15 小时前
PAI支持一键部署GLM-5.2,Coding能力比肩Claude Opus 4.8
人工智能
吾鳴15 小时前
腾讯版贾维斯(Marvis),用过就回不去了
人工智能
黄啊码15 小时前
【黄啊码】都是循环,workflow 和 Loop Engineering 有何不同?
人工智能
网易云信15 小时前
9.9 元领 3 亿 Token,这个夏天实现 AI 自由!
人工智能·aigc·产品
网易云信15 小时前
全框架覆盖!网易智企IM鸿蒙生态适配再进一步
人工智能·aigc·harmonyos