A Note on Subdivision Kwan Pyo Ko Dongseo University
-
Upload
dominick-long -
Category
Documents
-
view
220 -
download
2
description
Transcript of A Note on Subdivision Kwan Pyo Ko Dongseo University
What is Subdivision?• Subdivision produces a smooth curve or surface as the limit of
a sequence of successive refinements• We can repeat a simple operation and obtain a smooth result
after doing it an infinite number of times
pj +1 = Spj
(Sp)a =X
b®a¡ 2bpb
Subdivision Surfaces
historyClassical schemes:
• De Rahm(1947)• Chaikin(1974)- An algorithm for high speed curve generation• Riesenfeld(1975)- On Chaikin’s algorithm• Catmull-Clark (1978)- Recursively generated B-spline surfaces on arbitrary topological meshes• Doo-Sabin (1978)- Behavior of recursive division surfaces near extraordinary points• Ball-Storry(1986)- A matrix approach to the analysis of recursively generated B-spline surfaces• Loop (1987)- Smooth subdivision surfaces based on triangles (new domain, eigen analysis)• Dyn,Levin,Gregory(1987)- A 4-point interpolatory subdivision scheme for curve design• (1990)- A butterfly subdivision scheme for surface interpolation with tension control• Reif(1995)- A unified approach to subdivision algorithms near extraordinary vertices.
history
New Schemes: Kobbelt(1996)- Interpolatory subdivision on open quadrilateral nets with arbitrary topology (2000)- subdivision Velho(2000)- Quasi 4-8 subdivision Velho-Zorin(2000)- 4-8 subdivision Dogson,Ivrissimtzis,Sabin(2003)- Characteristic of dual triangular subdivision (2004)- subdivision Non-uniform schemes: Warren(1995)- Binary subdivision schemes for functions of irregular knot sequences Gregory,Qu(1996)- Non-uniform corner cutting Sederberg,Sewell,Sabin(1998)- Non-uniform recursive subdivision surfaces Dyn(1999)- Using Laurent polynomial representation for the analysis of non-uniform binary SS Non-stationary schemes:Dyn,Levin(1995)- Analysis of asymptotically equivalent binary subdivision schemesMorin,Warren,Weimer(2001)- A subdivision scheme for surfaces of revolutionDyn,Levin,Luzzatto(2003)- Non-stationary interpolatory SS reproducing spaces of exponential polys.
p3
p3p
5
Schemes• Catmull-Clark (1978)• Doo-Sabin (1978)• Loop (1987)• Butterfly (1990)• Kobbelt (1996)• Mid-edge (1996 / 1997)• Subdivision (2000)p
3
Why Subdivision?• Arbitrary topology
• Multi-resolution
• Simple/Efficient code
• Construct Wavelet
• Analysis
Chaikin’s Algorithm
-converges to the quadratic B-Spline.
pk+12i+1 = 1
4pki + 3
4pki+1
pk+12i = 3
4pki + 1
4pki+1
Cubic Spline Algorithm
-converges to the cubic B-Spline.-converges to the cubic B-Spline.
pk+12i+1 = 1
8pki + 3
4pki+1 + 1
8pki+2
pk+12i = 1
2pki + 1
2pki+1
4-point Interpolatory Scheme (N. Dyn, D.Levin and J.Gregory)
-continuous forcontinuous for-CC11 for for
pk+12i = pk
i
jwj < 14
0< w < 18
pk+12i+1 =
µ 12 + w
¶(pk
i +pki+1) ¡ w(pk
i ¡ 1 + pki+2)
Deslauriers-Dubuc Scheme
• Finding a minimally supported mask such that (2N+1)th degree polynomial filling property (de Villiers, Goosen and Herbst)
• DD mask has the explicit formulation
X
kaj ¡ 2kp(k) = p( j
2); j 2 Z;p2 ¼2N +1
aj = 0; jj j ¸ 2N + 2
a2j +1 = N + 124N +1
µ2N + 1N
¶ (¡ 1)j
2j +1µ 2N +1
N + j +1¶
;j = ¡ N ¡ 1;::: ;N
a2j = ±j ;0; j = ¡ N;::: ;N
Polynomial Reproducing• DD scheme obtained the mask by using
polynomial reproducing property
• 4-point DD scheme:f k+1
2i = f ki ;
f k+12i+1 = 9
16(f ki + f k
i+1) ¡ 116(f k
i¡ 1 +f ki+2):
Ternary Interpolatory Subdivision Scheme
pj +13j = pi
j
pj +13j +1 = api
j ¡ 1 + bpij +cpi
j +1 +dpij +2
pj +13j +2 = dpi
j ¡ 1 +cpij + bpi
j +1 + apij +2
a = ¡ 118 ¡ 1
6w;b= 1318 + 1
2w;c= 718 ¡ 1
2w;d= ¡ 118 + 1
6w:
C2 for 115 < w < 1
9
where the weights are given by
Mask of binary 2n-point SS• Y.Tang, K.P.Ko and B.G.Lee obtained the mask of inte
rpolatory symmetric SS by using symmetry and the necessary condition for smoothness.
[w+ 12;¡ w]
[2w+ 916;¡ 3w¡ 1
16;w]
[5w+ 75128;¡ 9w¡ 25
256;5w¡ 3256;¡ w]
[14w+ 12252048;¡ 28w¡ 245
2048;20w¡ 492048;¡ 7w¡ 5
2048;w]
General form for mask of 2n-point ISSS
• The coefficients of w can be expressed in a matrix form
A =
2666666666664
1 0 0 0 0 0 ¢¢¢ 01 ¡ 1 0 0 0 0 ¢¢¢ 02 ¡ 3 1 0 0 0 ¢¢¢ 05 ¡ 9 5 ¡ 1 0 0 ¢¢¢ 014 ¡ 28 20 ¡ 7 1 0 ¢¢¢ 042 ¡ 90 75 ¡ 35 9 ¡ 1 ¢¢¢ 0... ... ... ... ... ... ... 0
¢¢¢ ¢¢¢ ¢¢¢ ¢¢¢ ¢¢¢ ¢¢¢ ¢¢¢ (¡ 1)n¡ 1
3777777777775
• We found out that matrix A satisfied the particular rule.
A =
26664
A11 0 ¢¢¢ 0
A21 A2
2 ¢¢¢ 0... ... ... ...
An1 An
2 ¢¢¢ Ann
37775 :
Ani =
8>><>>:
An¡ 1i ¡ An¡ 1
i+1 i = 1;n = 2;3:::(¡ 1)n¡ 1 i = n2An¡ 1
i ¡ An¡ 1i ¡ 1 ¡ An¡ 1
i+1 i = 2;3:::;n;n = 3;4;:: :0 i > n:
Relation between 2n-point ISSS and DD scheme
• We have the mask of 2n-point ISSS:
aI SSS;2n2i¡ 1 = aI SSS;2n
¡ 2i+1
aI SSS;2n2i¡ 1 = aD D ;2n¡ 2
2i¡ 1 +Ani w; i = 1;2;3:::;n;n 2 N +;
aD D ;21 = 1
2; aD D ;23 = ¢¢¢= aD D ;2n¡ 2
2n¡ 1 = 0
Example (for n=3)
we get 6-point ISSS:
aI SSS;61 = aD D ;4
1 +A31w = 9
16 +2w;
aI SSS;63 = aD D ;4
3 +A32w = ¡ 1
16 ¡ 3w;aI SSS;6
5 = aD D ;45 +A3
3w = w:
[w;¡ 116 ¡ 3w; 9
16 +2w; 916 +2w;¡ 1
16 ¡ 3w;w]:
Matrix formula for the mask of 2n-point
DD scheme• The formula can be written in the form:
a =
26664
aD D ;2n1
aD D ;2n3 ...
aD D ;2n2n¡ 1
37775 =
26664
A11 A2
1 ¢¢¢ An1
0 A22 ¢¢¢ An
2... ... ... ...0 0 0 An
n
37775
26664
w1w2...
wn
37775 = AT ¤w:
wi = i24i ¡ 3
µ2i ¡ 1i ¡ 1
¶ 12i ¡ 1
Example (for n=3)
we obtain 6-point DD scheme:
A =
24
A11 0 0
A21 A2
2 0A3
1 A32 A3
3
35 =
24
1 0 01 ¡ 1 02 ¡ 3 1
35 ;
wn = [w1;w2;w3] = [12; 116; 3
256]
[ 3256;¡ 25
256; 150256; 150
256;¡ 25256; 3
256]:
Mask of D-D scheme
2 (n=1) 12 0 0 0 0
4 (n=2) 916 ¡ 1
16 0 0 06 (n=3) 150
256 ¡ 25256
3256 0 0
8 (n=4) 12252048 ¡ 245
204849
2048 ¡ 52048 0
10 (n=5) 1984532768 ¡ 2250
16384567
16384 ¡ 40516384
3565536
Generalization of Mask (G.J.Yoon)
• Consider the problem of finding mask reproducing polynomial of degree (2N+1)
We let
a = faj g2N +3j =¡ 2N ¡ 3
v = a2N +2; w = a2N +3
X
kaj ¡ 2kp(k) = p( j
2); j 2 Z; p2 ¼2N +1:
For we get the maskj=-N-1,¢¢¢;N;
a2j = ±j ;0 +(¡ 1)j +N +1µ 2N +2
N + j +1¶
v:
a2j +1 = N +124N +1
µ2N +1N
¶ (¡ 1)j
2j + 1µ 2N + 1
N +j + 1¶
+ (¡ 1)j +N +1wµ 2N + 1
N +j + 1¶ (2N +2)(2j +1)
(N + j + 2)(N ¡ j +1)
Remark• We obtain symmetric SS which reproduce all polynomi
al degree (2N+1) and which is not interpolatory.
• In case v=0, it becomes (2N+4) interpolatory SS.
• In case v=w=0, it becomes (2N+2) DD scheme.
Example • For N=1, we get
• In case v=0, we have
• In case v=w=0, it becomes 4-point DD scheme
[w; v; ¡ 116¡ 3w; ¡ 4v; 9
16+2w; 1+6v; 916+2w; ¡ 4v; ¡ 1
16¡ 3w; v; w]:
[w; 0; ¡ 116 ¡ 3w; 0; 9
16 + 2w; 1; 916 +2w; 0; ¡ 1
16 ¡ 3w; 0; w]:
[¡ 116; 0; 9
16; 1; 916; 0; ¡ 1
16]:
Approximation OrderDefinition A subdivision scheme S has
approximation order n if for initial data with smooth F enough
Theorem The approximation order of a convergent SS S, which is exact for , is n+1.
Q) Determine the approximation order of the 4-point DD scheme.
f 0i = F (ih)
j(F ¡ S1 f 0)(x)j · Chn
¼n
Subdivision ZooClassification :
• stationary or non-stationary
• binary or ternary
• type of mesh (triangle or quadrilateral)
• approximating or interpolating
• linear or non-linear
Classification• Vertex insertion (primal)
– Insert a vertex on the interior of each edge and one on the interior of each face for quads
– Loop, Kobbelt, Catmull-Clark, Modified Butterfly
• Corner cutting (dual)– Insert a face in the middle of each old face and con
nect faces in adjacent old faces– Doo-Sabin
Classification• Interpolating
– Can control the limit surface in a more intuitive manner
– Can simplify algorithms (efficient)
• Approximating
– Higher quality surfaces– Faster convergence
Face split (primal type)
Vertex split (dual type)
Triangular meshes Quad.meshes
approximating Loop Catmull-Clark
interpolating Butterfly Kobbelt
Quad. meshes
approximating
Doo-Sabin , Midedge
(C2)(C2)
(C1) (C1)
(C1)(C1)
Binary Subdivision of B-Spline
• Univariate B-Spline :
where : normalized B-Spline.
(¤) Sr (u) =X
i2Zdr
i N r (u ¡ i);
N r
Properties • Partition of unity :• Positivity :• Local support :• Continuity :• Recursion :
Pi N r (u ¡ i) = 1
N r (u) ¸ 0N r (u ¡ i) = 0 if u =2 [i; i + r +1]
N r (u) 2 C (r ¡ 1)
N r (u ¡ i) = u¡ ir N r ¡ 1(u ¡ i) + i+r+1¡ u
r N r ¡ 1(u ¡ i ¡ 1)
Idea behind Subdivision• Rewrite the curve (*) as a curve over a refined knot se
quence• (*) becomes
• Determine A single B-Spline can be decomposed into similar B-
Spline of half the support.
Z=2:
Sr (u) =X
j 2Z=2dr
j N r (2(u ¡ j ))
drj
• This results in
where
• For example
Chaikin’s algorithm
N r (u) =X
j 2Z=2crj N r (2(u ¡ j ));
drj =
X
i2Zcrj ¡ i dr
i ; j 2 Z=2
r = 2d2
0 =X
i2Zc2¡ i d2
i = ¢¢¢+ (3=4)d2¡ 1 + (1=4)d2
0 +¢¢¢
d21=2 = ¢¢¢+(1=4)d2
¡ 1 +(3=4)d20 + ¢¢¢
crj = 2¡ r ¡r+1
2j¢
Tensor Product B-Spline Surface
Sr;s(u) =X
i2Z 2
dr;si N r;s(u ¡ i)
A tensor product B-Spline is the product of two independently univariate B-Splines, i.e
N r;s(u ¡ i) = N r (u ¡ i)N s(v ¡ j )
• Example 1
• The mask set :
dr;sj =
X
i2Z 2
cr;sj ¡ i dr;s
i ; j 2 Z2=2
r = s = 2d2;2
0;0 = ¢¢¢+( 916)d2;2
¡ 1;¡ 1 + ( 316) +d2;2
0;¡ 1 + ¢¢¢
¢¢¢+( 316)d2;2
¡ 1;0 +( 116) + d2;2
0;0 +¢¢¢
cr;sj = cr
i csj
= 2¡ (r+s)µr +1
2i¶µs + 1
2j¶
• Example 2
The mask for bi-cubic tensor product B-Spline
r = s = 3
Triangular Spline
• A triangular spline surface :
where
: a normalized triangular spline of degree (r+s+t-2)
(¤) Sr;s;t(u) =X
idr;s;t
i N r;s;t(u ¡ i); u 2 R2; i 2 Z2
N r;s;t(u)
Subdivision of Triangular Spline
• The surface (*) can be rewritten over the refine grid.
• A single triangular spline is decomposed into splines of identical degree over the refined grid.
Sr;s;t(u) =X
jdr;s;t
j N r;s;t2(u ¡ j)
N r;s;t(u) =X
j2Z=2cr;s;tj N r;s;t(2(u ¡ j));
Where
The subdivision masks for the triangular spline
dr;s;tj =
X
i2Zcr;s;tj ¡ i dr;s;t
i
N 2;2;2(u)
cr;s;tj = 2¡ (r+s+t)
tX
k=0
µ r2i ¡ k
¶µ s2j ¡ k
¶µ tk¶
Doo-Sabin Scheme
• Approximating Scheme
• Tensor Product Quadratic B-Spline
• Continuity– C1 regular regions and extraordinary vertices
• Dual Quadrilateral
Doo/Sabin algorithm
ProblemSubdivision for tensor product quadratic B-spline surface has rigid restrictions on the topology.
Each vertex of the net must order 4.This restriction makes the design of many surfaces
difficult
Doo/Sabin presented an algorithm that eliminated this restriction by generalizing the bi-quadratic B-Spline subdivision rules to include arbitrary topologies.
P0
P1
P3
P2
P’’2
P’3
P’0 P’2
P’1
P’b
P’’1
P’’3P’’0
Doo-Sabin Scheme
SD S4 = 1
16
2664
9 3 1 33 9 3 11 3 9 33 1 3 9
3775
(P0\ ;P1\ ;P2\ ;P3\ )T
= SD S4 (P0;P1;P2;P3)T
• The subdivision masks for bi-quadratic B-Spline :
• Geometric view of bi-quadratic B-Spline subdivision : the new points are centroids of the sub-face formed by the face centroid, a corner vertex and the two mid-edge points next to the corner.
arbitrary topology
• For an n-sided face Doo/Sabin used subdivision matrix
• As subdivision proceeds, the refined control point mesh becomes locally rectangular everywhere except at a fixed number of points.
• Since bi-quadratic B-splines are , the surfaces generated by the Doo/Sabin algorithm are locally
SD Sn = (®i j )n£ n;
C1
C1
®i j = 5+n4n ; i = j
®i j =3+2cos
³2¼(i¡ j )
n
´
4n ; i 6= j
Maple Code:• http://
www.mrl.nyu.edu/projects/subdivision/maple/doosabin.pdf
Catmull-Clark Scheme
• Approximating Scheme
• Tensor Product Bicubic B-spline
• Continuity
- C2 regular regions– C1 extraordinary vertices
• Primal Quadrilateral
q11 : New face pointsq12 : New edge pointsq22 : New vertex points
P41P42
x
x
x
x
x
x
x
x
xx
x xx
xx
xx x x
xxx
x x x
P21
P31
P11 P12P13
P14
P22 P23
P32
P43
P44
P34P33
P24
q11 q12
q22
Catmull/Clark Algorithm
• New face points :
• New edge points :
• New vertex points :q12 =
C +D2 + P12+P22
22 ; C = q11;D = q13
q22 = Q4 + R
2 + P224
q11 = P11 + P12 + P21 +P224
Q = q11 + q13 +q31 + q334
R = 14
· µ p22 +p122
¶+
µ p22 +p212
¶+
µ p22 + p322
¶+
µ p22 + p232
¶¸
• The subdivision masks for bi-cubic B-Spline :Approach : generalization of bi-cubic B-Spline
arbitrary topology
• New face points : the average of all of the old points defining the face.
• New edge points : the average of the mid points of the old edge with average of the two new face.
• New vertex points : Q : the average of the new face points of all faces sharing an old vertex point.R : the average of the midpoints of all old edges incident on the old vertex point.S : the old vertex point.
14Q + 1
2R + 14S;
Note : tangent plane continuity was not maintained at extraordinary points.
N : order of the vertex
tangent plane continuity at extraordinary points.
S = 1N Q + 2
N R + N ¡ 3N S
Maple Code:• http://www.mrl.nyu.edu/projects/subdivision/maple/
catmullclark.pdf
Butterfly Scheme• Interpolating Scheme
• General Scheme
• Continuity– C1 regular regions
• Primal Triangular Quadrisection
Butterfly scheme
qke = 1
2(pke;1 +pk
e;2) +2w(pke;3 +pk
e;4) ¡ w8X
j =5pk
e;j
pk+1i = pk
i [ qke
The mask of the butterfly scheme:
The mask of the butterfly scheme:
Well-known Fact On the three directional grid, if the values given are co
nstant in one of the three grid directions (1,0),(0,1),(1,1), then the butterfly scheme inserts new values which are constant in the same direction and could be computed by univariate 4-point scheme along the other two grid directions.
For a new vertex in the (1,0) direction, the rule is
f k+12i+1;j = 1
2(f ki ;j + f k
i+1;j ) +2w(f ki+1;j +1 + f k
i ;j ¡ 1)¡ w(f k
i+2;j +1 + f ki ;j +1 +f k
i¡ 1;j ¡ 1 + f ki+1;j ¡ 1)
• For a new vertex in the direction (0,1)
• For (1,1)
• Under the assumption
f k+1i ;2j +1 = 1
2(f ki ;j + f k
i ;j +1) +2w(f ki+1;j +1 + f k
i ¡ 1;j )¡ w(f k
i+1;j +2 + f ki+1;j +f k
i¡ 1;j ¡ 1 + f ki ¡ 1;j +1)
f k+12i+1;2j +1 = 1
2(f ki ;j + f k
i+1;j +1) +2w(f ki+1;j + f k
i ;j +1)¡ w(f k
i+2;j +1 + f ki+1;j +2 + f k
i¡ 1;j + f ki ;j ¡ 1)
f ki ;j = f k
0;j
• We get from the first insertion rule
• For a new vertex (0,1) direction we get
• The third insertion rule gives the same rule as above.
f k+12i+1;j = f k
0;j
f k+1i ;2j +1 = (1
2 +w)(f k0;j +f k
0;j +1) ¡ w(f k0;j +2 +f k
0;j ¡ 1)
Maple Code:• http://
www.mrl.nyu.edu/projects/subdivision/maple/butterfly.pdf
Loop Scheme• Approximating Scheme
• Three Directional Box-Spline
• Continuity
– C2 regular regions– C1 extraordinary vertices
• Primal Triangular Quadrisection
Loop Scheme• A generalized triangular subdivision surface.• The subdivision masks for
• mask A generates new control points for each vertex• mask B generates new control points for edge of the
original regular triangular mesh.
N 2;2;2(u)
• Mask B : generalization is to leave this subdivision rule intact (why?)
• Mask A : The new vertex point can be computed as a convex combination of the old vertex and all old vertices that share an edge with it.
V : the old vertex point.Q : the average of the old points
that share an edge with V.
This same idea may be applied to an arbitrary triangular mesh.
V = 58V + 3
8Q;
• Note : tangent plane continuity is lost at the extraordinary points.
• Loop scheme
where
- curvature continuity at regular point.
- tangent plane continuity at extaordinary point.
V = ®N V + (1¡ ®N )Q;
®N =µ 3
8 + 14cos 2¼
N¶2
+ 38
Maple Code• http://
www.mrl.nyu.edu/projects/subdivision/maple/loop.pdf
Mid-Edge SchemeP0
P1
P3
P2
P’3
P’0 P’2
P’1
P’’0
P’’1
P’’3
P’’2
SM E4 = 1
4
2664
2 1 0 11 2 1 00 1 2 11 0 1 2
3775
(P0\ ;P1\ ;P2\ ;P3\ )T
= SM E4 (P0;P1;P2;P3)T
• For an n-sided face, subdivision matrix :
SM En = (¯ i j )n£ n;
¯ i j =1+ cos 2¼(i¡ 1)
nn
Circulant matrix
eigenvalues of can be calculated by evaluating the polynomial.
SGn =
26664
a0 a1 ¢¢¢ an¡ 1an¡ 1 a0 ¢¢¢ an¡ 2
... ... ... ...a1 a2 ¢¢¢ a0
37775
SGn
z = wj ; w = ei 2¼n ; j = 0;1;¢¢¢;n ¡ 1
Pn(z) = a0 +a1z +¢¢¢+an¡ 1zn¡ 1;
Further Subdivision Schemes
• Non-uniform scheme.• Shape preserving scheme.• Hermite-type scheme.• Variational scheme.• Quasi-linear scheme.• Poly-scale scheme.• Non-stationary scheme.• Reverse subdivision scheme.
Convexity Preserving ISS• A constructive approach is used to derive convexity pr
eserving subdivision scheme.
1. interpolatory.2. local : four points scheme.
define the first and second differences.df i = f i+1 ¡ f idi = d2f i = f i+1 ¡ 2f i + f i ¡ 1
f k+12i = f k
i
f k+12i+1 = 1
2¡f k
i +f ki+1
¢¡ F1¡f k
i¡ 1; f ki ; f k
i+1; f ki+2
¢
3. invariant under addition of affine functions.
(★)f k+1
2i = f ki
f k+12i+1 = 1
2¡f k
i +f ki+1
¢¡ F (dki ;dk
i+1): subdivision functionF
4. continuous5. homogeneous, i.e. , 6. symmetric
F (¸x;¸y) = ¸F (x;y)
f k+12i = f k
i
f k+12i+1 = 1
2¡f k
i +f ki+1
¢¡ F2
µ 12(f k
i +f ki+1);df k
i ;dki ;dk
i+1
¶
• Theorem 1 (Convexity)A subdivision scheme of type (*) satisfying conditions 1 to 6 is convex preserving for all convex data F satisfies
Note : if F=0 linear SS. only
(Question)under what conditions, SS(*) with conditions 1 to 6 and convexity condition generate continuously differentiable limit functions.Answer
0· F (x;y) · 14minfx;yg;8x;y ¸ 0
C0
• Theorem 2 (Smoothness)Under the same conditions hold as in Theorem 1.The scheme given by
continuously differentiable function which is convex and interpolate the data
• Theorem 3 (Approximation order)The convexity preserving subdivision scheme has approximation order 4.
f k+12i = f k
i
f k+12i+1 = 1
2¡f k
i +f ki+1
¢¡ 14
11
dki
+ 1dk
i + 1
Analysis of convergence and smoothness of binary SS by the
formalism of Laurent polynomials
A binary univariate SS:
f k+1i =
X
j 2Zai ¡ 2j f k
j
The general form of an interpolatory SS:
f k+12i = f k
if k+1
2i+1 =X
j 2Za1+2j f k
i¡ j
For each scheme , we define the symbol
Theorem 1 Let be a convergent SS, then
Theorem 2 Let denote a SS with symbol satisfying (*). Then there exists a SS with the property
where and
S
a(z) =X
i2Zaizi
S
a(¡ 1) = 0; a(1) = 2
a(z)
df k = S1df k¡ 1
f k = Skf 0
S
(¤)X
j 2Za2j =
X
j 2Za2j +1 = 1
S1
df k = f (df k)i = 2k(f ki+1 ¡ f k
i )g
Theorem 3 is a uniformly convergent SS, if only if
converges uniformly to the zero function
Theorem 4 Let . If is convergent, then for any initial data .
S12S1
limk! 1
(12S1)kf 0 = 0
a(z) = (1+z)m
2m b(z) SbS1
a f 0 2 Cm(R) f 0
DraftObjective: obtain the mask of interpolatory subdivision schemes
(binary 2n-point scheme, ternary 4-point scheme, butterfly scheme) using symmetry and necessary condition for smoothness.
• A binary univariate SS:
f k+1i =
X
j 2Zai ¡ 2j f k
j
The general form of an interpolatory SS:f k+1
2i = f ki
f k+12i+1 =
X
j 2Za1+2j f k
i¡ j
4-point interpolatory SS• The 4 –point interpolatory SS:
• The Laurent-polynomial of this scheme is
• By symmetry and necessary condition, we get mask
a(z) = a¡ 3z¡ 3 + a¡ 1z¡ 1 +1+a1z +a3z3
a1 +a3 = 12 [¡ w; 1
2 +w; 12 +w;¡ w]
f k+12i = f k
if k+1
2i+1 = a3f ki¡ 1 +a1f k
i + a¡ 1f ki+1 +a¡ 3f k
i+2
6-point interpolatory SS• The 6 –point interpolatory SS:
• The Laurent-polynomial of this scheme is
• By symmetry and necessary condition, we get mask
a(z) = a5z¡ 5 +a¡ 3z¡ 3 + a¡ 1z¡ 1 +1+ a1z +a3z3 + a¡ 5f ki+3
a1 +a3 + a5 = 12
24a5 +8a3 + 12 = 0
[w;¡ 116 ¡ 3w; 9
16 +2w; 916 + 2w;¡ 1
16 ¡ 3w;w]
f k+12i = f k
if k+1
2i+1 = a5f ki¡ 2 +a3f k
i ¡ 1 +a1f ki + a¡ 1f k
i+1 +a¡ 3f ki+2 +a¡ 5f k
i+3
Ternary interpolatory SS
• A ternary SS
• The general form of an interpolatory SS:
f k+1i =
X
j 2Zai ¡ 3j f k
j
f k+13i = f k
if k+1
3i+1 =X
j 2Za1+3j f k
i¡ k
f k+13i+2 =
X
j 2Za2+3j f k
i¡ k
For each scheme , we define the symbol
Theorem 5 Let be a convergent SS, then
(**) Let us consider a n-ary convergent scheme. The associated polynomial satisfies the properties.
S
a(z) =X
i2Zaizi
S
(¤)X
j 2Za3j =
X
j 2Za3j +1 =
X
j 2za3j +2 = 1
a(e2i¼=3) = a(e4i¼=3) = 0; a(1) = 3
a(1) = n; a(wpn) = 0;wp
n = e2i p¼n ;p2 f1;2;:::;n ¡ 1g
Theorem 6 Let denote a SS with symbol satisfying (*). Then there exists a SS with the property
where and
Theorem 7 is a uniformly convergent SS, if only if
converges uniformly to the zero function
a(z)
df k = S1df k¡ 1
f k = Skf 0
SS1
df k = f (df k)i = 3k(f ki+1 ¡ f k
i )g
S13S1
limk! 1
(13S1)kf 0 = 0
Ternary 4-point interpolatory SS
• The ternary 4 –point interpolatory SS:
• The Laurent-polynomial of this scheme is
a(z) = a¡ 5z¡ 5 + a¡ 4z¡ 4 +a¡ 2z¡ 2 + a¡ 1z¡ 1 +1+ a1z + a2z2 + a4z4 +a5z5
f k+13i = f k
if k+1
3i+1 = a4f ki¡ 1 +a1f k
i + a¡ 2f ki+1 +a¡ 5f k
i+2f k+1
3i+2 = a5f ki¡ 1 +a2f k
i + a¡ 1f ki+1 +a¡ 4f k
i+2
• By symmetry and necessary condition, we get mask
• Let
a1 +a2 +a4 + a5 = 13a2 ¡ 3a4 +6a5 = 1
a4 + a5 = ¡ 19
a5 = ¡ 118 + 1
6¹
f k+13i+1 : [¡ 1
18 ¡ 16¹ ; 13
18 + 12¹ ; 7
18 ¡ 12¹ ;¡ 1
18 + 16¹ ]
f k+13i+2 : [¡ 1
18 + 16¹ ; 7
18 ¡ 12¹ ; 13
18 + 12¹ ;¡ 1
18 ¡ 16¹ ]
Butterfly subdivision scheme
A =
2666666664
¢ ¢ ¢ ¢ ¡ w ¡ w ¢¢ ¢ ¡ w ¢ 2w ¢ ¡ w¢ ¡ w 2w 1
212 2w ¡ w
¢ ¢ 12 1 1
2 ¢ ¢¡ w 2w 1
212 2w ¡ w ¢
¡ w ¢ 2w ¢ ¡ w ¢ ¢¢ ¡ w ¡ w ¢ ¢ ¢ ¢
3777777775
• The bivariate Laurent polynomial of this scheme:
• The symbol of the butterfly scheme:
a(z1;z2) =3X
i=¡ 3
3X
j =¡ 3ai ;j zi
1zj2
a(z1;z2) = 12(1+ z1)(1+ z2)(1+ z1z2)(1¡ wc(z1;z2))(z1z2)¡ 1;
c(z1;z2) = 2z¡ 21 z¡ 1
2 + 2z¡ 11 z¡ 2
2 ¡ 4z¡ 11 z¡ 1
2 ¡ 4z¡ 11 ¡ 4z¡ 1
2 +2z¡ 11 z2
+ 2z1z¡ 12 +12¡ 4z1 ¡ 4z2 ¡ 4z1z2 +2z2
1z2 +2z1z22
• The verification that the scheme generates requires checking the contractivity of three schemes:
• Butterfly scheme satisfies:
2(1+z1)b(z1;z2);2(1+ z2)b(z1;z2);2(1+z1z2)b(z1;z2)
w¡ w = 0;w¡ 2w+w = 0;¡ w¡ 2w+ 12 ¡ 1
2 +2w+w = 0;
¡ 12 + 1¡ 1
2 = 0
Symmetric 8-point Butterfly SS
(1;2= ®);(3;4) = ¯);(5;6;7;8= °)
A =
2666666664
¢ ¢ ¢ ¢ ° ° ¢¢ ¢ ° ¢ ¯ ¢ °¢ ° ¯ ® ® ¯ °¢ ¢ ® 1 ® ¢ ¢° ¯ ® ® ¯ ° ¢° ¢ ¯ ¢ ° ¢ ¢¢ ° ° ¢ ¢ ¢ ¢
3777777775
• To converges to a surface with , we have
• This is the same mask of Butterfly scheme:
C0
1;2= 12 3;4= 2w 5;6;7;8= ¡ w
2° +¯ = 0;¡ 2®+1= 0
Symmetric 10-point Butterfly SS
(1;2= ®);(3;4= ¯);(5;6;7;8= °);(9;10= w)
A =
2666666664
¢ ¢ ¢ w ° ° w¢ ¢ ° ¢ ¯ ¢ °¢ ° ¯ ® ® ¯ °w ¢ ® 1 ® ¢ w° ¯ ® ® ¯ ° ¢° ¢ ¯ ¢ ° ¢ ¢w ° ° w ¢ ¢ ¢
3777777775
• To converges to a surface with , we have
• We find the mask of 10-point Butterfly scheme:
• This mask is exact with a modified Butterfly scheme
C0
° = 116 + w
1;2= 12 ¡ w 3;4= 2° 5;6;7;8= ¡ ° 9;10= w
2° +¯ = 0;¡ 2®¡ 2w+ 1= 0
Non-stationary Subdivision Scheme
• Construction an insertion rule by interpolation with the span of the functions
• Consider the k-th level insertion rule at the point based on the values at the points the solution of system leads to the
insertion rulef k+1
2i+1 = ¡ 116cos2(µ2¡ k¡ 2) cos(µ2¡ k¡ 1)(f k
i ¡ 1 +f ki+2)
+ (1+2cos(µ2¡ k¡ 1))2
16cos2(µ2¡ k¡ 2) cos(µ2¡ k¡ 1)(f ki + f k
i+1)
f1;t;cost;sintg
µ2¡ k¡ 1
¡ µ2¡ k;0;µ2¡ k;2µ2¡ k
Non-stationary Butterfly Scheme
• Objective: given a well-known non-stationary 4-point scheme as the following rule:
• Our objective is to extend this non-stationary 4-point scheme to 2D Butterfly scheme, we denote
f k+12i+1 = ¡ 1
16cos2(µ2¡ k¡ 2) cos(µ2¡ k¡ 1)(f ki ¡ 1 +f k
i+2)
+ (1+2cos(µ2¡ k¡ 1))2
16cos2(µ2¡ k¡ 2) cos(µ2¡ k¡ 1)(f ki + f k
i+1)
wk = 116cos(µ2¡ k¡ 2) cos(µ2¡ k¡ 1)
Definition Two SSs and are asymptotically equivalent if
where
Theorem 1 Let and be two asymptotically equivalent SSs having finite masks of the same support. Suppose is non-stationary and
is stationary. If is and
Then the non-stationary scheme is .
$S$
fSak g fSbk g1X
k=0kSak ¡ Sbk k < 1
kSak k1 = maxfX
ja(k)2®j;
Xja(k)
2®+1jg
fSak g fSag
fSak g fSagfSag
fSak g
Cm
Cm
1X
k=02mkkSak ¡ Sak < 1
Lemma For
The mask of :
$S$
k ¸ 0; 0 · µ · ¼=2
116 · wk · 1
8 jwk ¡ 116j · C
22k
2666666664
¢ ¢ ¢ ¢ ¡ wk ¡ wk ¢¢ ¢ ¡ wk ¢ 2wk ¢ ¡ wk¢ ¡ wk 2wk 1
212 2wk ¡ wk
¢ ¢ 12 1 1
2 ¢ ¢¡ wk 2wk 1
212 2wk ¡ wk ¢
¡ wk ¢ 2wk ¢ ¡ wk ¢ ¢¢ ¡ wk ¡ wk ¢ ¢ ¢ ¢
3777777775
fSkg
Subdivision operator associated with butterfly scheme has mask:
Theorem The non-stationary butterfly scheme is asymptotically equivalent to the stationary butterfly scheme . Moreover, the limit function belong to .
S
2666666664
¢ ¢ ¢ ¢ ¡ 1=16 ¡ 1=16 ¢¢ ¢ ¡ 1=16 ¢ 1=8 ¢ ¡ 1=16¢ ¡ 1=16 1=8 1
212 1=8 ¡ 1=16
¢ ¢ 12 1 1
2 ¢ ¢¡ 1=16 1=8 1
212 1=8 ¡ 1=16 ¢
¡ 1=16 ¢ 1=8 ¢ ¡ 1=16 ¢ ¢¢ ¡ 1=16 ¡ 1=16 ¢ ¢ ¢ ¢
3777777775
fSkg
fSgC1
Subdivision (Kobbelt)
• Approximating Scheme
• Continuity
– C2 regular regions– C1 extraordinary vertices
• Triangular Trisection
• Adaptive Refinement
p3
Subdivision• Subdivision schemes on triangle meshes are usually
based on the 1-to-4 split operation which inserts a new vertex for every edge of the given mesh and then connects the new vertices.
p3
Subdivision• This scheme is based on a split operation which first
inserts a new vertex for every face of the given mesh. Flipping the original edges. Applying this scheme twice leads to a 1-to-9 refinement of the original mesh.
p3
Smoothing Rules• Two smoothing rules, one for the placement of the
newly inserted vertices and one for the relaxation of the old ones.
• Reverse Engineering Process: instead of analyzing a given scheme, we derive one which by construction satisfies the known necessary criteria.
q:= 1
3(pi +pj + pk)
S(p) := (1¡ ®n)p+ ®n1n
n¡ 1X
i=0pi
Subdivision Matrix• When analyzing the eigen-structure of this matrix, it is not suitable
all eigenvalues are complex
.
S = 13
26666666664
u v v v ¢¢¢ v1 1 1 0 ¢¢¢ 01 0 ... ... ... ...... ... ... ... ... 01 0 ... ... 11 1 0 ¢¢¢ 0 1
37777777775
u = 3(1¡ ®n); v = 3®=n
Subdivision MatrixThe matrix has its eigen-values:
The necessary condition for C1:. The choice for the eigen-values:
R =
26666664
1 0 ¢¢¢ 0 00 0 ¢¢¢ 0 10 1 ... ... 0... ... ... ... ...0 0 1 0
37777775
~S = RS2
19[9;(2¡ 3®n)2;2+2cos(2¼1
n);¢¢¢;2+ 2cos(2¼n ¡ 1n )]
¸1 = 1> ¸2 = ¸3 > ¸ i ; i = 4;:: : ;n +1
¸4 = ¸22 ) ®n = 4¡ 2cos(2¼=n)9
Boundaries
• Edge flipping at the boundaries is not possible.
• We have to apply a univariate tri-section rule to the boundary polygon and connect the new vertices to the corresponding interior ones such that a uniform 1-to-9 split is established for each boundary triangle.
• We can obtain tri-section mask for cubic splines by convolution
13[1;2;3;2;1]¤(1
3[1;1;1])2 = 127[1;4;10;16;19;16;10;4;1]
Interpolatory -Subdivision
Stencil for a new vertex and scheme:
p3
qk+1 = 3281(pk
1 +pk2 +pk
3) ¡ 181(pk
4 +pk5 +pk
6) ¡ 281(pk
7 +pk8 +pk
9 +pk10 +pk
11 +pk12)
Interpolatory -Subdivision
Modification for extraordinary vertices:
For
For
For
p3
qk+1 = ®pk +n¡ 1X
i=0®i pk
i
®= 89; ®n
i =19 + 2
3 cos(2¼i=n) + 29 cos(4¼i=n)
n
n ¸ 5
n = 3 ®= 89;®0 = 7
27;®1 = ®2 = ¡ 227
®= 89;®0 = 7
36;®1 = ®3 = 127;®2 = ¡ 5
36n = 4
• Stencil for boundary subdivision
pk+13i¡ 1 = ¡ 4
81pki ¡ 2 + 10
27pki ¡ 1 + 20
27pki ¡ 5
81pki+1
pk+13i+1 = ¡ 5
81pki ¡ 1 + 20
27pki + 10
27pki+1 ¡ 4
81pki+2
pk3i = pk
i
• Reflection vertices across the boundary of the mesh
Eigen Structure of SS
• Successive applying of a matrix relates to eigenvectors and values.
• Applying of a matrix to a vector produces a transformation on the vector
• Why are eigenvalues and vectors so important?
same limit¸v;¸2v;¸3v;:: :
Sv = ¸v
Sv;S2v;S3v;:::
Affine Invariance Sum of row elements must be unit, so
• What is the interpretation of above relation? is an eigenvector of S and is the corresponding eigenvalue
S
26664
11...1
37775 =
26664
11...1
37775
1=
26664
11...1
37775
¸ = 1
Subdivision Limit Position• If then S is .
1= ¸0 > ¸ i ;f i = 1;ng¸ 0 C0
S = V¤V ¡ 1
=£ v0 v1 ¢¢¢vn
¤26664
¸0 0 ¢¢¢ 00 ¸1 ¢¢¢ 0... ... ... ...0 0 ¢¢¢ ¸n
37775
26664
v¡ 10
v¡ 11...
v¡ 1n
37775
• To find the limit neighborhood , we must compute
All of the vertices of the limit local neighborhood converges to the same position
P 1
S1
S1 = V¤1 V ¡ 1
=£ 1 v1 ¢¢¢vn
¤26664
1 0 ¢¢¢ 00 0 ¢¢¢ 0... ... ... ...0 0 ¢¢¢ 0
37775
26664
v¡ 10
v¡ 11...
v¡ 1n
37775 =
2664
v¡ 10
v¡ 10¢¢¢v¡ 1
0
3775
P 1 = S1 P 0 =
2664
v¡ 10
v¡ 10¢¢¢v¡ 1
0
3775 P 0
Subdivision Derivatives The 1st derivatives of the subdivision manifold
for a parameter direction u defines:
We define the 2nd and 3rd derivatives
@S@u = lim
g! 11¸g
1
pgi+1 ¡ pg
ikp0
i+1 ¡ p0i k
@2S@u2 = lim
g! 11¸g
2
(pgi+1 ¡ pg
i ) ¡ (pgi ¡ pg
i¡ 1)kp0
i+1 ¡ p0i k2
@3S@u3 = lim
g! 11¸g
3
(pgi+2 ¡ 2pg
i+1 +pgi ) ¡ (pg
i+1 ¡ 2pgi +pg
i ¡ 1)kp0
i+1 ¡ p0i k3
Example: Uniform Cubic Spline
• Eigen Decomposition of S:
S = 18
266664
1 6 1 0 00 4 4 0 00 1 6 1 00 0 4 4 00 0 1 6 1
377775
= V¤V ¡ 1
266664
1 ¡ 1 1 1 01 ¡ 1=2 2=11 0 01 0 ¡ 1=11 0 01 1=2 2=11 0 01 1 1 0 1
377775
266664
1 0 0 0 00 1=2 0 0 00 0 1=4 0 00 0 0 1=8 00 0 0 0 1=8
377775
266664
0 1=6 4=6 1=6 00 ¡ 1 0 1 00 11=6 ¡ 22=6 11=6 01 ¡ 3 3 ¡ 1 00 ¡ 1 3 ¡ 3 1
377775
Sg = V¤gV ¡ 1
= V
266664
1 0 0 0 00 ¸g
1 0 0 00 0 ¸g
2 0 00 0 0 ¸g
3 00 0 0 0 ¸g
3
377775
V ¡ 1
Sg =
26666664
6¸ g3
61+6¸ g
1 +11¸ g2 ¡ 18¸ g
36
4¡ 22¸ g2 +18¸ g
36
1¡ 6¸ g1+11¸ g
2 ¡ 6¸ g3
6 00 1+3¸ g
1+2¸ g2
64¡ 4¸ g
26
1¡ 3¸ g1 +2¸ g
26 0
0 1¡ ¸ g2
64+2¸ g
26
1¡ ¸ g2
6 00 1¡ 3¸ g
1 +2¸ g2
64¡ 4¸ g
26
1+3¸ g1 +2¸ g
26 0
0 1¡ 6¸ g1 +11¸ g
2 ¡ 6¸ g3
64¡ 22¸ g
2 +18¸ g3
61+6¸ g
1 +11¸ g2 ¡ 18¸ g
36
6¸ g3
6
37777775
Limit Position• We derive the formula for the limit position
S1 =
266664
0 1=6 4=6 1=6 00 1=6 4=6 1=6 00 1=6 4=6 1=6 00 1=6 4=6 1=6 00 1=6 4=6 1=6 0
377775
P 1 = S1 P 0
V0;0;0 = 16V¡ 2;¡ 1;0 + 4
6V¡ 1;0;1 + 16V0;1;2
1st DerivativesDifferencing and is the same as
differencing the corresponding row and of
pgi+1 pg
ii +1 i Sg
@Sg
@u = DuSg Du =
2664
¡ 1 1 0 0 00 ¡ 1 1 0 00 0 ¡ 1 1 00 0 0 ¡ 1 1
3775
@Sg
@u =
26664
¡ 2¸ g3
2¡ ¸ g
1 ¡ 3¸ g2+6¸ g
32
6¸ g2 ¡ 6¸ g
32
¸ g1 ¡ 3¸ g
2 +2¸ g3
2 00 ¡ ¸ g
1 ¡ ¸ g2
22¸ g
22
¸ g1 ¡ ¸ g
22 0
0 ¡ ¸ g1 +¸ g
22
¡ 2¸ g2
2¸ g
1 +¸ g2
2 00 ¡ ¸ g
1 +3¸ g2 ¡ 2¸ g
32
¡ 6¸ g2+6¸ g
32
¸ g1 +3¸ g
2 ¡ 6¸ g3
22¸ g
32
37775
• We derive the subdivision process is C1:
@P 1
@u = @S1
@u P 0
@V0;0;0u = ¡ 1
2V¡ 2;¡ 1;0 + 12V0;1;2
@S1
@u = limg! 1
1¸g
1
@Sg
@u =
2664
0 ¡ 12 0 1
2 00 ¡ 1
2 0 12 0
0 ¡ 12 0 1
2 00 ¡ 1
2 0 12 0
3775
2nd DerivativesThe same finite differencing can be done to the
1st derivatives matrix to compute 2nd derivatives:
@2Sg
@u2 = Duu@Sg
@uDuu =
24
¡ 1 1 0 00 ¡ 1 1 00 0 ¡ 1 1
35
@2Sg
@u2 =
24
¸g3 ¸g
2 ¡ 3 g3 ¡ 2 g
2 + 3 g3 ¸g
2 ¡ ¸g3 0
0 ¸g2 ¡ 2 g
2 ¸g2 0
0 ¸g2 ¡ ¸g
3 ¡ 2 g2 + 3 g
3 ¸g2 ¡ 3 g
3 ¸g3
35
• We derive the subdivision process is C2:
@2S1
@u2 = limg! 1
1¸g
2
@2Sg
@u2 =
24
0 1 ¡ 2 1 00 1 ¡ 2 1 00 1 ¡ 2 1 0
35
@2P 1
@u2 = @2S1
@u2 P 0
@2V0;0;0u2 = V¡ 2;¡ 1;0 ¡ 2V¡ 1;0;1 +V0;1;2
3rd DerivativesWe can iterate again to check if the subdivision
process is C3:
The rows are not the same, so the process is not C3
@3Sg
@u3 = Duuu@2Sg
@u2Duuu =
· ¡ 1 1 00 ¡ 1 1
¸
@3Sg
@u3 =· ¡ ¸g
3 3 g3 ¡ 3 g
3 ¸g3 0
0 ¡ ¸g3 3 g
3 ¡ 3 g3 ¸g
3
¸
Catmull-Clark Subdivision
Loop Subdivision
Subdivisionp
3