运动规划与配置空间详解
1. 四元数与旋转表示
在运动规划中,四元数是表示旋转的重要工具。四元数 -h 与 h 代表相同的旋转,这意味着从单位四元数集合到特殊正交群 SO(3) 的映射是二对一的。为了解决这个问题,可以使用标识技巧。
单位四元数集合与三维球面 S³ 同胚,因为其满足约束条件 a² + b² + c² + d² = 1。通过声明 h ∼ -h(对于所有单位四元数),可以将 S³ 的对映点进行标识,从而得到 SO(3) 与实射影空间 RP³ 同构,即 SO(3) ∼= RP³。
为了强制旋转表示的唯一性,可以要求停留在 S³ 的“上半部分”。具体规则如下:
- 要求 a ≥ 0,同时要正确处理 a = 0 的边界情况。
- 若 a = 0,则要求 b ≥ 0。
- 若 a = b = 0,则要求 c ≥ 0。
- 若 a = b = c = 0,则仅允许 d = 1。
在处理路径穿越 S³ 赤道的情况时,需要将其映射到“北半球”的适当位置,在触及赤道的瞬间,必须移动到对映点。
2. 四元数乘法的应用
旋转的表示可以归结为在 S³ 上选择点,并考虑到对映点表示 SO(3) 中的相同元素。单位四元数群与 SO(3) 同构,这意味着可以使用四元数乘法代替矩阵乘法来组合一系列旋转,因为四元数乘法所需的运算更少。
对于世界中的点 (x, y, z) ∈ R³,可以直接使用四元数算术进行变换。对于任意四元数 h = a + bi + cj + dk,其共轭为 h = a - bi - cj - dk。对于点 (x, y, z),令 p = 0 +
超级会员免费看
订阅专栏 解锁全文
306

被折叠的 条评论
为什么被折叠?



