0
点赞
收藏
分享

微信扫一扫

四元数求导

Greatiga 2022-04-27 阅读 66
人工智能

https://ug98gs7tbw.feishu.cn/docs/doccnXl1Z5Xc1MFUohDJ0Umwpfg#

四元数求导(四元数/时间)

  1. 四元数关于时间求导的推导 本质:
    求导的定义是函数值的微增量关于自变量的微增量的极限。表示旋转的单位四元数作差后,其不再是单位四元数,也就不是旋转四元数了。单位四元数作差后,得到是被减四元数所在空间的切空间,得到的增量是切空间的微增量,因为是旋转,所以当取极限的时候,切空间的微增量就是函数的微增量,也即四元数对应的导数。
  2. 方式1
    假设任何一个旋转,一定可以写成绕一个轴旋转若干角度的形式。则四元数可以写作
    q=[cos(θ2),nsin(θ2)]q = [cos(\frac{\theta}{2}), \overrightarrow n sin(\frac{\theta}{2})]
    其中 θ\theta是旋转角度, ω\omega是旋转轴。我们假设 $ \overrightarrow n $是关于时间的函数,则四元数可以写成
    q(t)=[cos(wt2),wwsin(wt2)].............................................(0)q(t) = [cos(\frac{wt}{2}), \frac{ \overrightarrow w}{w}sin(\frac{wt}{2})]............................................. (0)
    为了书写方便,不带箭头为相应向量的模长。因为瞬时旋转中,ω\omega的旋转轴和大小我们认为是不变的,则
    q(t)=[w2sin(wt2),ww.w2cos(wt2)]q'(t) = [ -\frac{ w}{2}sin(\frac{wt}{2}), \frac{ \overrightarrow w}{w}.\frac{ w}{2}cos(\frac{wt}{2})]
    但常见四元数对时间的导数形式不一样,稍微调整一下:
    q(t)=[w2sin(wt2),ww.w2cos(wt2)].............................................(1)q'(t) = [ -\frac{ w}{2}sin(\frac{wt}{2}), \frac{ \overrightarrow w}{w}.\frac{ w}{2}cos(\frac{wt}{2})] ............................................. (1)
    到此,其实四元数关于时间的导数就已经求解完毕。
    设 两个四元数分别为q1=[a1,v1],q2=[a2,v2]..............................(2)q_1 = [a_1,\overrightarrow v_1],q_2 = [a_2,\overrightarrow v_2].............................. (2)
    可得四元数乘法:
    q1q2=[a1a2v1.v2,a1v2+a2v1+v1v2]............................(3) q_1 \bigotimes q_2 = [a_1a_2 -v_1.v_2, a_1 \overrightarrow v_2 + a_2 \overrightarrow v_1 + \overrightarrow v_1\overrightarrow v_2] ............................ (3)
    对比式(1)(3),通过适凑的方式,可得,
    v1=w2a1=0v2=ww.sin(wt2)a2=cos(wt2)..............................(4)\overrightarrow v_1 = \frac{\overrightarrow w}{2}\\ a_1 =0 \\ \overrightarrow v_2 = \frac{\overrightarrow w}{w}.sin(\frac{ wt}{2}) \\ a_2= cos(\frac{ wt}{2}) .............................. (4)
    即:
    q1=[0,w2],q2=[cos(wt2),ww.sin(wt2)]..............................(5)q_1 = [0,\frac{\overrightarrow w}{2}], q_2 = [cos(\frac{ wt}{2}) , \frac{\overrightarrow w}{w}.sin(\frac{ wt}{2})].............................. (5)
    所以可得,
    q(t)=[0,w2][cos(wt2),ww.sin(wt2)]=12[0,w]q(t)q'(t) = [0,\frac{\overrightarrow w}{2}] \bigotimes [cos(\frac{ wt}{2}) , \frac{\overrightarrow w}{w}.sin(\frac{ wt}{2})] \\ =\frac{1}{2} [0,\overrightarrow w]\bigotimes q(t)
    该方法通适凑的方式,巧妙的将四元数求导转化对应到四元数乘法,最后转化到四元数与自身导数的数值关系。
举报

相关推荐

0 条评论