四元数与旋转——学习笔记(二)

5 篇文章 0 订阅
5 篇文章 4 订阅

联系方式:860122112@qq.com

四元数与旋转——学习笔记(一)
四元数与旋转——学习笔记(二)
四元数与旋转——学习笔记(三)

三、四元数旋转算子

四元数原本是表示四维空间 R4 的,而在对三维空间 R3 的向量 v=(xv,yv,zv) 进行运算时使用的是纯四元数,该四元数的实数部分为0。因此向量 v 的四元数表示为 xvi^+yvj^+zvk^ 0<xv,yv,zv>

定义单位四元数 q 对向量 v 作用的算子为
(10)

Lq(v)==qvq(q20q2)v+2(qv)q+2q0(q×v)

此算子有两个性质:

  1. 算子 Lq 不改变向量 v 的模长
    Lq(v)===qvq|q|v|q|v
  2. v 是沿着 q 的方向,则算子 Lq 不会改变 v 。证明,假设 v=kq ,则:
    qvq====q(kq)q(q20q2)kq+2(qkq)q+2q0(q×kq)k(q20+q2)qkq

根据这两个性质,可以把 Lq 想象成 v 绕着 q 旋转。 Lq 在三维空间 R3 是线性的,即对于给定的任意两个向量 v1,v2R3 ,任意两个实数 a1,a2R 有:

Lq(a1v1+a2v2)=a1Lq(v1)+a2Lq(v2)

定理1
对于给定的任意单位四元数
(11)

q=q0+q=cosθ2+u^sinθ2

和任意向量 vR3 ,算子
Lq(v)=qvq
等价于 v u^ 为轴旋转了 θ

证明:
给定一个向量 vR3 ,将它分解成 v=a+n ,其中 a 是方向沿着向量 q 的方向的分量,而 n 是与 q 垂直的分量。由前面的性质可知 a Lq 变换下保持不变,而 n 是绕 q 旋转了角度 θ 。因为 Lq 是线性的,实际上可以将 qvq 看成是 v 是绕 q 旋转了角度 θ
Lq 主要作用在与之垂直的分量 n 上,因此
(12)

Lq(n)====(q20q2)n+2(qn)q+2q0(q×n)(q20q2)n+2q0(q×n)(q20q2)n+2q0q(u^×n)(q20q2)n+2q0qn

其中 u^=q/q n=u^×n n n 的模长相等,即
n=n×u^=nu^sinπ2=n

根据定理1(11)给定的任意四元数 q ,有
Lq(n)==(cos2θ2sin2θ2)n+2cosθ2sinθ2ncosθn+sinθn

即结果向量是 n n n 构成的平面上旋转了 θ ,旋转轴垂直于该平面,如下图所示。
这里写图片描述

注意旋转了 2π+θ 和旋转了 θ 是一样的,即 Lq=(q)v(q)=qvq=Lq
将(11)带入(10)得到 v 绕轴 u^ 旋转 θ 后的向量
(13)

Lq(n)==(cos2θ2sin2θ2)v+2(u^sinθ2v)u^sinθ2+2cosθ2(u^sinθ2×v)cosθv+(1cosθ)(u^v)u^+sinθ(u^×v)

(10)可以重新写成
Lq(v)=((q20q2)I3×3+2qqT+2q0q×)v

其中 I3×3 是单位矩阵,且
q×=0q3q2q30q1q2q10

所以 v q 旋转的旋转矩阵可以定义为
R=(q20q2)I3×3+2qqT+2q0q×

定理2
对于给定的任意单位四元数

q=q0+q=cosθ2+u^sinθ2

和任意向量 vR3 ,算子
Lq(v)=qv(q)=qvq
等价于 v 不动,坐标系以 u^ 为轴旋转了 θ
或者等价于坐标系不动, v u^ 为轴旋转了 θ

四、四元数旋转算子序列

假设 p q 是两个单位四元数,向量 u 首先通过 Lp 得到向量 v v 又通过 Lq 得到向量 w ,这两次连续转换(旋转)可以写成:

w=====Lq(v)qvqq(pup)qqpu(qp)Lqp(u)

因为 p q 是两个单位四元数,所以 qp 也是单位四元数。 w u 先绕 p 旋转再绕 q 旋转得到,也可以看成绕四元数 qp 的向量旋转后得到。 注意,先使用旋转的四元数在右边。同理 u 不动,坐标系旋转时 Lq(Lp(u))=L(pq)(u) ,同时 注意 pq 的顺序和前面的相反。

参考文献
Yan-Bin Jia. Quaternion and Rotation


  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值