一类含参的C3连续单位四元数插值样条曲线*

2023-12-13 03:55周奕含徐宇飞刘美含
赣南师范大学学报 2023年6期
关键词:欧氏刚体样条

王 倩,周奕含,徐宇飞,刘美含,周 彤

(辽宁师范大学 数学学院, 辽宁 大连 116029)

0 引言

在计算机动画与惯性导航等领域中,人们十分关注平滑插值给定关键位置和方向序列的刚体运动问题[1].三维欧氏空间3中的刚体运动一般由平移运动和旋转运动构成.刚体的平移运动可以用3中位置曲线表示,刚体的旋转运动可由旋转矩阵群SO(3)中的朝向曲线表示[2-3].利用单位四元数研究旋转问题,可以避免万向节锁定.而且相比于3×3旋转矩阵,四元数只有4个参数,在计算过程中效率更高.因此,利用单位四元数曲线研究刚体旋转运动的问题引起了学者们的广泛关注[4-5].

欧氏空间中光滑样条曲线的理论已经十分完备,如B-spline,Hermite样条和Bézier样条.但是上述样条曲线向非欧氏空间的推广具有一定难度.Shoemake[6]利用单位四元数对旋转的表示,将DeCasteljau算法应用到球面线性插值,得到了C1连续的单位四元数Bézier样条曲线.该样条由递归法定义,因此高阶导矢的计算十分复杂,这给处理平滑插值问题带来了一定困难.Kim等[7]将欧氏空间中的基函数进行累加处理,再利用单位四元数的指数映射与对数映射,提出了构造单位四元数样条曲线的一般方法.这类曲线保留了与欧氏空间中对应曲线相似的微分性质,易于计算高阶导矢.Kim等[8]对这类样条曲线的一阶参数连续性进行研究.此后,邢燕等[9]基于四次多项式,构造了C2连续的单位四元数样条曲线,该样条曲线可以直接插值关键帧方向序列,但不能进行形状调控.进一步,邢燕等[10]选取五次多项式调配函数,将单位四元数样条曲线的连续性提高到三阶.为使样条可以局部修改,檀结庆等[11]选取带形状参数的五次多项式作为调配函数,构造了一类G2连续的单位四元数样条曲线.孙楠等[12]在此基础上,研究了Bézier四元数曲线的性质,构造了C2连续的四元数插值样条曲线.何耀、陈佳惠等[13-14]分别将欧氏空间中Beta样条曲线和Gamma样条曲线推广到S3空间,给出Beta四元数样条曲线和Gamma四元数样条曲线的定义.他们还对曲线的端点性质进行研究,并给出了曲线二阶连续需要满足的条件.

随着对光滑拼接要求的提高,本文提出一种自动插值于任意给定关键帧方向序列的含参单位四元数样条曲线.该样条曲线有与欧氏空间相应曲线类似的性质,不仅满足C3连续性,而且形状可局部调控.进一步地,通过数值实验,还研究了参数对样条曲线形状的影响.

1 预备知识

1.1 四元数

四元数的加减法定义为

四元数的乘法定义为

单位四元数曲线可以定义为q(t)=qf(t),则

q′(t)=qf(t)f′(t)log(q),

(1)

1.2 四元数曲线

对于给定控制顶点q0,q1,…,qn∈S3,利用四元数的指数与对数运算,得到相应的单位四元数曲线为

上式可以改写成简单的四元数曲线乘积形式如:

2 C3连续的含参单位四元数样条曲线

根据Kim等提出的单位四元数样条曲线的一般构造方法,本节首先在3空间中构造出满足C3连续的含参七次多项式插值样条曲线,再将其推广到S3空间,从而得到具有类似性质的含参单位四元数样条曲线.

2.1 含参七次多项式样条曲线的构造

根据Bernstein基函数在端点处的性质,在欧氏空间中构造了满足C3连续性的插值样条曲线,参数的引入使得样条的形状可以调控.

定义1给定参数向量α=[α1,α2,…,αn],β=[β1,β2,…,βn],点列P1,P2,…,Pn∈d(d=2,3),令P0=P1,Pn=Pn+1.定义区间[1,n]上的含参七次样条曲线为

r(t)=ri(t-i),i=1,2,…,n-1,i≤t≤i+1,

(2)

将曲线ri(t)改写成如下形式

(3)

其中

定理1样条曲线r(t)是C3连续的.

证明对式(3)求导并利用Bernstein基函数的性质计算得到

因此,该样条曲线r(t)插值于给定的点列P1,P2,…,Pn∈d(d=2,3),并且即任意两条相邻曲线段直到3阶的导矢在连接点处都是相等的.从而,样条曲线r(t)是C3连续的.

2.2 含参单位四元数样条曲线的构造

接下来,利用欧氏空间中已构造的含参样条曲线来构造S3空间中保持类似性质的含参单位四元数样条曲线.

定义2给定参数向量α=[α1,α2,…,αn],β=[β1,β2,…,βn],n个关键帧方向Q1,Q2,…,Qn∈S3,令Q0=Q1,Qn+1=Qn.定义区间[1,n]上的含参单位四元数样条曲线为

q(t)=qi(t-i),i≤t≤i+1,i=1,2,…n-1,

(4)

(5)

显然S3空间中的样条曲线q(t)是由n-1段含参单位四元数曲线qi(t)拼接成的.

为方便后续研究给出如下引理.

引理1对于i=1,…,n-1,计算可得

2.3 含参单位四元数样条曲线的连续性

下面,研究单位四元数样条曲线的插值性和参数连续性.由于样条曲线q(t)是由n-1段qi(t)拼接组成的,因此只需研究在连接点处样条的连续性即可.

定理2含参单位四元数样条曲线q(t)是C3连续的.

证明由引理1计算可得

所以第i段含参单位四元数曲线qi(t)插值于关键帧方向Qi,Qi+1.从而样条曲线q(t)插值于给定的方向序列Q1,Q2,…,Qn.

求qi(t)关于t的一阶导矢

(6)

其中,由式(1)可知,当j=1,2,3时

(7)

求qi(t)关于t的二阶导矢

(8)

其中,由式(1)与式(7)可知,当j=1,2,3时

(9)

求qi(t)关于t的三阶导矢

(10)

其中,由式(1)与式(9)可知,当j=1,2,3时

(11)

将t=0分别代入式(6)(8)(10)并利用引理1计算可得

(12)

同理t=1时,计算结果如

(13)

因此,对于i=1,2,…n-1,

综上,含参单位四元数样条曲线q(t)是C3连续的.证毕.

3 实验

(a)αi=0.75,αi+1=0.35;βi=βi+1=0.35 (b)αi=0.35,αi+1=0.75;βi=βi+1=0.35

(c)αi=αi+1=0.35;βi=10,βi+1=0.35 (d)αi=αi+1=0.35;βi=0.35,βi+1=10图1七次多项式函数的图像(左)与其累和形式的图像(右)

α=-0.5*[1,1,1,1,1] α=[0,0,0,0,0] α=0.35*[1,1,1,1,1] α=1.5*[1,1,1,1,1]图2a调节参数向量α对样条形状的影响,其中β=[0,0,0,0,0]

β=-10*[1,1,2,1,1] β=[0,0,-10,0,0] β=10*[1,1,3,1,1] β=25*[1,1,0,1,1]

β=-10*[1,1,1,1,1] β=[0,0,0,0,0] β=10*[1,1,1,1,1] β=25*[1,1,1,1,1]图2b调节参数向量β对样条形状的影响,其中α=0.35*[1,1,1,1,1]图2 参数变化对样条曲线r(t)形状的影响

下面研究参数的变化对样条曲线r(t)形状以及相应的刚体运动姿态的影响.

图2a为参数向量β=[0,0,0,0,0]时,只调节参数向量α的取值对样条曲线r(t)形状的影响.实验表明,参数取值为负时,样条曲线在相应节点处的形状扭曲,有时甚至呈现缠绕状态.参数取值为0时,样条曲线在相应节点处的形状十分尖锐.参数绝对值越大,样条曲线在相应节点处的形状越光滑.此时,产生了旋转更快的刚体运动姿态(详见式(12)和(13)),运动姿态见图3(a)-(d).其中,刚体运动姿态的位置曲线为直线,朝向曲线为单位四元数样条曲线q(t).同时为方便观察,图3中的插值关键帧方向已用黄色长方体表示出,而其他时刻曲线生成的运动姿态用彩色长方体表示.因此为达到较好的形状效果,参数取值于(0,1).纵向观察图2a发现改变一个参数的取值将会影响节点处相邻两段样条曲线的形状.通过图3(b)与(c)的对比,或图3(b)与(e)的对比,同样可以发现改变一个参数的取值将会影响相邻两段的刚体运动姿态.

图2b为参数向量α=0.35*[1,1,1,1,1]时,只调节参数向量β的取值对样条曲线形状的影响.若将β=[0,0,0,0,0]的样条曲线视为观察位置,参数值为正时,值越大,曲线越向里收缩(正向穿过密切平面);参数值为负时,绝对值越大,曲线越向外扩展(反向穿过密切平面).同样见式(12)和(13),参数的绝对值越大时,在相应节点处的刚体运动姿态旋转更快,见图3(e)-(g).纵向观察图2b发现改变一个参数的取值也会影响节点处相邻两段样条曲线的形状.对比图3(e)与(f)不难发现参数向量β也具备对刚体运动姿态的局部调节作用.

通过实验,发现改变参数向量α的取值对样条曲线形状的控制效果更明显,这是由于参数向量α的取值与曲线的一阶导矢(切向量),二阶导矢(曲率)和三阶导矢(挠率)都相关.而参数向量β的取值只与三阶导矢(挠率)相关,因此调节参数向量β可以进一步微调曲线的形状.由式(12)和(13)可知,当参数向量α的取值接近零时,调节参数向量β改变节点处刚体的运动姿态效果更加明显,见图3(f)和(g).

4 结论

本文先在欧氏空间中构造了一种多项式插值样条曲线r(t),不仅证明了其三阶参数连续性,而且参数的引入使样条形状可调控.利用指数函数的连乘形式将该样条推广到S3空间,得到了具有类似性质(C3连续、插值性、可调控性)的含参单位四元数样条曲线q(t).通过数值实验说明了参数变化对刚体运动姿态的影响,即改变αi,αi+1,βi,βi+1中一个参数只会影响相邻两段刚体运动姿态,并且参数绝对值的取值越大,刚体在相应节点处的朝向转动越快.目前本文仅对参数的影响进行了定性分析,在接下来的研究中将会关注参数影响的定量分析问题,从而提出有效确定参数取值的方案.

猜你喜欢
欧氏刚体样条
一元五次B样条拟插值研究
差值法巧求刚体转动惯量
三次参数样条在机床高速高精加工中的应用
车载冷发射系统多刚体动力学快速仿真研究
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
基于样条函数的高精度电子秤设计
刚体定点转动的瞬轴、极面动态演示教具
基于多维欧氏空间相似度的激光点云分割方法
地震作用下承台刚体假定的适用性分析
三维欧氏空间中的球面曲线