Families of univariate and bivariate subdivision ...

2 downloads 0 Views 4MB Size Report
smoothing steps. In refining step, we use the quartic B-spline based subdivision ... Keywords Approximating subdivision scheme · Non-tensor product scheme ·.
Adv Comput Math DOI 10.1007/s10444-017-9519-y

Families of univariate and bivariate subdivision schemes originated from quartic B-spline Ghulam Mustafa1

· Rabia Hameed1

Received: 25 March 2016 / Accepted: 2 February 2017 © Springer Science+Business Media New York 2017

Abstract Families of parameter dependent univariate and bivariate subdivision schemes are presented in this paper. These families are new variants of the LaneRiesenfeld algorithm. So the subdivision algorithms consist of both refining and smoothing steps. In refining step, we use the quartic B-spline based subdivision schemes. In smoothing step, we average the adjacent points. The bivariate schemes are the non-tensor product version of our univariate schemes. Moreover, for odd and even number of smoothing steps, we get the primal and dual schemes respectively. Higher regularity of the schemes can be achieved by increasing the number of smoothing steps. These schemes can be nicely generalized to contain local shape parameters that allow the user to adjust locally the shape of the limit curve/surface. Keywords Approximating subdivision scheme · Non-tensor product scheme · Lane-Riesenfeld algorithm · Quartic B-spline · Polynomial generation and reproduction Mathematics Subject Classification (2010) 65D17 · 65D07 · 65U07 · 65D10

1 Introduction Subdivision schemes are powerful tools in the field of free form curve and surface modeling. Catmull and Clark [3] and Doo and Sabin [11] are the pioneers of the Communicated by: Tom Lyche  Ghulam Mustafa

[email protected] Rabia Hameed [email protected] 1

Department of Mathematics, The Islamia University of Bahawalpur, Bahawalpur, Pakistan

G. Mustafa and R. Hameed

surface modeling. They generalized the bi-quadratic and bi-cubic B-spline surfaces to quadrilateral meshes of arbitrary topology. Lane-Riesenfeld [19] introduced an algorithm for generating (n+1)-degree B-spline curve and tensor product surface. The Lane-Riesenfeld algorithm is a simplest form of the refine and smooth (RS) algorithm. Stam [22], Zorin and Schr¨oder [23] presented extension of the LaneRiesenfeld algorithm to arbitrary meshes. They showed that the Catmull and Clark’s [3] and Doo and Sabin’s [11] schemes are the special cases of their family of midpoint subdivision schemes. The Lane-Riesenfeld algorithm is actually based on the linear B-spline scheme. The symbol of the linear B-spline scheme is used as refine 2 operator r(z) = (1+z) and the symbol of its odd stencil is used as smoothing oper2 1+z ator s(z) = rodd (z) = 2 . So the n-th family member of Lane-Riesenfeld schemes has the symbol an (z) = (s(z))n r(z) =

(1 + z)n+2 , 2n+1

n ∈ N.

Cashman et al. [2] also proposed RS algorithm which is based on Dubuc-Deslauriers 4-point interpolatory scheme [10]. They used the symbol of 4-point interpolatory 4 2 (− z2 + 2z − 12 ) and the symbol of its odd scheme as refine operator r(z) = (1+z) 23   2 stencil as the smoothing operator s(z) = rodd (z) = 1+z (− z8 + 54 z − 18 ). The n-th 2 member of their family has the symbol an (z) = (s(z))n r(z) =

(1 + z)n+4 (−z2 + 10z − 1)n (−z2 + 4z − 1). 24n+4

Ashraf et al. [1] used similar technique as used by Cashman et al. [2] on DubucDeslauriers 6-point interpolatory scheme [10]. The n-th member of their family has the symbol an (z) =

(1 + z)n+6 4 (3z − 28z3 + 178z2 − 28z + 3)n (3z4 − 18z3 + 38z2 − 18z + 3). 28n+8

Mustafa et al. [20] used the symbol of 4-point interpolatory subdivision scheme [14] as refine operator and the symbol of even stencil of the 4-point approximating scheme [17] as smoothing operator. The n-th member of their family has the symbol an (z) =

(1 + z)n+6 (−z2 + 10z − 1)n (−3z2 + 10z − 3). 24n+7

An approximating subdivision scheme was used as refine operator for the first time by Romani [21]. In her algorithm the smoothing step has symbol s(z) = 1+z 2 . The new family of RS subdivision schemes is described by the two-parameter symbol an,w (z) = (s(z))n rn,w (z), where rn,w (z) =



 1+z (−w(n + 3)z4 + 8wz3 + 2(w(n − 5) + 1)z2 + 8wz − w(n + 3)), 2

Families of univariate and bivariate subdivision schemes...

n is used to identify the family member, whereas w ∈ R is the shape parameter that can be used to modify the shape of the limit curve. Romani’s variant of LaneRiesenfeld algorithm compared with the one proposed by Cashman et al., modifies only refine step. In fact, she considers the family of RS algorithms where, like in the well-known Lane-Riesenfeld algorithm, the smoothing step consists in performing averages of adjacent vertices, but, differently from the Lane-Riesenfeld algorithm, she applies refine step based on a perturbation of Chaikin’s corner cutting algorithm [4]. Whereas this paper investigates a new variant of Lane-Riesenfeld algorithm, that compared with the one proposed by Romani, modifies only refine step while smoothing step remains same. The difference between this refine step and the one proposed by Romani is: • •

Romani computes Chaikin’s points, whereas this paper computes quartic Bspline (QB) points defined around the initial control points. Romani corrects the position of initial control points by two vectors that are comprised/configured by Chaikin’s points, whereas this study corrects the position of quartic B-spline points by two vectors that are comprised/configured by initial control points.

Geometrical interpretations of refine steps of two different approaches are shown in Fig. 1. For the detailed description of the notations used in this figure, we refer to the next section and [21]. 1.1 Definitions and established results A general compact form of a binary subdivision scheme Sa which maps a mesh f k = {fαk , α ∈ Zs } to a refined mesh f k+1 = {fαk+1 , α ∈ Zs } is defined as  fαk+1 = aα−2β fβk , α ∈ Zs . β∈Zs

(a) Our refine step

(b) Romani’s refine step

Fig. 1 This figure shows the geometrical representation of refine steps of two different approaches. Solid black circles show the control points at (k − 1)-th subdivision level, red crosses show QB-points in (a) and k−1,1 which lie on Chaikin points in (b), whereas blue solid circles show the refined points f2ik−1,1 and f2i+1 k−1,1 k−1,1 the vectors D2i and D2i+1 respectively

G. Mustafa and R. Hameed

For s = 1 and s = 2, the above scheme is univariate and bivariate respectively. The symbol of a subdivision scheme is given by the Laurent polynomial  a(z) = aα zα , z ∈ (C \ {0})s , α∈Zs

where the sequence of scalars a = {aα , α ∈ Zs } is called mask of the scheme Sa . The sequence of refined data {fαk , α ∈ Zs } can be attached to a parametric value k {tαk , α ∈ Zs } with tα+1 − tαk = 2−k (if s = 1, then 2−k = 2−k and if s = 2, then −k −k −k 2 = (2 , 2 )), α ∈ Zs and f k be the piecewise linear function that interpolates the data {fαk , α ∈ Zs } at the parameters {tαk , α ∈ Zs }. The choice of the parametric value tαk is set to a general expression depending on shift parameter τ ∈ Rs as follows α +τ , α ∈ Zs , k ∈ N0 . (1.1) 2k The appropriate choice of τ is given by   m ∂ a(z)  /2s , for m = (m1 , m2 , . . . , ms ) ∈ Ns0 with m1 + m2 + . . . + τ = ∂zm  tαk =

z=1

ms = 1,

(1.2)

where 1 = 1 and z = z for univariate case and 1 = (1, 1) and z = (z1 , z2 ) for bivariate case.    /2. If τ = 0, For instance, in univariate case i.e. s = 1, we have τ = da(z)  dz

z=1 α+ 1 = then tαk = 2k 2 and it 2, we have τ = (τ1 , τ2 ) =

and it is called primal parametrization. If τ then = is called dual parametrization. In bivariate  case i.e. s =    da(z1 ,z2 )  da(z1 ,z2 )  k dz1 z =1,z =1 , dz2 z =1,z =1 /4. If τ = (τ1 , τ2 ) = (0, 0) = 0, then tα = 1 2 1 2   α 1 1 τ and it is called primal parametrization. It is dual if = (τ , τ ) = , = 12 1 2 k 2 2 2 tαk

and tαk =

1 2,

α 2k

α+ 12 2k

.

Theorem 1.1 [13] Let a(z) =

 α∈Zs

aα zα , z ∈ (C \ {0})s be the generating poly-

nomial of s-variate binary subdivision scheme, then the necessary conditions for the convergence of Sa are  ai−2j = 1, i ∈ {0, 1}s . j ∈Zs

This implies a(1) = a(u) = 0, u ∈ {1, −1}s /{1}. i.e. if s = 1, 1 = 1 and necessary conditions are a(1) = 2 and a(−1) = 0. For s = 2, 1 = (1, 1) and necessary conditions are a(1, 1) = 4, a(1, −1) = 0, a(−1, 1) = 0 and a(−1, −1) = 0. 2s ,

Theorem 1.2 [13] Let a(z) = a(z1 , z2 ) =

 i,j

j

ai,j z1i z2 be the symbol of a bivariate

subdivision scheme Sa . If a(z1 , z2 ) can be factorized as a(z1 , z2 ) = (1 + z1 )n (1 + z2 )n b(z1 , z2 ),

Families of univariate and bivariate subdivision schemes...

and if the schemes with the symbol ai,j (z1 , z2 ) =

2i+j a(z1 , z2 ) , (1 + z1 )i (1 + z1 )j

i, j = 0, 1, . . . , n

are convergent, then the scheme Sa generates C n limit functions. Moreover, ∂ i+j j ∂t1i ∂t2

Sa∞ f 0 = Sa∞i,j i1 2 f 0 , j

i, j = 0, 1, . . . , n.

Theorem 1.3 [5] A convergent s-variate subdivision scheme Sa generates polynomials of degree d if and only if a(1) = 2s , a(u) = 0 for u ∈ {1, −1}s \{1} and m ∂ a(z)  = 0 for m = (m1 , m2 , . . . , ms ) ∈ Ns0 with m1 + m2 + . . . + ms ≤ d. ∂zm  z=u

Theorem 1.4 [5] A convergent s-variate subdivision scheme Sa reproduces polynomials of degree d if and only if it generates polynomials of degree d and  s j l −1 ∂ m a(z)  s = 2 (τl − hl ) for m = (m1 , m2 , . . . , ms ) ∈ Ns0 with m1 + m2 +  m ∂z z=1

. . . + ms ≤ d.

l=1 hl =0

The article is organized as follows. In Section 2, the framework to produce family of univariate subdivision schemes is presented and then discussion on basic limit functions, smoothness, polynomial generation and reproduction of the schemes is carried out. In Section 3, a non-tensor-product family of bivariate subdivision schemes is constructed. The study also presents properties and applications of some members of the family in this section. Conclusions are given in Section 4.

2 Framework for univariate schemes A subdivision process where each subdivision step first refines a set of data and then applies required number of smoothing steps on the refined data is called the RS algorithm. In other words, the refining operator R maps a coarse polygon f k−1 = f k−1,0 into a refined polygon f k−1,1 , i.e. f k−1,1 = Rf k−1 while for l ∈ N, the smoothing operator S maps a polygon f k−1,1 into a new polygon f k−1,l+1 = f k,0 = f k , i.e. f k = f k−1,l+1 where f k−1,l+1 = Sf k−1,l = S 2 f k−1,l−1 = . . . = S l f k−1,1 . The composition of refine and smooth mappings is called the RS algorithm. Let {fik−1 }iZ = {fik−1,0 }iZ be the points at (k − 1)-th step then compute quartic k−1,1 k−1,1 and Q2i+1 around the point fik−1,0 B-spline points Q2i 5 k−1,0 10 k−1,0 1 k−1,0 + fi + fi+1 , f 16 i−1 16 16 1 k−1,0 10 k−1,0 5 k−1,0 fi−1 + fi = + fi+1 . 16 16 16

k−1,1 Q2i = k−1,1 Q2i+1

(2.1)

G. Mustafa and R. Hameed k−1,1 k−1,1 k−1,1 Now correct the position of the points Q2i and Q2i+1 by the vectors 2μD2i k−1,1 and 2μD2i+1 , i.e. k−1,1 k−1,1 + 2μD2i , f2ik−1,1 = Q2i k−1,1 k−1,1 k−1,1 f2i+1 = Q2i+1 + 2μD2i+1 ,

(2.2)

where k−1,1 k−1,0 = 2(l + 3)F2ik−1,1 + (l − 1)Ei−1,i , D2i k−1,1 k−1,1 k−1,0 D2i+1 = 2(l + 3)F2i+1 + (l − 1)Ei,i+1 ,

(2.3)

k−1,1 k−1,0 k−1,1 is the resultant vector of 2(l + 3)F2ik−1,1 and (l − 1)Ei−1,i . D2i+1 and i.e. D2i k−1,1 k−1,0 is the resultant vector of 2(l + 3)F2i+1 and (l − 1)Ei,i+1 as shown in Fig. 1, where 1 k−1,1 k−1,1 F2ik−1,1 = (Q2i − Q2i+1 ), 2 1 k−1,1 k−1,1 k−1,1 = (Q2i+1 − Q2i ), (2.4) F2i+1 2 k−1,1 the vectors F2ik−1,1 and F2i+1 have same magnitude but opposite in direction, whereas 1 k−1,0 k−1,0 = (fik−1,0 − fi−1 ), Ei−1,i 2 1 k−1,0 k−1,0 = (fik−1,0 − fi+1 ). (2.5) Ei,i+1 2 Now by substituting (2.1) and (2.3–2.5) in (2.2), we get the following parameter dependent subdivision scheme k−1,0 k−1,0 f2ik−1,1 = αl,μ fi−1 + βl,μ fik−1,0 + γl,μ fi+1 , k−1,1 k−1,0 k−1,0 = γl,μ fi−1 + βl,μ fik−1,0 + αl,μ fi+1 , f2i+1

(2.6)

where αl,μ =

μ 5 − (l − 5), 16 2

βl,μ =

10 + μ(l − 1), 16

γl,μ =

μ 1 − (l + 3). 16 2

The point fik−1,1 is refined control point at (k − 1)-th subdivision step. We use this scheme as refine operator R which maps the course polygon f k−1,0 into refined polygon f k−1,1 . Now the last step in our framework is to smooth the control polygon f k−1,1 = k−1,1 {fi }iZ by applying l-time smoothing operator. That is we map fik−1,1 into fik = k,0 fi = fik−1,l+1 by using following smoothing operator l   1  l k−1,1 k , fi+ l  = l fi+p p 2 2 p=0

where  is a floor function.

Families of univariate and bivariate subdivision schemes...

The symbol of scheme (2.6) can be written as    1+z  rl,μ (z) = z−2 ηl,μ z4 + νl,μ z3 + ωl,μ z2 + νl,μ z + ηl,μ , 2 where ηl,μ =

1 1 3 − μ(l + 3), νl,μ = + 8μ, ωl,μ = − μ(10 − 2l), 8 2 4

(2.7)

while the symbol associated with the smoothing step S is s(z) = 1+z 2 . By applying one time refine step and l-time smoothing steps, we get a new family of subdivision schemes with symbol  1 + z l+1   l − 2l −2 ηl,μ z4 + νl,μ z3 + ωl,μ z2 + νl,μ z al,μ (z) = (s(z)) rl,μ (z) = z 2

+ηl,μ , (2.8) where ηl,μ , νl,μ and ωl,μ are defined in (2.7),  is a ceiling function, l is the parameter that enumerates the number of applied smoothing steps, and is thus used to identify the family member, while the parameter μ controls the shape of the limit curve. The role of the parameter is illustrated in Fig. 2. In this figure the blue polygons are initial polygons while red polygon in Fig. 2a is an initial polygon for the red curves generated by the scheme (2.6) shown in Fig. 2b and c. Red crosses show the QB-points, whereas in Fig. 2b red, blue and orange bullets are the refined points k−1,1 1 1 1 f2ik−1,1 and f2i+1 for μ = 64 , μ = 32 and μ = 16 respectively. In Fig. 2c 1 1 , μ = − 32 and red, blue and orange bullets are the refined points for μ = − 64 k−1,1 k−1,1 1 and 2μD2i+1 are represented by green μ = − 16 respectively. The 2μD2i vectors. Remark 2.1 It is remarkable that for μ = 0, proposed family of schemes reduces to the B-spline schemes of degree-(l + 4). Throughout the paper Sal,μ means the subdivision scheme corresponding to the Laurent polynomial al,μ defined in (2.8).

(a) Initial polygons

(b) Positive µ

Fig. 2 This figure shows the role of shape parameter μ in our refine step

(c) Negative µ

G. Mustafa and R. Hameed

Remark 2.2 If l is even, the family of subdivision schemes associated with the symbol (2.8) reduces to the family of dual de Rham-type subdivision schemes [9]. Moreover, for l = 2k − 2 where k is a non-negative integer and μ = 0, the family of schemes associated with the symbol (2.8) reduces to the B-spline schemes of degree(2k + 2). The obtained family belongs to the class of de Rham-type approximating subdivision schemes given in ([9], Table 1). 2.1 Properties of univariate schemes In this section, we investigate some basic properties of the proposed family of subdivision schemes. In Theorem 2.3, we study the smoothness analysis of the family of schemes by using the Laurent polynomial method. Polynomial generation and reproduction of the schemes Sal,μ are investigated in Theorems 2.4 and 2.5, respectively. Basic support widths of the family of schemes are presented in coming subsection. Lemma 2.1 The schemes associated with the symbol (2.8) are dual schemes for l = 2h, h ∈ N. Proof Since the symbol (2.8) satisfies the relation z−1 a2h,μ (z) = a2h,μ (z−1 ) for l = 2h then by [8] the schemes are even symmetric. Again by [8], the even symmetric schemes are dual. This completes the proof. Theorem 2.2 The univariate subdivision schemes Sal,μ associated with the symbol (2.8) are non-interpolatory schemes for all l ∈ N. Proof If l = 2h, h ∈ N, by Lemma 2.3 the schemes associated with the symbol (2.8) are dual. Since interpolatory schemes are always primal ([8], Corollary 5.3) then these dual schemes are non-interpolatory. If l = 2h − 1, h ∈ N, the symbol (2.8) reduces to the symbol of primal schemes i.e. a2h−1,μ (z) = a2h−1,μ (z−1 ). In this case (2.8) reduces to 

a2h−1,μ (z) = z

−h−2

 1 + z 2h 

+η2h−1,μ ,

2

η2h−1,μ z4 + ν2h−1,μ z3 + ω2h−1,μ z2 + ν2h−1,μ z

where η2h−1,μ =

1 1 3 − μ(2h + 2), ν2h−1,μ = + 8μ, ω2h−1,μ = − μ(12 − 4h). 8 2 4

By [6], a2h−1,μ (z) is the symbol of an interpolatory scheme if and only if it satisfies a2h−1,μ (z) + a2h−1,μ (−z) = 2.

Families of univariate and bivariate subdivision schemes...

If h is odd, by expanding L.H.S. of above equation, we get  h   z−h−2 2h 2i+1 a2h−1,μ (z) + a2h−1,μ (−z) = 2h−1 ν2h−1,μ (1+ z2 ) + (η2h−1,μ + z 2i 2 i=0  h   2h 2 4 2i−1 . z ω2h−1,μ z + η2h−1,μ z ) 2i − 1 i=1

If h is even, L.H.S. takes the form

 h   z−h−2 2h a2h−1,μ (z)+a2h−1,μ (−z) = 2h−1 (η2h−1,μ +ω2h−1,μ z2 + η2h−1,μ z4 ) 2i 2 i=0  h   2h 2i 2 × z + ν2h−1,μ (1 + z ) z2i . 2i − 1 i=1

This implies that a2h−1,μ (z) + a2h−1,μ (−z) = 2 ∀ h. Hence these primal schemes are non-interpolatory. This completes the proof. It is easy to see that al,μ (1) = 2 and al,μ (−1) = 0. So the necessary conditions for the convergence of the schemes Sal,μ are satisfied. The continuity of proposed univariate schemes is checked in the coming theorem. Theorem 2.3 The family of subdivision schemes Sal,μ is C l continuous   1 1 • For μ ∈ − 16 , 16 , l = 1, 2, 3, 4, 5,   1 • For μ ∈ − 18 , 16 , l = 6,   5 3 • For μ ∈ − 8(l−1) , 8(l−1) , l ≥ 7. Proof The symbol (2.8) of the family of schemes Sal,μ can be simplified as al,μ (z) = with

(1 + z)l+1 bl,μ (z), 2l

 1 ηl,μ z4 + νl,μ z3 + ωl,μ z2 + νl,μ z + ηl,μ , 2 where ηl,μ , νl,μ and ωl,μ are defined in (2.7). Now by ([15], Corollary 4.14), we have to prove that bl,μ (z) is contractive,

 [n] [n] n < 1 where bl,μ = max |b(l,μ)(i−2 (z) = i.e. Sb[n] nj )| : 0 ≤ i < 2 l,μ ∞ bl,μ (z) =

n j =1

j ∈Z

bl,μ

j −1 (z2 ).

G. Mustafa and R. Hameed

The condition Sbl,μ ∞ < 1 yields      1  3  + μ(l + 3) − − μ(10 − 2l)    2 4

 1