Print

发布时间: 2017-02-25
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.20170207
2017 | Volumn 22 | Number 2




    计算机图形学    




  <<上一篇 




  下一篇>> 





形状可调的5次组合样条及其参数选择
expand article info 李军成1, 严兰兰2, 刘成志1
1. 湖南人文科技学院数学与金融学院, 娄底 417000;
2. 东华理工大学理学院, 南昌 330013

摘要

目的 为了克服3次参数B样条在形状调整与局部性方面的不足,提出带参数的5次多项式组合样条。 方法 首先构造一组带参数的5次多项式基函数;然后采用与3次B样条曲线相同的组合方式定义带参数的5次多项式组合样条曲线,并讨论基于能量优化法的5次组合样条曲线参数最佳取值问题;最后定义相应的组合样条曲面,并研究利用粒子群算法求解曲面的最佳参数取值。 结果 5次组合样条不仅继承了3次B样条的诸多性质,而且还比3次B样条具有更强的局部性及形状可调性。由于5次组合样条仍为多项式模型,因此方程结构相对较为简单,符合实际工程的需要。利用能量优化法可获得光顺的5次组合样条曲线与曲面。 结论 所提出5次多项式组合样条克服了3次参数B样条在形状调整与局部性方面的不足,是一种实用的自由曲线曲面造型方法。

关键词

B样条; 组合样条; 形状调控; 能量优化法; 粒子群算法

Quintic composite spline with adjustable shape and parameter selection
expand article info Li Juncheng1, Yan Lanlan2, Liu Chengzhi1
1. College of Mathematics and Finances, Hunan University of Humanities, Science and Technology, Loudi 417000, China;
2. College of Science, East China University of Technology, Nanchang 330013, China
Supported by: National Natural Science Foundation of China(11261003);Scientific Research Fund of Hunan Provincial Education Department of China(14B099)

Abstract

Objective The quintic polynomial composite spline with parameters is presented in this study to overcome the disadvantages of the cubic parametric B-spline in shape adjustment and local aspects. Method First, a class of quintic polynomial basis functions with parameters is constructed. The quintic polynomial composite spline curves with parameters are then defined according to the same composite way with the cubic B-spline curves. The optimal parameter value of the quintic composite spline curves based on the energy optimization method is discussed. Finally, the corresponding composite spline surfaces are defined, and the problem of the optimal parameter values of the surfaces utilizing the particle swarm algorithm is studied. Resuls The quintic composite spline not only inherits most properties of the cubic B-spline, but also has stronger local and shape properties than the cubic B-spline. Given that the quintic composite spline is still a polynomial model, the equation structure is relatively simple, which is more in line with the requirements of the actual projects. The smooth quintic composite spline curves and surfaces can be obtained by the energy optimization method. Conclusion The quintic composite spline overcomes the disadvantages of the cubic parametric B-spline in shape adjustment and local aspects, which is a practical method for free curve and surface modeling.

Key words

B-spline; composite spline; shape adjustment; energy optimization method; particle swarm algorithm

0 引 言

作为一种简单有效的曲线曲面表示方法,B样条已在几何造型工业中被广泛使用。由于B样条具有较强的局部性、较高的连续性、较为简单的方程结构等数学特性,因此目前绝大部分CAD/CAM系统都将其作为重要的组成模块。然而,随着几何造型工业的发展,人们往往需要灵活地修改曲线曲面的形状以满足实际工程的需要,但当节点矢量与控制顶点保持不变时,B样条的形状却无法进行调整,这无疑在一定程度上影响了其在实际工程中的应用。非均匀有理B样条(NURBS)方法虽然解决了B样条在形状调整方面的不足,且已成为CAD/CAM系统中一种常见曲线曲面表示方法,但NURBS方法采用了有理形式,这样不仅使得曲线曲面的方程结构变得复杂,而且其权因子问题至今也未完全得到解决。

为了缓解B样条方法在形状调整方面的不足,许多学者开始对其形式进行扩展,构造许多带参数的B样条模型。例如,带参数的多项式B样条[1-3]、带参数的三角B样条[4-7]、带参数的双曲B样条[8-9],等。这些B样条模型的共同点是均含有形状参数,通过修改形状参数的取值可实现形状的调整。为了同时解决3次B样条在局部性与光滑性不能同时提高的问题,严兰兰等人[10]借助B样条方法的组合思想,采用不同的组合方式构造了一种形状及光滑度可调的有理组合样条;刘华勇等人[11-12]将这一思想推广到三角函数空间,分别构造了形状可调的三角组合样条与有理三角组合样条。注意到,文献[10-12]方法虽然在很大程度上改进了3次B样条所存在的不足,但由于采用了有理形式和三角形式,因此增加了样条模型的复杂度。另外,由于目前绝大多数CAD/CAM系统都将Bézier方法、B样条方法以及NURBS方法作为常用的几何造型手段,而文献[10-12]中构造的有理组合样条与三角组合样条同这些常用方法融合后仍为三角或有理模型,不具有封闭性,需要事后进行转换,故构造可使得曲线曲面能保持封闭性的多项式组合样条显得更有必要。 为此,本文首先构造了一组带参数的5次基函数,然后由此定义了带参数的5次组合样条曲线,并研究了该样条曲线的参数选择问题,最后将所提出的方法推广到曲面形式。

1 带参数的基函数

定义1 对于0≤t≤1,0≤αi≤1,称下列4个关于t的函数为带参数αi的5次基函数,即

$\left\{ \begin{align} & {{b}_{i,0}}(t)=\frac{1}{4}{{(1-t)}^{3}}\left( 2+(6-4{{\alpha }_{i}})t+(12-13{{\alpha }_{i}}){{t}^{2}} \right)\\ & {{b}_{i,1}}(t)=\frac{1}{4}{{(1-t)}^{3}}\left( 2+(6+4{{\alpha }_{i}})t+(12+13{{\alpha }_{i}}){{t}^{2}} \right)\\ & {{b}_{i,2}}(t)=\frac{1}{4}{{t}^{3}}\left( (20+15{{\alpha }_{i}})-(30+26{{\alpha }_{i}})t+(12+11{{\alpha }_{i}}){{t}^{2}} \right)\\ & {{b}_{i,3}}(t)=\frac{1}{4}{{t}^{3}}\left( (20-15{{\alpha }_{i}})-(30-26{{\alpha }_{i}})t+(12-11{{\alpha }_{i}}){{t}^{2}} \right)\\ \end{align} \right.$ (1)

定理1 由式(1)定义的5次基函数具有下列性质:

1) 归一性,$\sum\limits_{j=0}^{3}{{{b}_{i,j}}(t)\equiv 1}$

2) 非负性,bi,j(t)≥0(j=0,1,2,3)。

3) 端点性

$\left\{ \begin{align} & \begin{matrix} {{b}_{i,0}}(0)=\frac{1}{2}, & {{b}_{i,1}}(0)=\frac{1}{2}, & {{b}_{i,2}}(0)={{b}_{i,3}}(0)=0 \\ \end{matrix} \\ & \begin{matrix} {{b}_{i,0}}(1)={{b}_{i,1}}(1)=0, & {{b}_{i,2}}(1)=\frac{1}{2}, & {{b}_{i,3}}(1)=\frac{1}{2} \\ \end{matrix} \\ \end{align} \right.$

$\left\{ \begin{align} & \begin{matrix} {{{{b}'}}_{i,0}}(0)=-{{\alpha }_{i}}, & {{{{b}'}}_{i,1}}(0)={{\alpha }_{i}}, & {} \\ \end{matrix} \\ & {{{{b}'}}_{i,2}}(0)={{{{b}'}}_{i,3}}(0)=0 \\ & \begin{matrix} {{{{b}'}}_{i,0}}(1)={{{{b}'}}_{i,1}}(1)=0, & {} & {} \\ \end{matrix} \\ & {{{{b}'}}_{i,2}}(1)=-{{\alpha }_{i}},{{{{b}'}}_{i,3}}(1)={{\alpha }_{i}} \\ \end{align} \right.$

$\left\{ \begin{align} & \begin{matrix} {{{{b}''}}_{i,0}}(0)=-\frac{1}{2}{{\alpha }_{i}}, & {{{{b}''}}_{i,1}}(0)=\frac{1}{2}{{\alpha }_{i}}, & {} \\ \end{matrix} \\ & {{{{b}''}}_{i,2}}(0)={{{{b}''}}_{i,3}}(0)=0 \\ & \begin{matrix} {{{{b}''}}_{i,0}}(1)={{{{b}''}}_{i,1}}(1)=0, & {{{{b}''}}_{i,2}}(1)=-\frac{1}{2}{{\alpha }_{i}}, & {} \\ \end{matrix} \\ & {{{{b}''}}_{i,3}}(1)=\frac{1}{2}{{\alpha }_{i}} \\ \end{align} \right.$

证明 归一性与端点性经简单推导即可证明。 下面仅证非负性。

f(t)=2+(6-4αi)t+(12-13αi)t2,则

${{b}_{i,0}}(t)=\frac{1}{4}{{(1-t)}^{3}}f(t)$

由于

$\begin{align} & {f}'(t)=(6-4{{\alpha }_{i}})+2(12-13{{\alpha }_{i}})t \\ & {f}'(0)=6-4{{\alpha }_{i}},{f}'(1)=30-30{{\alpha }_{i}} \\ \end{align}$

故当0≤t≤1,0≤αi≤1时,恒有f′(t)≥0。又由于f(0)=2>0,故当0≤t≤1,0≤αi≤1时,有f(t)>0,从而有bi,0(t)≥0。同理可证bi,j(t)≥0(j=1,2,3)。证毕。

2 带参数的5次组合样条曲线

基于由式(1)定义的5次基函数,可采用与3次B样条曲线相同的组合方式定义如下一类带参数αi的5次组合样条曲线。

定义2 给定R2R3中2n(n≥2)个控制顶点pk(k=0,1,…,2n-1),对于0≤t≤1,0≤αi≤1,称分段参数曲线

${{r}_{i}}(t)=\sum\limits_{j=0}^{3}{{{b}_{i,j}}(t){{p}_{2i+j}}},i=0,1,\cdots ,n-2$ (2)

为带参数αi的5次组合样条曲线,其中bi,j(t)(j=0,1,2,3)为式(1)定义的5次基函数。

定理2 由式(2)定义的5次组合样条曲线具有以下性质:

1) 几何不变性与仿射不变性。样条曲线的形状仅由控制顶点pk(k=0,1,…,2n-1)及形状参数αi(i=0,1,…,n-2)确定,而与所选取的坐标系无关。 对控制多边形进行仿射变换后,所对应的新样条曲线就是相同仿射变换后的样条曲线。

2) 凸包性。样条曲线落在由控制顶点pk(k=0,1,2,…,2n-1)形成的凸包之中。

3) 几何连续性。样条曲线满足G2连续。特别地,当αi=α(i=0,1,…,n-2)时,样条曲线满足C2连续。

证明 1)由于样条曲线的方程式(2)为参数形式,故几何不变性与仿射不变性显然成立。

2) 由于样条曲线是控制顶点与5次基函数的加权平均,而5次基函数又满足归一性与非负性,故凸包性与保凸性成立。

3) 由5次基函数的端点性及式(2),有

$\left\{ \begin{align} & {{r}_{i}}(0)=\frac{1}{2}\left( {{p}_{2i}}+{{p}_{2i+1}} \right)\\ & {{r}_{i}}(1)=\frac{1}{2}\left( {{p}_{2i+2}}+{{p}_{2i+3}} \right)\\ \end{align} \right.$ (3)

$\left\{ \begin{align} & {{r}_{i}}^{\prime }(0)={{\alpha }_{i}}\left( {{p}_{2i+1}}-{{p}_{2i}} \right)\\ & {{r}_{i}}^{\prime }(1)={{\alpha }_{i}}\left( {{p}_{2i+3}}-{{p}_{2i+2}} \right)\\ \end{align} \right.$ (4)

$\left\{ \begin{align} & {{r}_{i}}^{\prime \prime }(0)=\frac{1}{2}{{\alpha }_{i}}\left( {{p}_{2i+1}}-{{p}_{2i}} \right)\\ & {{r}_{i}}^{\prime \prime }(1)=\frac{1}{2}{{\alpha }_{i}}\left( {{p}_{2i+3}}-{{p}_{2i+2}} \right)\\ \end{align} \right.$ (5)

由式(3)-式(5)分别可得

$\left\{ \begin{align} & {{r}_{i}}(1)={{r}_{i+1}}(0) \\ & {{r}_{i}}^{\prime }(1)={{\beta }_{i}}{{{{r}'}}_{i+1}}(0) \\ & {{r}_{i}}^{\prime \prime }(1)={{\beta }_{i}}{{{{r}''}}_{i+1}}(0) \\ \end{align} \right.$ (6)

式中,${{\beta }_{i}}=\frac{{{\alpha }_{i}}}{{{\alpha }_{i+1}}}$

式(6)即表明样条曲线满足G2连续。特别地,当αi=α(i=0,1,…,n-2)时,由式(6)可得

$r_{i}^{(k)}(1)=r_{i+1}^{(k)}(0)(k=0,1,2)$ (7)

式(7)即表明样条曲线满足C2连续。证毕。

5次组合样条曲线继承了3次B样条曲线的一些主要特性:

1) 每段曲线由4个控制顶点定义。

2) 曲线段之间可达到C2连续。

3) 曲线具有局部性。

但是,5次组合样条曲线与3次B样条曲线也有一些不同之处:

1) 改变中间1个控制顶点的位置时,会影响4段3次B样条曲线段的形状,而仅会影响2段5次组合样条曲线的形状,这表明5次组合样条曲线具有更强的局部性。修改1个控制顶点分别对C2连续3次B样条曲线与5次组合样条曲线的影响如图 1所示,其中5次组合样条曲线的参数取为α=0.5。

图 1 3次B样条曲线与5次组合样条曲线的局部性
Fig. 1 The local properties of cubic B-spline curves and quintic composite spline curves ((a)cubic B-spline curves; (b)quintic composite spline curves)

2) 相邻2段3次B样条曲线之间则有3个相同的控制顶点,而相邻2段组合5次样条曲线之间仅有2个相同的控制顶点,这表明在利用5次组合样条曲线表示相同信息时,所需的曲线段数较少。 例如,在图 1中,对于相同的8个控制顶点,利用3次B样条曲线表示时需要5段曲线段,而利用5次组合样条曲线表示时则只需要3段曲线段。

3) 当控制顶点保持不变时,3次B样条曲线的形状无法修改,而5次组合样条曲线可通过修改所带参数αi的取值实现对曲线形状的局部或整体调节。图 2为参数对G2连续5次组合样条曲线的局部调节,图 3则为参数对C2连续5次组合样条曲线的整体调节。

图 2 参数对5次组合样条曲线的局部调节
Fig. 2 Local adjustment of the quintic composite spline curves by the parameters
图 3 参数对5次组合样条曲线的整体调节
Fig. 3 Global adjustment of the quintic composite spline curves by the parameters ((a)open curves; (b)closed curves)

4) 为了使3次B样条曲线通过首末控制顶点,往往需要对首末两段曲线设置重节点。而对于组合5次样条曲线而言,只需在控制顶点pk(k=0,1,…,2n-1)的两侧补充顶点p-1=p0p2n=p2n-1即可轻松地使其插值于首末控制顶点。图 4为给定相同控制顶点时的3次B样条曲线与插值于首末控制顶点的C2连续5次组合样条曲线。

图 4 插值于首末控制顶点的5次组合样条曲线
Fig. 4 The quintic composite spline curves interpolating the first and last control points

与有理组合样条[10]及三角组合样条[11-12]相比,本文提出的组合5次样条曲线不仅与它们具有相似的特点,而且仍为一种多项式模型,方程结构相对较为简单,计算量也相对较小。例如,对于图 1中给定的控制顶点,在PC机上(CPU:Intel(R)Core(TM)i5-5200U,RAM:4 GB,OS: WIN8.1,绘图软件:MATLAB R2013a)分别利用有理组合样条[10]、三角组合样条[11-12]及本文提出的5次组合样条构造二阶连续曲线的平均耗时对比如表 1所示。

表 1 不同组合样条的平均耗时
Table 1 Average time consuming of different combinations

下载CSV
组合样本所需平均时间/s
有理组合样条[10]0.093 705
三角组合样条[11]0.090 006
有理三角组合样条[12]0.097 011
5次组合样条0.089 679

表 1可知,在相同条件下,利用本文提出的5次组合样条构造二阶连续曲线的平均耗时相对较少,当控制顶点的数量越多时,这一优势将越明显。另一方面,相对于有理组合样条曲线[10]及三角组合样条曲线[11-12],由于本文提出的5次组合样条曲线采用了多项式形式,因此与CAD/CAM系统中常见的Bézier曲线、B样条曲线、NURBS曲线融合后能保持封闭性,无需事后转换,这也更加符合实际工程的需要。

3 5次组合样条曲线的参数选择

由前文可知,当控制顶点保持不变时,可通过修改参数αi的取值实现对5次组合样条曲线形状的调节,这无疑给曲线的设计带来了较大的便利。 但在一些特定的应用场合,往往只需要确定一条最为“光顺”的曲线,因此,当控制顶点保持不变时,如何选择参数αi的最佳取值以获得一条最为“光顺”的5次组合样条曲线(不妨称为最佳5次组合样条曲线)也是一个值得讨论的问题。下面给出一种确定C2连续5次组合样条曲线最佳参数取值的方法。

一般地,根据光顺准则[13],参数曲线r(t)(0≤t≤1)的光顺程度可近似地由其能量值

$E=\int_{0}^{1}{{{\left| {r}''(t) \right|}^{2}}}\text{d}t$ (8)

决定。能量值越小,则曲线越光顺。

下面考虑C2连续的5次组合样条曲线,即可将各段曲线的参数均取为α。给定控制顶点pk(k=0,1,…,2n-1),要使所对应的C2连续5次组合样条曲线ri(t)(i=0,1,…,n-2)尽可能地光顺,则需要确定参数α的最佳取值以使其能量值取最小。 于是,依据式(8)可得优化模型

$\begin{align} & \begin{matrix} \min & E(\alpha )=\sum\limits_{i=0}^{n-2}{\int_{0}^{1}{{{\left| {{r}_{i}}^{\prime \prime }(t) \right|}^{\text{2}}}}}\text{d}t \\ \end{matrix} \\ & \begin{matrix} \text{s}\text{.t}. & 0\le \alpha \le 1 \\ \end{matrix} \\ \end{align}$ (9)

$\begin{align} & {{L}_{0}}(t)=\frac{1}{2}{{(1-t)}^{3}}(1+3t+6{{t}^{2}}) \\ & {{M}_{0}}(t)=\frac{1}{4}{{(1-t)}^{3}}(4t+13{{t}^{2}}) \\ & {{L}_{1}}(t)=\frac{1}{2}{{t}^{3}}(10-15t+6{{t}^{2}}) \\ & {{M}_{1}}(t)=\frac{1}{4}{{t}^{3}}(15-26t+11{{t}^{2}}) \\ \end{align}$

则式(2)可改写为

${{r}_{i}}(t)={{G}_{i}}(t)+{{H}_{i}}(t)\alpha $ (10)

式中

$\begin{align} & {{G}_{i}}(t)={{L}_{0}}(t)\left( {{p}_{2i}}+{{p}_{2i+1}} \right)+{{L}_{1}}(t)\left( {{p}_{2i+2}}+{{p}_{2i+3}} \right) \\ & {{H}_{i}}(t)={{M}_{0}}(t)\left( {{p}_{2i+1}}-{{p}_{2i}} \right)+{{M}_{1}}(t)\left( {{p}_{2i+2}}-{{p}_{2i+3}} \right) \\ \end{align}$

由式(10),模型式(9)可改写为

$\begin{align} & \begin{matrix} \min & E(\alpha )={{C}_{1}} \\ \end{matrix}+2{{C}_{2}}\alpha +{{C}_{3}}{{\alpha }^{2}} \\ & \begin{matrix} \text{s}\text{.t}. & 0\le \alpha \le 1 \\ \end{matrix} \\ \end{align}$ (11)

式中

$\begin{align} & {{C}_{1}}=\sum\limits_{i=0}^{n-2}{\int_{0}^{1}{{{\left| {{G}_{i}}^{\prime \prime }(t) \right|}^{2}}}}\text{d}t \\ & {{C}_{2}}=\sum\limits_{i=0}^{n-2}{\int_{0}^{1}{\left( {{G}_{i}}^{\prime \prime }(t)\cdot {{H}_{i}}^{\prime \prime }(t) \right)}}\text{d}t \\ & {{C}_{3}}=\sum\limits_{i=0}^{n-2}{\int_{0}^{1}{{{\left| {{H}_{i}}^{\prime \prime }(t) \right|}^{2}}}}\text{d}t \\ \end{align}$

模型式(11)的解可分为以下2种情况:

1) 当C3=0时,若C2>0,则模型式(11)的解为α=0;否则,模型式(11)的解为α=1。

2) 当C3≠0时,模型式(11)的解可具体分为:

(1) 当$-\frac{{{C}_{2}}}{{{C}_{3}}}<0$$-\frac{{{C}_{2}}}{{{C}_{3}}}>1$时。若E(0)≤E(1),则模型式(11)的解为α=0;若E(0)≥E(1),则模型式(11)的解为α=1。

(2) 当$0\le -\frac{{{C}_{2}}}{{{C}_{1}}}\le 1$时,若

$E(0)=\min \left\{ E(0),E(1),E\left( -\frac{{{C}_{2}}}{{{C}_{3}}} \right) \right\}$

则模型式(11)的解为α=0;若

$E(1)=\min \left\{ E(0),E(1),E\left( -\frac{{{C}_{2}}}{{{C}_{3}}} \right) \right\}$

则模型式(11)的解为α=1;否则,模型式(11)的解为$\alpha =-\frac{{{C}_{2}}}{{{C}_{3}}}$

依据模型式(11)求得参数α的最佳取值后,即可由式(2)获得最佳C2连续5次组合样条曲线。例如,对于图 1中给定的控制顶点,利用模型式(11)可求得参数的最佳取值为α=0.908 6。绘制的最佳C2连续5次组合样条曲线如图 5所示,其能量值曲线如图 6所示。

图 5 最佳5次组合样条曲线
Fig. 5 The optimal quintic composite spline curves
图 6 能量值曲线
Fig. 6 Curve of the energy value

4 带参数的5次组合样条曲面

利用张量积,可定义以下一类带参数的5次组合样条曲面。

定义3 给定R3中2m×2n(m,n≥2)个控制顶点pk,l(k=0,1,…,2m-1;l=0,1,…,2n-1),对于0≤u,v≤1,0≤αii≤1,称分片参数曲面

${{r}_{i,j}}(u,v)=\sum\limits_{k=0}^{3}{\sum\limits_{l=0}^{3}{{{b}_{i,k}}(u){{b}_{j,l}}(v){{p}_{2i+k,2j+l}}}}$ (12)

为带参数αiβi的5次组合样条曲面,其中i=0,1,…,m-2;j=0,1,…,n-2;bi,k(u)(k=0,1,2,3)与bj,l(v)(l=0,1,2,3)为参照式(1)定义的5次基函数。

由于5次组合样条曲面是5次组合样条曲线在空间中的直接推广,故5次组合样条曲面与对应的曲线具有相同的特性。例如,当控制顶点保持不变时,可通过修改参数的取值对5次组合样条曲面的形状进行局部或整体调节。图 7为参数对C2连续5次组合样条曲面的整体调节,其中该曲面由4片曲面片组成。

图 7 参数对5次组合样条曲面的整体调节
Fig. 7 Global adjustment of the quintic composite spline surfaces by the parameters ((a)(α,β)=(0.2,0.8);(b)(α,β)=(0.8,0.2))

图 7可知,当参数取为(α,β)=(0.2,0.8)时,整张曲面的中部呈“前后”方向凸起,而当参数取为(α,β)=(0.8,0.2)时,整张曲面的中部则呈“左右”方向凸起,即通过修改参数的取值实现了对曲面形状的调节。

与最佳C2连续5次组合样条曲线的构造类似,为了满足一些特定场合的应用需要,也可通过确定参数的最佳取值获得最为“光顺”的5次组合样条曲面。根据光顺准则[13],参数曲面r(u,v)(0≤u,v≤1)的光顺程度可近似地由其能量值

$E=\int_{0}^{1}{\int_{0}^{1}{[r_{uu}^{\text{2}}(u,v)+2r_{uv}^{\text{2}}(u,v)\text{+}r_{vv}^{\text{2}}(u,v)]}}\text{d}u\text{d}v$ (13)

决定。能量值越小,则曲面越光顺。

下面考虑C2连续的5次组合样条曲面,即可将各片曲面的参数均取为αβ。给定控制顶点pk,l(k=0,1,…,2m-1;l=0,1,…,2n-1),要使所对应的C2连续5次组合样条曲面ri,j(u,v)(i=0,1,…,m-2;j=0,1,…,n-2)尽可能地光顺,则需要确定参数αβ的最佳取值以使其能量值取最小。于是,依据式(13)可得优化模型

$\begin{align} & \begin{matrix} \min & E(\alpha ,\beta )=\sum\limits_{i=0}^{m-2}{\sum\limits_{j=0}^{n-2}{\int_{0}^{1}{\int_{0}^{1}{\left( {{\left( \frac{{{\partial }^{2}}{{r}_{i,j}}(u,v)}{\partial {{u}^{2}}} \right)}^{2}}+ \right.}}}} \\ \end{matrix} \\ & \begin{matrix} \begin{matrix} {} & {} \\ \end{matrix} & {} & {} & \left. 2{{\left( \frac{{{\partial }^{2}}{{r}_{i,j}}(u,v)}{\partial u\partial v} \right)}^{2}}+{{\left( \frac{{{\partial }^{2}}{{r}_{i,j}}(u,v)}{\partial {{v}^{2}}} \right)}^{2}} \right) \\ \end{matrix} \\ & \begin{matrix} \text{s}\text{.t}. & 0\le \alpha ,\beta \le 1 \\ \end{matrix} \\ \end{align}$ (14)

由于模型(14)中的目标函数为关于αβ的二元4次函数,故本文采用粒子群算法[14]进行求解,其算法步骤可描述为:

1) 初始化,给定粒子群中粒子个数N,随机给定粒子群中第i个粒子的初始位置xi,j(0)和速度vi,j(0),其中i=1,2,…,N;j=1,2表示优化模型中决策变量的个数。

2) 计算出第i个粒子在当前位置xi,j(t)的适应度(本文中粒子适应度即粒子所对应的目标函数值),并将当前各粒子的位置和自适应度存放在个体最优解pi,j中,并令全局最优为${p_{g,j}} = \mathop {\mathop {\min }\limits^N }\limits_{i = 1} \{ {p_{i,j}}\} $。

3) 根据下面式子更新各个粒子的速度和位移

$\left\{ \begin{align} & {{v}_{i,j}}\text{(}t+1\text{) =}w{{v}_{i,j}}\text{(}t\text{)}+{{c}_{1}}{{r}_{1}}\left( {{p}_{i,j}}-{{x}_{i,j}}(t) \right)+ \\ & \begin{matrix} {} & {} & {} & {{c}_{2}}{{r}_{2}}\left( {{p}_{g,j}}-{{x}_{i,j}}(t) \right) \\ \end{matrix} \\ & \begin{matrix} {{x}_{i,j}}\text{(}t+1\text{)}={{x}_{i,j}}\text{(}t\text{)}+{{v}_{i,j}}\text{(}t+1\text{),} & j\text{=1,2,}\cdots ,d \\ \end{matrix}\, \\ \end{align} \right.$

式中,w为惯性权重,c1c2为正学习因子,r1r2为0到1之间的随机数。

4) 如果粒子当前的适应度优于其经历过的最好位置的适应度,则将其作为当前的最好位置。

5) 比较当前所有粒子的pi,jpg,j的值,更新pg,j

6) 若满足终止条件,则搜索停止,输出结果;否则返回步骤3)继续搜索。

利用粒子群算法求解模型(11)获得参数αβ的最佳取值后,即可由式(12)获得最佳C2连续5次组合样条曲面。例如,对于图 7中给定的控制顶点,可求得参数的最佳取值为(α,β)=(0.973 8,0.992 1),绘制的最佳C2连续5次组合样条曲面如图 8所示。

图 8 最佳5次组合样条曲面
Fig. 8 The optimal quintic compsoite spline surfaces

5 结 论

针对3次参数B样条在形状调整与局部性方面的不足,本文首先构造了一组带参数的5次多项式基函数,然后采用与3次B样条相同的组合方式定义了带参数的5次组合样条。所提出的组合样条继承了3次B样条曲线的诸多性质,不仅具有更强的局部性,而且其形状还可通过参数进行局部或整体调节。进一步地,还研究了5次组合样条曲线的参数选择问题,给出了构造最佳5次组合样条的方法。所提出的5次组合样条虽然在形状调整与局部性方面要优于3次B样条,但在连续性方面却并未提高,因此如何构造满足更高阶连续性的多项式组合样条将是下一步需要研究的问题。

参考文献

  • [1] Xu G, Wang G Z. Extended cubic uniform B-spline and α-B-spline[J]. Acta Automatica Sinica , 2008, 34 (8) : 980–984. DOI:10.1016/S1874-1029(08)60047-6]
  • [2] Cao J, Wang G Z. Non-uniform B-spline curves with multiple shape parameters[J]. Journal of Zhejiang University Science C , 2011, 12 (10) : 800–808. DOI:10.1631/jzus.C1000381]
  • [3] Han X L. A class of general quartic spline curves with shape parameters[J]. Computer Aided Geometric Design , 2011, 28 (3) : 151–163. DOI:10.1016/j.cagd.2011.02.001]
  • [4] Yan L L, Liang J F. A class of algebraic-trigonometric blended splines[J]. Journal of Computational and Applied Mathematics , 2011, 235 (6) : 1713–1729. DOI:10.1016/j.cam.2010.09.016]
  • [5] Juhász I, Róth Á. A scheme for interpolation with trigonometric spline curves[J]. Journal of Computational and Applied Mathematics , 2014, 263 : 246–261. DOI:10.1016/j.cam.2013.12.034]
  • [6] Yan L L, Han X L. Higher-order continuous shape adjustable trigonometric polynomial curve and surface[J]. Journal of Image and Graphics , 2015, 20 (3) : 427–436. [ 严兰兰, 韩旭里. 高阶连续的形状可调三角多项式曲线曲面[J]. 中国图象图形学报 , 2015, 20 (3) : 427–436. DOI:10.11834/jig.20150314 ]
  • [7] Yan L L, Han X L, Huang T. Cubic trigonometric polynomial curves and surfaces with a shape parameter[J]. Journal of Computer-Aided Design & Computer Graphics , 2016, 28 (7) : 1047–1058. [ 严兰兰, 韩旭里, 黄涛. 带一个形状参数的3次三角多项式曲线曲面[J]. 计算机辅助设计与图形学学报 , 2016, 28 (7) : 1047–1058. ]
  • [8] Liu X M, Xu W X, Guan Y, et al. Hyperbolic polynomial uniform B-spline curves and surfaces with shape parameter[J]. Graphical Models , 2010, 72 (1) : 1–6. DOI:10.1016/j.gmod.2009.10.001]
  • [9] Xie J, Tan J Q, Li S F. Quadratic algebraic hyperbolic B-spline curves with weight parameters[J]. Numerical Mathematics A Journal of Chinese Universities , 2011, 33 (4) : 337–346. [ 谢进, 檀结庆, 李声锋. 含有权参数的二次代数双曲B样条曲线[J]. 高等学校计算数学学报 , 2011, 33 (4) : 337–346. DOI:10.3969/j.issn.1000-081X.2011.04.006 ]
  • [10] Yan L L, Han X L. Automatic continuous composite curve and surface with adjustable shape and smoothness[J]. Journal of Computer-Aided Design & Computer Graphics , 2014, 26 (10) : 1654–1662. [ 严兰兰, 韩旭里. 形状及光滑度可调的自动连续组合曲线曲面[J]. 计算机辅助设计与图形学学报 , 2014, 26 (10) : 1654–1662. ]
  • [11] Liu H Y, Xie X P, Li L, et al. Smooth blending of trigonometric Bézier curves and surfaces[J]. Journal of Applied Sciences , 2016, 34 (2) : 154–162. [ 刘华勇, 谢新平, 李璐, 等. 三角Bézier曲线曲面光滑融合的构造[J]. 应用科学学报 , 2016, 34 (2) : 154–162. DOI:10.3969/j.issn.0255-8297.2016.02.005 ]
  • [12] Liu H Y, Li L, Zhang D M, et al. Smooth blending of rational trigonometric Bézier curves and surfaces[J]. Journal of Zhejiang University:Science Edition , 2016, 43 (5) : 554–559. [ 刘华勇, 李璐, 张大明, 等. 有理三角Bézier曲线曲面光滑融合的构造[J]. 浙江大学学报:理学版 , 2016, 43 (5) : 554–559. DOI:10.3785/j.issn.1008-9497.2016.05.011 ]
  • [13] Poliakoff J F. An improved algorithm for automatic fairing of non-uniform parametric cubic splines[J]. Computer-Aided Design , 1996, 28 (1) : 59–66. DOI:10.1016/0010-4485(95)00048-8]
  • [14] Poli R, Kennedy J, Blackwell T. Particle swarm optimization[J]. Swarm Intelligence , 2007, 1 (1) : 33–57. DOI:10.1007/s11721-007-0002-0]