旋转向量,旋转矩阵,四元数,欧拉角之间的转换公式
·
目录
一、旋转向量 <——>旋转矩阵(指数 / 对数映射,罗德里格斯)
符号约定
Ⅰ 欧拉角:

Ⅱ 旋转向量:

Ⅲ 旋转矩阵:

Ⅳ 单位四元数:

一、旋转向量 <——>旋转矩阵(指数 / 对数映射,罗德里格斯)
1. 旋转向量 → 旋转矩阵

a∧是向量反对称映射:

2. 旋转矩阵 → 旋转向量

小角度近似:θ≈0 时直接取反对称矩阵缩放。
二、旋转向量 <——> 四元数
1. 旋转向量 → 单位四元数

2. 四元数 → 旋转向量

三、旋转矩阵 <——> 四元数
1. 四元数 → 旋转矩阵

2. 旋转矩阵 → 四元数

若t过小,换对角元最大分量计算避免除零。
四、旋转矩阵 <——> 欧拉角(ZYX 顺序,飞行器常用)
1. 欧拉角 → 旋转矩阵
Ⅰ 单轴基础旋转矩阵

Ⅱ ZYX 组合总公式(先滚转→再俯仰→最后偏航,矩阵右乘)
![]()
Ⅲ 完整展开 3×3 总矩阵

2. 旋转矩阵 → ZYX 欧拉角

五、四元数 <——> 欧拉角
1. 四元数 → ZYX 欧拉角

2. ZYX 欧拉角 → 四元数

转换总流程图(方便记忆)

工程选型提醒
- 旋转向量:优化求导、李群扰动模型专用;
- 旋转矩阵:坐标变换、矩阵运算直观,9 个参数冗余;
- 四元数:无万向锁、仅 4 参数,IMU 姿态解算首选;
- 欧拉角:仅人机交互读取,算法内部尽量不用,存在万向锁奇点。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)