Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Note on Subdivision Kwan Pyo Ko Dongseo University

Similar presentations


Presentation on theme: "A Note on Subdivision Kwan Pyo Ko Dongseo University"— Presentation transcript:

1 A Note on Subdivision Kwan Pyo Ko Dongseo University kpko@dongseo.ac.kr

2 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 p j + 1 = S p j ( S p ) a = X b ® a ¡ 2 b p b

3 Subdivision Surfaces

4 history Classical 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.

5 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 schemes Morin,Warren,Weimer(2001)- A subdivision scheme for surfaces of revolution Dyn,Levin,Luzzatto(2003)- Non-stationary interpolatory SS reproducing spaces of exponential polys. p 3 p 3 p 5

6 Schemes Catmull-Clark (1978) Doo-Sabin (1978) Loop (1987) Butterfly (1990) Kobbelt (1996) Mid-edge (1996 / 1997) Subdivision (2000) p 3

7 Why Subdivision? Arbitrary topology Multi-resolution Simple/Efficient code Construct Wavelet Analysis

8 Chaikin’s Algorithm -converges to the quadratic B-Spline. p k + 1 2 i + 1 = 1 4 p k i + 3 4 p k i + 1 p k + 1 2 i = 3 4 p k i + 1 4 p k i + 1

9 Cubic Spline Algorithm -converges to the cubic B-Spline. p k + 1 2 i + 1 = 1 8 p k i + 3 4 p k i + 1 + 1 8 p k i + 2 p k + 1 2 i = 1 2 p k i + 1 2 p k i + 1

10 4-point Interpolatory Scheme (N. Dyn, D.Levin and J.Gregory) -continuous for -C 1 for p k + 1 2 i = p k i j w j < 1 4 0 < w < 1 8 p k + 1 2 i + 1 = µ 1 2 + w ¶ ( p k i + p k i + 1 ) ¡ w ( p k i ¡ 1 + p k i + 2 )

11 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 k a j ¡ 2 k p ( k ) = p ( j 2 ) ; j 2 Z ; p 2 ¼ 2 N + 1 a j = 0 ; j j j ¸ 2 N + 2 a 2 j + 1 = N + 1 2 4 N + 1 µ 2 N + 1 N ¶ ( ¡ 1 ) j 2 j + 1 µ 2 N + 1 N + j + 1 ¶ ; j = ¡ N ¡ 1 ;:::; N a 2 j = ± j ; 0 ; j = ¡ N ;:::; N

12 Polynomial Reproducing DD scheme obtained the mask by using polynomial reproducing property 4-point DD scheme: f k + 1 2 i = f k i ; f k + 1 2 i + 1 = 9 16 ( f k i + f k i + 1 ) ¡ 1 16 ( f k i ¡ 1 + f k i + 2 ) :

13 Ternary Interpolatory Subdivision Scheme

14 p j + 1 3 j = p i j p j + 1 3 j + 1 = ap i j ¡ 1 + b p i j + cp i j + 1 + d p i j + 2 p j + 1 3 j + 2 = d p i j ¡ 1 + cp i j + b p i j + 1 + ap i j + 2 a = ¡ 1 18 ¡ 1 6 w ; b = 13 18 + 1 2 w ; c = 7 18 ¡ 1 2 w ; d = ¡ 1 18 + 1 6 w : C 2 f or 1 15 < w < 1 9 where the weights are given by

15 Mask of binary 2n-point SS Y.Tang, K.P.Ko and B.G.Lee obtained the mask of interpolatory symmetric SS by using symmetry and the necessary condition for smoothness. [ w + 1 2 ; ¡ w ][ 2 w + 9 16 ; ¡ 3 w ¡ 1 16 ; w ][ 5 w + 75 128 ; ¡ 9 w ¡ 25 256 ; 5 w ¡ 3 256 ; ¡ w ][ 14 w + 1225 2048 ; ¡ 28 w ¡ 245 2048 ; 20 w ¡ 49 2048 ; ¡ 7 w ¡ 5 2048 ; w ]

16 General form for mask of 2n-point ISSS The coefficients of w can be expressed in a matrix form

17 We found out that matrix A satisfied the particular rule. A = 2 6 6 6 4 A 1 1 0 ¢¢¢ 0 A 2 1 A 2 2 ¢¢¢ 0............ A n 1 A n 2 ¢¢¢ A n n 3 7 7 7 5 : A n i = 8 > > < > > : A n ¡ 1 i ¡ A n ¡ 1 i + 1 i = 1 ;n = 2 ; 3 ::: ( ¡ 1 ) n ¡ 1 i = n 2 A n ¡ 1 i ¡ A n ¡ 1 i ¡ 1 ¡ A n ¡ 1 i + 1 i = 2 ; 3 :::; n;n = 3 ; 4 ;::: 0 i > n :

18 Relation between 2n-point ISSS and DD scheme We have the mask of 2n-point ISSS: a ISSS ; 2 n 2 i ¡ 1 = a ISSS ; 2 n ¡ 2 i + 1 a ISSS ; 2 n 2 i ¡ 1 = a DD ; 2 n ¡ 2 2 i ¡ 1 + A n i w ; i = 1 ; 2 ; 3 :::; n ; n 2 N + ; a DD ; 2 1 = 1 2 ; a DD ; 2 3 = ¢¢¢ = a DD ; 2 n ¡ 2 2 n ¡ 1 = 0

19 Example (for n=3) we get 6-point ISSS: a ISSS ; 6 1 = a DD ; 4 1 + A 3 1 w = 9 16 + 2 w ; a ISSS ; 6 3 = a DD ; 4 3 + A 3 2 w = ¡ 1 16 ¡ 3 w ; a ISSS ; 6 5 = a DD ; 4 5 + A 3 3 w = w : [ w ; ¡ 1 16 ¡ 3 w ; 9 16 + 2 w ; 9 16 + 2 w ; ¡ 1 16 ¡ 3 w ; w ] :

20 Matrix formula for the mask of 2n-point DD scheme The formula can be written in the form: w i = i 2 4 i ¡ 3 µ 2 i ¡ 1 i ¡ 1 ¶ 1 2 i ¡ 1

21 Example (for n=3) we obtain 6-point DD scheme: A = 2 4 A 1 1 00 A 2 1 A 2 2 0 A 3 1 A 3 2 A 3 3 3 5 = 2 4 100 1 ¡ 10 2 ¡ 31 3 5 ; w n = [ w 1 ; w 2 ; w 3 ] = [ 1 2 ; 1 16 ; 3 256 ][ 3 256 ; ¡ 25 256 ; 150 256 ; 150 256 ; ¡ 25 256 ; 3 256 ] :

22 Mask of D-D scheme

23 Generalization of Mask (G.J.Yoon) Consider the problem of finding mask reproducing polynomial of degree (2N+1) We let a = f a j g 2 N + 3 j = ¡ 2 N ¡ 3 v = a 2 N + 2 ; w = a 2 N + 3 X k a j ¡ 2 k p ( k ) = p ( j 2 ) ; j 2 Z ; p 2 ¼ 2 N + 1 :

24 For we get the mask j = - N - 1, ¢¢¢ ; N ; a 2 j = ± j ; 0 + ( ¡ 1 ) j + N + 1 µ 2 N + 2 N + j + 1 ¶ v : a 2 j + 1 = N + 1 2 4 N + 1 µ 2 N + 1 N ¶ ( ¡ 1 ) j 2 j + 1 µ 2 N + 1 N + j + 1 ¶ + ( ¡ 1 ) j + N + 1 w µ 2 N + 1 N + j + 1 ¶ ( 2 N + 2 )( 2 j + 1 ) ( N + j + 2 )( N ¡ j + 1 )

25 Remark We obtain symmetric SS which reproduce all polynomial 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.

26 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 ; ¡ 1 16 ¡ 3 w ; ¡ 4 v ; 9 16 + 2 w ; 1 + 6 v ; 9 16 + 2 w ; ¡ 4 v ; ¡ 1 16 ¡ 3 w ; v ; w ] : [ w ; 0 ; ¡ 1 16 ¡ 3 w ; 0 ; 9 16 + 2 w ; 1 ; 9 16 + 2 w ; 0 ; ¡ 1 16 ¡ 3 w ; 0 ; w ] : [ ¡ 1 16 ; 0 ; 9 16 ; 1 ; 9 16 ; 0 ; ¡ 1 16 ] :

27 Approximation Order Definition 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 0 i = F ( i h )j( F ¡ S 1 f 0 )( x )j · C h n ¼ n

28 Subdivision Zoo Classification : stationary or non-stationary binary or ternary type of mesh (triangle or quadrilateral) approximating or interpolating linear or non-linear

29 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 connect faces in adjacent old faces –Doo-Sabin

30 Classification Interpolating –Can control the limit surface in a more intuitive manner –Can simplify algorithms (efficient) Approximating –Higher quality surfaces –Faster convergence

31 Face split (primal type) Vertex split (dual type) Triangular meshesQuad.meshes approximatingLoopCatmull-Clark interpolatingButterflyKobbelt Quad. meshes approximatingDoo-Sabin, Midedge ( C 2 )( C 2 )( C 1 )( C 1 )( C 1 )( C 1 )

32 Binary Subdivision of B-Spline Univariate B-Spline : where : normalized B-Spline. ( ¤ ) S r ( u ) = X i 2 Z d r i N r ( u ¡ i ) ; N r

33 Properties Partition of unity : Positivity : Local support : Continuity : Recursion : P i N r ( u ¡ i ) = 1 N r ( u ) ¸ 0 N r ( u ¡ i ) = 0 i f u = 2 [ i ; i + r + 1 ] N r ( u ) 2 C ( r ¡ 1 ) N r ( u ¡ i ) = u ¡ i r N r ¡ 1 ( u ¡ i ) + i + r + 1 ¡ u r N r ¡ 1 ( u ¡ i ¡ 1 )

34 Idea behind Subdivision Rewrite the curve (*) as a curve over a refined knot sequence (*) becomes DetermineA single B-Spline can be decomposed into similar B- Spline of half the support. Z = 2 : S r ( u ) = X j 2 Z = 2 ^ d r j N r ( 2 ( u ¡ j )) ^ d r j

35

36 This results in where For example Chaikin’s algorithm N r ( u ) = X j 2 Z = 2 c r j N r ( 2 ( u ¡ j )) ; ^ d r j = X i 2 Z c r j ¡ i d r i ; j 2 Z = 2 r = 2 ^ d 2 0 = X i 2 Z c 2 ¡ i d 2 i = ¢¢¢ + ( 3 = 4 ) d 2 ¡ 1 + ( 1 = 4 ) d 2 0 + ¢¢¢ ^ d 2 1 = 2 = ¢¢¢ + ( 1 = 4 ) d 2 ¡ 1 + ( 3 = 4 ) d 2 0 + ¢¢¢ c r j = 2 ¡ r ¡ r + 1 2 j ¢

37 Tensor Product B-Spline Surface S r ; s ( u ) = X i 2 Z 2 d r ; s i 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 )

38 Example 1 The mask set : ^ d r ; s j = X i 2 Z 2 c r ; s j ¡ i d r ; s i ; j 2 Z 2 = 2 r = s = 2 ^ d 2 ; 2 0 ; 0 = ¢¢¢ + ( 9 16 ) d 2 ; 2 ¡ 1 ; ¡ 1 + ( 3 16 ) + d 2 ; 2 0 ; ¡ 1 + ¢¢¢ ¢¢¢ + ( 3 16 ) d 2 ; 2 ¡ 1 ; 0 + ( 1 16 ) + d 2 ; 2 0 ; 0 + ¢¢¢ c r ; s j = c r i c s j = 2 ¡ ( r + s ) µ r + 1 2 i ¶µ s + 1 2 j ¶

39

40 Example 2 The mask for bi-cubic tensor product B-Spline r = s = 3

41

42 Triangular Spline A triangular spline surface : where : a normalized triangular spline of degree (r+s+t-2) ( ¤ ) S r ; s ; t ( u ) = X i d r ; s ; t i N r ; s ; t ( u ¡ i ) ; u 2 R 2 ; i 2 Z 2 N r ; s ; t ( u )

43

44 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. S r ; s ; t ( u ) = X j ^ d r ; s ; t j N r ; s ; t 2 ( u ¡ j ) N r ; s ; t ( u ) = X j 2 Z = 2 c r ; s ; t j N r ; s ; t ( 2 ( u ¡ j )) ;

45 Where The subdivision masks for the triangular spline ^ d r ; s ; t j = X i 2 Z c r ; s ; t j ¡ i d r ; s ; t i N 2 ; 2 ; 2 ( u ) c r ; s ; t j = 2 ¡ ( r + s + t ) t X k = 0 µ r 2 i ¡ k ¶µ s 2 j ¡ k ¶µ t k ¶

46 Doo-Sabin Scheme Approximating Scheme Tensor Product Quadratic B-Spline Continuity –C 1 regular regions and extraordinary vertices Dual Quadrilateral

47 Doo/Sabin algorithm Problem Subdivision 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.

48 P0P0 P1P1 P3P3 P2P2 P’’ 2 P’ 3 P’ 0 P’ 2 P’ 1 P’ b P’’ 1 P’’ 3 P’’ 0 Doo-Sabin Scheme S DS 4 = 1 16 2 6 6 4 9313 3931 1393 3139 3 7 7 5 ( P 0 \ ; P 1 \ ; P 2 \ ; P 3 \ ) T = S DS 4 ( P 0 ; P 1 ; P 2 ; P 3 ) T

49 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

50 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 S DS n = ( ® i j ) n £ n ; C 1 C 1 ® i j = 5 + n 4 n ; i = j ® i j = 3 + 2 cos ³ 2 ¼ ( i ¡ j ) n ´ 4 n ; i 6 = j

51

52 Maple Code: http://www.mrl.nyu.edu/projects/subdivision/maple/do osabin.pdfhttp://www.mrl.nyu.edu/projects/subdivision/maple/do osabin.pdf

53 Catmull-Clark Scheme Approximating Scheme Tensor Product Bicubic B-spline Continuity - C 2 regular regions –C 1 extraordinary vertices Primal Quadrilateral

54 q 11 : New face points q 12 : New edge points q 22 : New vertex points P 41 P 42 Catmull/Clark Algorithm

55 New face points : New edge points : New vertex points : q 12 = C + D 2 + P 12 + P 22 2 2 ; C = q 11 ; D = q 13 q 22 = Q 4 + R 2 + P 22 4 q 11 = P 11 + P 12 + P 21 + P 22 4 Q = q 11 + q 13 + q 31 + q 33 4 R = 1 4 ·µ p 22 + p 12 2 ¶ + µ p 22 + p 21 2 ¶ + µ p 22 + p 32 2 ¶ + µ p 22 + p 23 2 ¶¸

56 The subdivision masks for bi-cubic B-Spline : Approach : generalization of bi-cubic B-Spline arbitrary topology

57 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. 1 4 Q + 1 2 R + 1 4 S ;

58 Note : tangent plane continuity was not maintained at extraordinary points. N : order of the vertex tangent plane continuity at extraordinary points. ^ S = 1 N Q + 2 N R + N ¡ 3 N S

59

60 Maple Code: http://www.mrl.nyu.edu/projects/subdivision/maple/cat mullclark.pdfhttp://www.mrl.nyu.edu/projects/subdivision/maple/cat mullclark.pdf

61 Butterfly Scheme Interpolating Scheme General Scheme Continuity –C 1 regular regions Primal Triangular Quadrisection

62 Butterfly scheme q k e = 1 2 ( p k e ; 1 + p k e ; 2 ) + 2 w ( p k e ; 3 + p k e ; 4 ) ¡ w 8 X j = 5 p k e ; j p k + 1 i = p k i [ q k e

63 The mask of the butterfly scheme:

64

65 Well-known Fact On the three directional grid, if the values given are constant 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 + 1 2 i + 1 ; j = 1 2 ( f k i ; j + f k i + 1 ; j ) + 2 w ( f k i + 1 ; j + 1 + f k i ; j ¡ 1 ) ¡ w ( f k i + 2 ; j + 1 + f k i ; j + 1 + f k i ¡ 1 ; j ¡ 1 + f k i + 1 ; j ¡ 1 )

66 For a new vertex in the direction (0,1) For (1,1) Under the assumption f k + 1 i ; 2 j + 1 = 1 2 ( f k i ; j + f k i ; j + 1 ) + 2 w ( f k i + 1 ; j + 1 + f k i ¡ 1 ; j ) ¡ w ( f k i + 1 ; j + 2 + f k i + 1 ; j + f k i ¡ 1 ; j ¡ 1 + f k i ¡ 1 ; j + 1 ) f k + 1 2 i + 1 ; 2 j + 1 = 1 2 ( f k i ; j + f k i + 1 ; j + 1 ) + 2 w ( f k i + 1 ; j + f k i ; j + 1 ) ¡ w ( f k i + 2 ; j + 1 + f k i + 1 ; j + 2 + f k i ¡ 1 ; j + f k i ; j ¡ 1 ) f k i ; j = f k 0 ; j

67 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 + 1 2 i + 1 ; j = f k 0 ; j f k + 1 i ; 2 j + 1 = ( 1 2 + w )( f k 0 ; j + f k 0 ; j + 1 ) ¡ w ( f k 0 ; j + 2 + f k 0 ; j ¡ 1 )

68 Maple Code: http://www.mrl.nyu.edu/projects/subdivision/maple/but terfly.pdfhttp://www.mrl.nyu.edu/projects/subdivision/maple/but terfly.pdf

69 Loop Scheme Approximating Scheme Three Directional Box-Spline Continuity –C 2 regular regions –C 1 extraordinary vertices Primal Triangular Quadrisection

70 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 )

71 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 = 5 8 V + 3 8 Q ;

72 Note : tangent plane continuity is lost at the extraordinary points.

73 Loop scheme where -curvature continuity at regular point. -tangent plane continuity at extaordinary point. ^ V = ® N V + ( 1 ¡ ® N ) Q ; ® N = µ 3 8 + 1 4 cos 2 ¼ N ¶ 2 + 3 8

74 Maple Code http://www.mrl.nyu.edu/projects/subdivision/maple/loo p.pdfhttp://www.mrl.nyu.edu/projects/subdivision/maple/loo p.pdf

75 Mid-Edge Scheme P0P0 P1P1 P3P3 P2P2 P’ 3 P’ 0 P’ 2 P’ 1 P’’ 0 P’’ 1 P’’ 3 P’’ 2 S ME 4 = 1 4 2 6 6 4 2101 1210 0121 1012 3 7 7 5 ( P 0 \ ; P 1 \ ; P 2 \ ; P 3 \ ) T = S ME 4 ( P 0 ; P 1 ; P 2 ; P 3 ) T For an n-sided face, subdivision matrix : S ME n = ( ¯ i j ) n £ n ; ¯ i j = 1 + cos 2 ¼ ( i ¡ 1 ) n n

76

77

78 Circulant matrix eigenvalues of can be calculated by evaluating the polynomial. S G n = 2 6 6 6 4 a 0 a 1 ¢¢¢ a n ¡ 1 a n ¡ 1 a 0 ¢¢¢ a n ¡ 2............ a 1 a 2 ¢¢¢ a 0 3 7 7 7 5 S G n z = w j ; w = e i 2 ¼ n ; j = 0 ; 1 ; ¢¢¢ ; n ¡ 1 P n ( z ) = a 0 + a 1 z + ¢¢¢ + a n ¡ 1 z n ¡ 1 ;

79 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.

80 Convexity Preserving ISS A constructive approach is used to derive convexity preserving subdivision scheme. 1.interpolatory. 2.local : four points scheme. define the first and second differences. df i = f i + 1 ¡ f i d i = d 2 f i = f i + 1 ¡ 2 f i + f i ¡ 1 f k + 1 2 i = f k i f k + 1 2 i + 1 = 1 2 ¡ f k i + f k i + 1 ¢ ¡ F 1 ¡ f k i ¡ 1 ; f k i ; f k i + 1 ; f k i + 2 ¢

81 3. invariant under addition of affine functions. ( ★ ) f k + 1 2 i = f k i f k + 1 2 i + 1 = 1 2 ¡ f k i + f k i + 1 ¢ ¡ F ( d k i ; d k i + 1 ) : subdivision function F 4. continuous 5. homogeneous, i.e., 6. symmetric F ( ¸ x ; ¸ y ) = ¸ F ( x ; y ) f k + 1 2 i = f k i f k + 1 2 i + 1 = 1 2 ¡ f k i + f k i + 1 ¢ ¡ F 2 µ 1 2 ( f k i + f k i + 1 ) ; df k i ; d k i ; d k i + 1 ¶

82 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=0linear 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 ) · 1 4 m i n f x ; y g ; 8 x ; y ¸ 0 C 0

83 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 + 1 2 i = f k i f k + 1 2 i + 1 = 1 2 ¡ f k i + f k i + 1 ¢ ¡ 1 4 1 1 d k i + 1 d k i + 1

84 Analysis of convergence and smoothness of binary SS by the formalism of Laurent polynomials A binary univariate SS: f k + 1 i = X j 2 Z a i ¡ 2 j f k j The general form of an interpolatory SS: f k + 1 2 i = f k i f k + 1 2 i + 1 = X j 2 Z a 1 + 2 j f k i ¡ j

85 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 i 2 Z a i z i S a ( ¡ 1 ) = 0 ; a ( 1 ) = 2 a ( z ) df k = S 1 df k ¡ 1 f k = S k f 0 S ( ¤ ) X j 2 Z a 2 j = X j 2 Z a 2 j + 1 = 1 S 1 df k = f( df k ) i = 2 k ( f k i + 1 ¡ f k i )g

86 Theorem 3 is a uniformly convergent SS, if only if converges uniformly to the zero function Theorem 4Let. If is convergent, then for any initial data. S 1 2 S 1 l i m k ! 1 ( 1 2 S 1 ) k f 0 = 0 a ( z ) = ( 1 + z ) m 2 m b ( z ) S b S 1 a f 0 2 C m ( R ) f 0

87 Draft Objective: 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 + 1 i = X j 2 Z a i ¡ 2 j f k j The general form of an interpolatory SS: f k + 1 2 i = f k i f k + 1 2 i + 1 = X j 2 Z a 1 + 2 j f k i ¡ j

88 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 ¡ 3 z ¡ 3 + a ¡ 1 z ¡ 1 + 1 + a 1 z + a 3 z 3 a 1 + a 3 = 1 2 [ ¡ w ; 1 2 + w ; 1 2 + w ; ¡ w ] f k + 1 2 i = f k i f k + 1 2 i + 1 = a 3 f k i ¡ 1 + a 1 f k i + a ¡ 1 f k i + 1 + a ¡ 3 f k i + 2

89 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 ) = a 5 z ¡ 5 + a ¡ 3 z ¡ 3 + a ¡ 1 z ¡ 1 + 1 + a 1 z + a 3 z 3 + a ¡ 5 f k i + 3 a 1 + a 3 + a 5 = 1 2 24 a 5 + 8 a 3 + 1 2 = 0 [ w ; ¡ 1 16 ¡ 3 w ; 9 16 + 2 w ; 9 16 + 2 w ; ¡ 1 16 ¡ 3 w ; w ] f k + 1 2 i = f k i f k + 1 2 i + 1 = a 5 f k i ¡ 2 + a 3 f k i ¡ 1 + a 1 f k i + a ¡ 1 f k i + 1 + a ¡ 3 f k i + 2 + a ¡ 5 f k i + 3

90 Ternary interpolatory SS A ternary SS The general form of an interpolatory SS: f k + 1 i = X j 2 Z a i ¡ 3 j f k j f k + 1 3 i = f k i f k + 1 3 i + 1 = X j 2 Z a 1 + 3 j f k i ¡ k f k + 1 3 i + 2 = X j 2 Z a 2 + 3 j f k i ¡ k

91 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 i 2 Z a i z i S ( ¤ ) X j 2 Z a 3 j = X j 2 Z a 3 j + 1 = X j 2 z a 3 j + 2 = 1 a ( e 2 i ¼ = 3 ) = a ( e 4 i ¼ = 3 ) = 0 ; a ( 1 ) = 3 a ( 1 ) = n ; a ( w p n ) = 0 ; w p n = e 2 i p¼ n ; p 2 f 1 ; 2 ;:::; n ¡ 1 g

92 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 = S 1 df k ¡ 1 f k = S k f 0 SS 1 df k = f( df k ) i = 3 k ( f k i + 1 ¡ f k i )g S 1 3 S 1 l i m k ! 1 ( 1 3 S 1 ) k f 0 = 0

93 Ternary 4-point interpolatory SS The ternary 4 –point interpolatory SS: The Laurent-polynomial of this scheme is a ( z ) = a ¡ 5 z ¡ 5 + a ¡ 4 z ¡ 4 + a ¡ 2 z ¡ 2 + a ¡ 1 z ¡ 1 + 1 + a 1 z + a 2 z 2 + a 4 z 4 + a 5 z 5 f k + 1 3 i = f k i f k + 1 3 i + 1 = a 4 f k i ¡ 1 + a 1 f k i + a ¡ 2 f k i + 1 + a ¡ 5 f k i + 2 f k + 1 3 i + 2 = a 5 f k i ¡ 1 + a 2 f k i + a ¡ 1 f k i + 1 + a ¡ 4 f k i + 2

94 By symmetry and necessary condition, we get mask Let a 1 + a 2 + a 4 + a 5 = 1 3 a 2 ¡ 3 a 4 + 6 a 5 = 1 a 4 + a 5 = ¡ 1 9 a 5 = ¡ 1 18 + 1 6 ¹

95 Butterfly subdivision scheme

96 The bivariate Laurent polynomial of this scheme: The symbol of the butterfly scheme: a ( z 1 ; z 2 ) = 3 X i = ¡ 3 3 X j = ¡ 3 a i ; j z i 1 z j 2 a ( z 1 ; z 2 ) = 1 2 ( 1 + z 1 )( 1 + z 2 )( 1 + z 1 z 2 )( 1 ¡ wc ( z 1 ; z 2 ))( z 1 z 2 ) ¡ 1 ; c ( z 1 ; z 2 ) = 2 z ¡ 2 1 z ¡ 1 2 + 2 z ¡ 1 1 z ¡ 2 2 ¡ 4 z ¡ 1 1 z ¡ 1 2 ¡ 4 z ¡ 1 1 ¡ 4 z ¡ 1 2 + 2 z ¡ 1 1 z 2 + 2 z 1 z ¡ 1 2 + 12 ¡ 4 z 1 ¡ 4 z 2 ¡ 4 z 1 z 2 + 2 z 2 1 z 2 + 2 z 1 z 2 2

97 The verification that the scheme generates requires checking the contractivity of three schemes: Butterfly scheme satisfies: 2 ( 1 + z 1 ) b ( z 1 ; z 2 ) ; 2 ( 1 + z 2 ) b ( z 1 ; z 2 ) ; 2 ( 1 + z 1 z 2 ) b ( z 1 ; z 2 ) w ¡ w = 0 ; w ¡ 2 w + w = 0 ; ¡ w ¡ 2 w + 1 2 ¡ 1 2 + 2 w + w = 0 ; ¡ 1 2 + 1 ¡ 1 2 = 0

98 Symmetric 8-point Butterfly SS ( 1 ; 2 = ® ) ; ( 3 ; 4 ) = ¯ ) ; ( 5 ; 6 ; 7 ; 8 = ° ) A = 2 6 6 6 6 6 6 6 6 4 ¢¢¢¢ °° ¢ ¢¢ ° ¢ ¯ ¢ ° ¢ ° ¯ ®® ¯ ° ¢¢ ® 1 ® ¢¢ ° ¯ ®® ¯ ° ¢ ° ¢ ¯ ¢ ° ¢¢ ¢ °° ¢¢¢¢ 3 7 7 7 7 7 7 7 7 5

99 To converges to a surface with, we have This is the same mask of Butterfly scheme: C 0 1 ; 2 = 1 2 3 ; 4 = 2 w 5 ; 6 ; 7 ; 8 = ¡ w 2 ° + ¯ = 0 ; ¡ 2 ® + 1 = 0

100 Symmetric 10-point Butterfly SS ( 1 ; 2 = ® ) ; ( 3 ; 4 = ¯ ) ; ( 5 ; 6 ; 7 ; 8 = ° ) ; ( 9 ; 10 = w ) A = 2 6 6 6 6 6 6 6 6 4 ¢¢¢ w°°w ¢¢ ° ¢ ¯ ¢ ° ¢ ° ¯ ®® ¯ ° w ¢ ® 1 ® ¢ w ° ¯ ®® ¯ ° ¢ ° ¢ ¯ ¢ ° ¢¢ w°°w ¢¢¢ 3 7 7 7 7 7 7 7 7 5

101 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 C 0 ° = 1 16 + w 1 ; 2 = 1 2 ¡ w 3 ; 4 = 2 ° 5 ; 6 ; 7 ; 8 = ¡ ° 9 ; 10 = w 2 ° + ¯ = 0 ; ¡ 2 ® ¡ 2 w + 1 = 0

102 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 rule f 1 ; t ; cos t ; s i n t g µ 2 ¡ k ¡ 1 ¡ µ 2 ¡ k ; 0 ; µ 2 ¡ k ; 2 µ 2 ¡ k

103 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 w k = 1 16 cos ( µ 2 ¡ k ¡ 2 ) cos ( µ 2 ¡ k ¡ 1 )

104 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$$S$ f S a k g f S b k g 1 X k = 0 k S a k ¡ S b k k < 1 k S a k k 1 = max f X j a ( k ) 2 ® j ; X j a ( k ) 2 ® + 1 jg f S a k g f S a g f S a k g f S a g f S a g f S a k g C m C m 1 X k = 0 2 m k k S a k ¡ S a k < 1

105 Lemma For The mask of : $S$$S$ k ¸ 0 ; 0 · µ · ¼ = 2 1 16 · w k · 1 8 j w k ¡ 1 16 j · C 2 2 k f S k g

106 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 f S k g f S g C 1

107 Subdivision (Kobbelt) Approximating Scheme Continuity –C 2 regular regions –C 1 extraordinary vertices Triangular Trisection Adaptive Refinement p 3

108 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. p 3

109 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. p 3

110 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 ( p i + p j + p k ) S ( p ) : = ( 1 ¡ ® n ) p + ® n 1 n n ¡ 1 X i = 0 p i

111 Subdivision Matrix When analyzing the eigen-structure of this matrix, it is not suitable all eigenvalues are complex. S = 1 3 2 6 6 6 6 6 6 6 6 6 4 uvvv ¢¢¢ v 1110 ¢¢¢ 0 10........................... 0 10...... 1 110 ¢¢¢ 01 3 7 7 7 7 7 7 7 7 7 5 u = 3 ( 1 ¡ ® n ) ; v = 3 ® = n

112 Subdivision Matrix The matrix has its eigen-values: The necessary condition for C1:. The choice for the eigen-values: R = 2 6 6 6 6 6 6 4 10 ¢¢¢ 00 00 ¢¢¢ 01 01...... 0............... 0010 3 7 7 7 7 7 7 5 ~ S = RS 2 1 9 [ 9 ; ( 2 ¡ 3 ® n ) 2 ; 2 + 2 cos ( 2 ¼ 1 n ) ; ¢¢¢ ; 2 + 2 cos ( 2 ¼ n ¡ 1 n )] ¸ 1 = 1 > ¸ 2 = ¸ 3 > ¸ i ; i = 4 ;:::; n + 1 ¸ 4 = ¸ 2 2 ) ® n = 4 ¡ 2 cos ( 2 ¼ = n ) 9

113 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 1 3 [ 1 ; 2 ; 3 ; 2 ; 1 ] ¤ ( 1 3 [ 1 ; 1 ; 1 ]) 2 = 1 27 [ 1 ; 4 ; 10 ; 16 ; 19 ; 16 ; 10 ; 4 ; 1 ]

114 Interpolatory -Subdivision Stencil for a new vertex and scheme: p 3 q k + 1 = 32 81 ( p k 1 + p k 2 + p k 3 ) ¡ 1 81 ( p k 4 + p k 5 + p k 6 ) ¡ 2 81 ( p k 7 + p k 8 + p k 9 + p k 10 + p k 11 + p k 12 )

115 Interpolatory -Subdivision Modification for extraordinary vertices: For p 3 q k + 1 = ®p k + n ¡ 1 X i = 0 ® i p k i ® = 8 9 ; ® n i = 1 9 + 2 3 cos ( 2 ¼ i = n ) + 2 9 cos ( 4 ¼ i = n ) n n ¸ 5 n = 3 ® = 8 9 ; ® 0 = 7 27 ; ® 1 = ® 2 = ¡ 2 27 ® = 8 9 ; ® 0 = 7 36 ; ® 1 = ® 3 = 1 27 ; ® 2 = ¡ 5 36 n = 4

116 Stencil for boundary subdivision p k + 1 3 i ¡ 1 = ¡ 4 81 p k i ¡ 2 + 10 27 p k i ¡ 1 + 20 27 p k i ¡ 5 81 p k i + 1 p k + 1 3 i + 1 = ¡ 5 81 p k i ¡ 1 + 20 27 p k i + 10 27 p k i + 1 ¡ 4 81 p k i + 2 p k 3 i = p k i

117 Reflection vertices across the boundary of the mesh

118 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 ; ¸ 2 v ; ¸ 3 v ;::: S v = ¸ v S v ; S 2 v ; S 3 v ;:::

119 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 2 6 6 6 4 1 1... 1 3 7 7 7 5 = 2 6 6 6 4 1 1... 1 3 7 7 7 5 1 = 2 6 6 6 4 1 1... 1 3 7 7 7 5 ¸ = 1

120 Subdivision Limit Position If then S is. 1 = ¸ 0 > ¸ i ; f i = 1 ; n g ¸ 0 C 0 S = V¤V ¡ 1 = £ v 0 v 1 ¢¢¢ v n ¤ 2 6 6 6 4 ¸ 0 0 ¢¢¢ 0 0 ¸ 1 ¢¢¢ 0............ 00 ¢¢¢ ¸ n 3 7 7 7 5 2 6 6 6 4 v ¡ 1 0 v ¡ 1 1... v ¡ 1 n 3 7 7 7 5

121 To find the limit neighborhood, we must compute All of the vertices of the limit local neighborhood converges to the same position P 1 S 1 P 1 = S 1 P 0 = 2 6 6 4 v ¡ 1 0 v ¡ 1 0 ¢¢¢ v ¡ 1 0 3 7 7 5 P 0

122 Subdivision Derivatives The 1 st derivatives of the subdivision manifold for a parameter direction u defines: We define the 2 nd and 3 rd derivatives @ S @ u = l i m g ! 1 1 ¸ g 1 p g i + 1 ¡ p g i k p 0 i + 1 ¡ p 0 i k @ 2 S @ u 2 = l i m g ! 1 1 ¸ g 2 ( p g i + 1 ¡ p g i ) ¡ ( p g i ¡ p g i ¡ 1 ) k p 0 i + 1 ¡ p 0 i k 2 @ 3 S @ u 3 = l i m g ! 1 1 ¸ g 3 ( p g i + 2 ¡ 2 p g i + 1 + p g i ) ¡ ( p g i + 1 ¡ 2 p g i + p g i ¡ 1 ) k p 0 i + 1 ¡ p 0 i k 3

123 Example: Uniform Cubic Spline Eigen Decomposition of S: S = 1 8 2 6 6 6 6 4 16100 04400 01610 00440 00161 3 7 7 7 7 5 = V¤V ¡ 1 2 6 6 6 6 4 1 ¡ 1110 1 ¡ 1 = 22 = 1100 10 ¡ 1 = 1100 11 = 22 = 1100 11101 3 7 7 7 7 5 2 6 6 6 6 4 10000 01 = 2000 001 = 400 0001 = 80 00001 = 8 3 7 7 7 7 5 2 6 6 6 6 4 01 = 64 = 61 = 60 0 ¡ 1010 011 = 6 ¡ 22 = 611 = 60 1 ¡ 33 ¡ 10 0 ¡ 13 ¡ 31 3 7 7 7 7 5

124 S g = V¤ g V ¡ 1 = V 2 6 6 6 6 4 10000 0 ¸ g 1 000 00 ¸ g 2 00 000 ¸ g 3 0 0000 ¸ g 3 3 7 7 7 7 5 V ¡ 1

125 Limit Position We derive the formula for the limit position S 1 = 2 6 6 6 6 4 01 = 64 = 61 = 60 01 = 64 = 61 = 60 01 = 64 = 61 = 60 01 = 64 = 61 = 60 01 = 64 = 61 = 60 3 7 7 7 7 5 P 1 = S 1 P 0 V 0 ; 0 ; 0 = 1 6 V ¡ 2 ; ¡ 1 ; 0 + 4 6 V ¡ 1 ; 0 ; 1 + 1 6 V 0 ; 1 ; 2

126 1 st Derivatives Differencing and is the same as differencing the corresponding row and of p g i + 1 p g i i + 1 i S g @ S g @ u = D u S g D u = 2 6 6 4 ¡ 11000 0 ¡ 1100 00 ¡ 110 000 ¡ 11 3 7 7 5

127 We derive the subdivision process is C1: @ P 1 @ u = @ S 1 @ u P 0 @ V 0 ; 0 ; 0 u = ¡ 1 2 V ¡ 2 ; ¡ 1 ; 0 + 1 2 V 0 ; 1 ; 2 @ S 1 @ u = l i m g ! 1 1 ¸ g 1 @ S g @ u = 2 6 6 4 0 ¡ 1 2 0 1 2 0 0 ¡ 1 2 0 1 2 0 0 ¡ 1 2 0 1 2 0 0 ¡ 1 2 0 1 2 0 3 7 7 5

128 2 nd Derivatives The same finite differencing can be done to the 1 st derivatives matrix to compute 2 nd derivatives: @ 2 S g @ u 2 = D uu @ S g @ u D uu = 2 4 ¡ 1100 0 ¡ 110 00 ¡ 11 3 5 @ 2 S g @ u 2 = 2 4 ¸ g 3 ¸ g 2 ¡ 3 ¸ g 3 ¡ 2 ¸ g 2 + 3 ¸ g 3 ¸ g 2 ¡ ¸ g 3 0 0 ¸ g 2 ¡ 2 ¸ g 2 ¸ g 2 0 0 ¸ g 2 ¡ ¸ g 3 ¡ 2 ¸ g 2 + 3 ¸ g 3 ¸ g 2 ¡ 3 ¸ g 3 ¸ g 3 3 5

129 We derive the subdivision process is C2: @ 2 S 1 @ u 2 = l i m g ! 1 1 ¸ g 2 @ 2 S g @ u 2 = 2 4 01 ¡ 210 01 ¡ 210 01 ¡ 210 3 5 @ 2 P 1 @ u 2 = @ 2 S 1 @ u 2 P 0 @ 2 V 0 ; 0 ; 0 u 2 = V ¡ 2 ; ¡ 1 ; 0 ¡ 2 V ¡ 1 ; 0 ; 1 + V 0 ; 1 ; 2

130 3 rd Derivatives We can iterate again to check if the subdivision process is C3: The rows are not the same, so the process is not C3 @ 3 S g @ u 3 = D uuu @ 2 S g @ u 2 D uuu = · ¡ 110 0 ¡ 11 ¸ @ 3 S g @ u 3 = · ¡ ¸ g 3 3 ¸ g 3 ¡ 3 ¸ g 3 ¸ g 3 0 0 ¡ ¸ g 3 3 ¸ g 3 ¡ 3 ¸ g 3 ¸ g 3 ¸

131 Catmull-Clark Subdivision

132 Loop Subdivision

133 Subdivision p 3


Download ppt "A Note on Subdivision Kwan Pyo Ko Dongseo University"

Similar presentations


Ads by Google