连续的单位四元数插值样条曲线${C^3}$ Construction and application of a
-continuous unit quaternion interpolation spline curve${C^3}$ - 2018年23卷第4期 页码:534-541
收稿:2017-03-24,
修回:2017-10-20,
纸质出版:2018-04-16
DOI: 10.11834/jig.170098
移动端阅览

浏览全部资源
扫码关注微信
收稿:2017-03-24,
修回:2017-10-20,
纸质出版:2018-04-16
移动端阅览
目的
2
构造一类
$${C^3}$$
连续的单位四元数插值样条曲线,证明它的插值性和连续性,并把它应用于刚体关键帧动画设计中。
方法
2
利用
$${{\bf{R}}^3}$$
空间中插值样条曲线的5次多项式调配函数的累和形式构造了
$${S^3}$$
空间中单位四元数插值样条曲线,它不仅能精确通过一系列给定的方向,而且能生成
$${C^3}$$
连续的朝向曲线。
结果
2
与Nielson的单位四元数均匀B样条插值曲线的迭代构造方法相比,所提方法避免了为获取四元数B样条曲线控制顶点对非线性方程组迭代求解的过程,提高了运算效率;与单位四元数代数三角混合插值样条曲线的构造方法(Su方法)相比,所提方法只用到多项式基,运算速度更快。本例中创建关键帧动画所需的时间与Nielson方法和Su方法相比平均下降了73%和33%。而且,相比前两种方法,所提方法产生的四元数曲线连续性更高,由
$${C^2}$$
连续提高到
$${C^3}$$
连续,这意味着动画中刚体的朝向变化更加自然。
结论
2
仿真结果表明,本文方法对刚体关键帧动画设计是有效的,对实时性和流畅性要求高的动画设计场合尤为适用。
Objective
2
Unit quaternion represents rotation more compactly and intuitively than rotation matrix and is superior to Euler angle parameterization in avoiding gimbal lock. This study constructs a class of
$${C^3}$$
-continuous unit quaternion interpolation spline curves. The curves in unit quaternion space are an extension of a class of quintic polynomial interpolation spline curves in Euclidean space. They maintain high continuity and interpolating properties and are suitable for controlling the orientation of a rigid body in keyframe animation.
Method
2
Rigid keyframe animation usually has two or more keyframes (nodes) to be connected
and the rigid body needs to pass through the keyframes accurately. When the second derivatives of the orientation curve are discontinuous at some nodes in the spline curve
the angular acceleration of the object will suffer from a large jump
thereby resulting in undesirable rotation effects that are inconsistent with the expectation. Therefore
how to construct a high-order continuous unit quaternion curve is important in computer animation. This study first gives the definition and properties of quaternions and then selects proper quintic polynomial-blending functions to achieve a smooth interpolating orientation curve. Interpolation spline curves are constructed in
$${\mathit{\boldsymbol{R}}^3}$$
space by taking such quintic polynomial-blending functions as the base functions. The constructed curves can pass through the given data points and are
$${C^3}$$
-continuous when the knot vector is evenly distributed. We extend the spline curve in
$${\mathit{\boldsymbol{R}}^3}$$
space into
$${S^3}$$
space. Therefore
the unit quaternion interpolation spline curve maintains many similar important properties to those of the quintic polynomial interpolation spline curve in Euclidean space
such as interpolation and high-order continuity. Inspired by Kim et al.
[5]
we take the cumulative forms of the constructed blending functions of the interpolation spline curves in Euclidean space as the base functions to construct unit quaternion interpolation spline curves in
$${S^3}$$
space. Specifically
the unit quaternion interpolation spline curve is the product of several exponential functions
in which the exponents are cumulative forms of the blending functions
and the bases are constant unit quaternions that are the given keyframe orientations and the angular velocities between every two adjacent given keyframe orientations. Using this ability
the produced unit quaternion curves behave similarly to the spline curves in Euclidean space. For example
they not only pass through a given sequence of orientations (denoted by unit quaternions) exactly without the iterative process in solving the quaternionic nonlinear system of equations
as used in the classical B-spline unit quaternion interpolatory curves to obtain the control points from given data points but also can possess
$${C^3}$$
continuity. A strict proof of these properties is given. An application example is provided to show that the constructed unit quaternion curve can play a role in the keyframe animation design.
Result
2
We provide a 3D keyframe interpolation animation instance and comparison experiments to illustrate the feasibility and effectiveness of the proposed unit quaternion orientation curve construction method. From the application example
we observe that the proposed curve automatically passes through a given sequence of keyframe orientation accurately. The postures of cherries are controlled by the unit quaternion curve. Red cherries are randomly given keyframes. The orientations of intermediate green cherries are determined by three different types of unit quaternion spline curves. The position curve of the cherries adopts the same cubic uniform B-spline curves. Unlike Nielson's iterative construction scheme of unit quaternion uniform B-spline interpolation curves
the proposed scheme avoids solving the nonlinear system of equations over quaternions to obtain the control points
which greatly improves computational efficiency. Unlike Su et al.'s algebraic trigonometric blending interpolation quaternion spline curves
our scheme only uses polynomial bases
which run faster than trigonometric functions. The time required for the animation example by using our scheme decreases by approximately 73% and 33% compared with those by Nielson's and Su et al.'s method
respectively. Moreover
the continuity of the curve produced by the proposed scheme is
$${C^3}$$
higher than the
$${C^2}$$
-continuous curves constructed by the other two methods
which means that the changes in the orientation of the rigid body in the animation will be more natural.
Conclusion
2
Simulation results demonstrate that the proposed method is effective for rigid-body keyframe animation design and particularly applicable for design occasions with high real-time and fluency demands. Although the proposed method has the advantages of automatically accurate interpolation
high continuity
and fast running
this paper does not discuss the fairness of the curve. From numerous experimental results
we deduce that the curve fairness produced by the proposed method is not as good as the fairness of unit quaternion uniform B-spline curves. The next step of our work will be to study the construction method of a quaternion interpolating spline curve from the aspect of energy optimization
such as minimizing torque energy or curvature.
Shoemake K. Animating rotation with quaternion curves[J]. ACM SIGGRAPH Computer Graphics, 1985, 19(3):245-254.[DOI:10.1145/325165.325242]
Schlag J. Using geometric constructions to interpolate orientation with quaternions[M]//Arvo J. Graphics Games Ⅱ. New York, NY, USA: Academic Press, 1991: 377-380. [ DOI:10.1016/B978-0-08-050754-5.50081-5 http://dx.doi.org/10.1016/B978-0-08-050754-5.50081-5 ]
Nielson G M, Heiland R W. Animated rotations using quaternions and splines on a 4D sphere[J]. Programming and Computer Software, 1992, 18(4):145-154.
Nielson G M. Smooth interpolation of orientations[M]//Thalmann N M, Thalmann D. Models and Techniques in Computer Animation. Tokyo: Springer-Verlag, 1993: 75-93. [ DOI:10.1007/978-4-431-66911-1_8 http://dx.doi.org/10.1007/978-4-431-66911-1_8 ]
Kim M J, Kim M S, Shin S Y. A general construction scheme for unit quaternion curves with simple high order derivatives[C]//Proceedings of the 22nd Annual Conference on Computer Graphics and Interactive Techniques. New York, USA: ACM Press, 1995: 369-376. [ DOI:10.1145/218380.218486 http://dx.doi.org/10.1145/218380.218486 ]
Kim M J, Kim M S, Shin S Y. A C 2 -continuous B-spline quaternion curve interpolating a given sequence of solid orientations[C]//Proceedings of IEEE Computer Animation. Geneva, Switzerland: IEEE, 1995: 72-81. [ DOI:10.1109/CA.1995.393545 http://dx.doi.org/10.1109/CA.1995.393545 ].
Nielson G M. v-quaternion splines for the smooth interpolation of orientations[J]. IEEE Transactions on Visualization and Computer Graphics, 2004, 10(2):224-229.[DOI:10.1109/TVCG.2004.1260774]
Su B Y, Zhang J, Wang G J. The solid orientations interpolation in quaternion space using a class of blending interpolation spline[J]. International Journal of Advancements in Computing Technology, 2013, 5(6):335-341.
Wang W P, Joe B. Orientation interpolation in quaternion space using spherical biarcs[C]//Proceedings of Graphics Interface. Toronto: Canadian Human Computer Communications Society, 1993: 24-32.
Kim M S, Nam K W. Interpolating solid orientations with circular blending quaternion curves[J]. Computer-Aided Design, 1995, 27(5):385-398.[DOI:10.1016/0010-4485(95)96802-S]
Ramamoorthi R, Barr A H. Fast construction of accurate quaternion splines[C]//Proceedings of the 24th Annual Conference on Computer Graphics and Interactive Techniques. New York, NY, USA: ACM Press/Addison-Wesley Publishing Co., 1997: 287-292. [ DOI:10.1145/258734.258870 http://dx.doi.org/10.1145/258734.258870 ]
Buss S R, Fillmore J P. Spherical averages and applications to spherical splines and interpolation[J]. ACM Transactions on Graphics, 2001, 20(2):95-126.[DOI:10.1145/502122.502124]
Lee J, Shin S Y. General construction of time-domain filters for orientation data[J]. IEEE Transactions on Visualization and Computer Graphics, 2002, 8(2):119-128.[DOI:10.1109/2945.998665]
Xing Y, Xu R Z, Tan J Q, et al. A class of generalized B-spline quaternion curves[J]. Applied Mathematics and Computation, 2015, 271:288-300.[DOI:10.1016/j.amc.2015.09.025]
Xiong J, Guo Q W, Zhu G Q. May be whole or partial control of the $${C^3}$$ -and C 4 -continuous interpolation curves[J]. Journal on Numerical Methods and Computer Applications, 2011, 32(3):165-173..
熊建, 郭清伟, 朱功勤.可整体或局部调控的 C 3 , C 4 连续的插值曲线[J].数值计算与计算机应用, 2011, 32(3):165-173..
相关作者
相关机构
京公网安备11010802024621