splines subdivision manifolds
play

Splines, Subdivision & Manifolds Luiz Velho IMPA Historical - PowerPoint PPT Presentation

Splines, Subdivision & Manifolds Luiz Velho IMPA Historical Perspective subdivision surfaces manifolds splines 1960 1970 1980 1990 2000 2010 De Boor (72) Bezier (60) Chaikin (74) de Casteljau (60) Riesenfeld (80) Doo-Sabin


  1. Splines, Subdivision & Manifolds Luiz Velho IMPA

  2. Historical Perspective subdivision surfaces manifolds splines 1960 1970 1980 1990 2000 2010 De Boor (72) Bezier (60) Chaikin (74) de Casteljau (60) Riesenfeld (80) Doo-Sabin (78) Zorin (89) Catmull-Clark (78) Kobbelt (00) Loop (87) Velho (01) Dyn (90) Schroeder (02) Naveau (02) Grimm (95) Zorin (04) Gu (06) Siqueira (09)

  3. Modeling • Splines (Regular Surfaces) - Free-Form Modeling • Subdivision (Arbitrary Surfaces) - Efficient Algorithms • Manifolds (Smooth Surfaces) - Intrinsic Operations

  4. Related Developments • Parametrizations • Surface Deformation • Re-meshing • Quad Structures • Geometry Processing • Discrete Differential Geometry (DDG)

  5. Scale Spaces & Wavelets • Constructions - Meyer (80) • Smoothness - Daubechies (88) • Multiresolution + FWT - Mallat (89) • Lifting - Sweldens (95)

  6. Road Map Refinable Functions Scale Spaces Subdivision Splines

  7. Scaling Function • Localization (space / frequency) φ ( x ) • Normalization Z φ ( x ) dx = 1

  8. Scaling Family 1 | s | 1 / 2 φ ( x φ s,t ( x ) = s − t ) • Two Parameters - Change of Scale 1 | s | 1 / 2 φ ( x φ s ( x ) = s ) - Change of Position φ t ( x ) = φ ( x − t )

  9. Scale Spaces • Smoothing Operator Z φ s ( f ( x )) = φ s,t ( x ) f ( x ) dt • Linear Scale Space - Gaussian • Physical Interpretation - Heat equation (Smoothing ~ Diffusion)

  10. Discretization ∆ s 0 ,t 0 = { ( s m 0 , ns m 0 t ); m, n ∈ Z } • Dyadic Structure ∆ 2 , 1 = { (2 j , k 2 j ); j, k ∈ Z } • Hyperbolic Lattice V 4 V 3 V 2 V 1

  11. Function Representation • Representation Operator: R ( f ) = ( f j ) j ∈ Z R : L 2 ( R ) → l 2 ( R ) space of functions space of sequences • Approximation Spaces V j = { φ j,k } k ∈ Z scale basis

  12. Basis and Representation • Orthogonal Projection ~ Basis V j X X f j Proj v j ( f ) = < f, φ j,k > = k φ j,k k k X f j f = k φ j,k k representation reconstruction f 7! ( f j k )

  13. Two-Scale Relation • Dilation Equation - Scaling Basis: φ 0 ∈ V 0 ⊂ V − 1 X X φ 0 = < φ 0 , φ − 1 ,k > φ − 1 ,k = h k φ − 1 ,k k k • Reflexive Definition of Basis √ X φ ( x ) = 2 h k φ (2 x − k ) k Refinable Function

  14. Multiresolution Analysis • Nested Approximation Spaces { 0 } ⊂ · · · ⊂ V j +1 ⊂ V j ⊂ V j − 1 ⊂ · · · ⊂ L 2 ( R ) Translations V j+1 V j Dilations V j-1 φ j,k ( x ) = 2 − 2 /j φ (2 − j x − k )

  15. B-Spline Basis • Refinable Scaling Functions • Basis of P m - Uniform Piecewise Polynomials • Properties - Smoothness - Compact Support - Normalization - Partition of Unity

  16. B-Splines • Def: ( repeated integration ) - B-Spline of order 1 (Haar) ⇢ 1 0 ≥ x ≥ 1; 1 n 1 ( x ) = 0 otherwise . 0 1 - B-Spline of order m > 1 Z n m − 1 ( x − t ) dt n m ( x ) = Obs: recurrence relation

  17. B-Splines & Gaussian • Theorem: m →∞ n m ( x ) = G ( x ) lim

  18. B-Spline Subdivision • Refinement Relation m X n m ( x ) = S m k n m (2 x − k ) k =0 • Subdivision Mask ✓ m ◆ 1 S m k = k 2 m − 1

  19. Refinable Funcions • Example: Linear Spline 2[1 2 φ (2 x + 1) + φ (2 x ) + 1 √ φ ( x ) = 2 φ (2 x − 1)] 1 1 1 2 2

  20. Example • Linear B-Spline  if 0 < x ≥ 1; x  n 2 ( x ) = 2 − x if 1 < x ≥ 2; 0 otherwise  0 2 1 • Rep of p(x) = { p i } X p i n m ( x − i ) p ( x ) =

  21. Scaling and Refinement • Given f in V j X f j f ( x ) = k ( x ) k • Compute Rep of f in V j-1 f j − 1 = < f, φ j − 1 ,k > k X f j k φ j = < k , φ j − 1 ,k > k X f j k < φ j k , φ j − 1 ,k > = k f j X k h k = k

  22. Refinement & Reconstruction • Decrease Scale = Increase Resolution

  23. Subdivision • Reconstruction of f by Refinement (limit process) - start with { f j k } k ∈ Z - iterate j → −∞ f j − 1 X f j k h k = k subdivision operator

  24. Elements of Subdivision P ∞ = S ∞ P 0 • Base Shape (control points) P 0 • Limit Shape P ∞ • Subdivision Scheme S

  25. Subdivision Process • Subdivision Iteration P k = SP k − 1 • Limit Shape P ∞ = S ∞ P 0

  26. Graphical Example P 0 P 1 P 2 P 3 · · ·

  27. Subdivision Schemes • Anatomy of Subdivision S = ( R, G ) - R : Refinement Operator - G : Smoothing Operator • Issues - Representation (multiresolution basis) - Convergence

  28. Subdivision Algorithm • Start with P 0 • Repeat: - Upsample and Change Level P j ( x ) = ↑ P j − 1 ( x ) - Update P j ( x ) = GP j ( x )

  29. Graphical View P k • Topology R • Geometry G P k +1

  30. Vector Notation • Knot Vector P 0 = ( . . . , p 0 − 1 , p 0 0 , p 0 1 , . . . ) • Subdivision Matrix     . .   . . . s − 2 . .     p 1 p 0 . s − 1       − 1 − 1       p 1 p 0 . . . s 2 s 0 s − 2 . . . =       0 0       p 1 p 0 s 1 .       1 1     . . s 2 . . . . . refinement smoothing

  31. Characteristics • Nature (level dependency) - Stationary S k = S - Non-Stationary • Domain Structure (connectivity) - Regular - Non-Regular

  32. Functional Setting • Uniform Partition y = p ( x ) x

  33. Parametric Setting ( x, y ) = p ( t ) = ( x ( t ) , y ( t )) • Extends functional setting - Control Points p i = ( x i , y i ) p ( t ) p 1 p 2 y p 0 p 3 x t

  34. 1D Subdivision • Example: Cubic B-Spline S ( x ) = 1 8 x 0 + 1 2 x 1 + 3 4 x 2 + 1 2 x 3 + 1 8 x 4     . . 1 1   . . . . 2 2     1 3 1       8 4 8 p j +1 p j       1 1 . . . . . . . =       i k 2 2       1 3 1       8 4 8 1 1     . . . 2 2 . . . .

  35. 2D Subdivision • Parametric Surfaces g : U ⊂ R 2 → R 3 g ( u, v ) U M ( x, y, z ) = g ( u, v ) = ( x ( u, v ) , y ( u, v ) , z ( u, v ))

  36. Domain Discretization • Regular Meshes valence 6 valence 4 regular vertices 3 directions 2 directions

  37. 2D Refinement • Quad-Mesh • Tri-Mesh Obs: preserves regularity

  38. Arbitrary Meshes • Semi-Regular Meshes - Irregular Base Mesh - Regular Refinement extraordinary vertex

  39. B-Splines & Subdivision • Subdivision Surfaces - Generalize Splines to Non-Regular Connectivity • Examples: - Catmull-Clark (tensor product bi-cubic B-spline) - Loop Subdivision Surface (three-directional quartic box spline)

  40. Splines & Manifolds • Uniform Splines - Particular case of Manifold Structure • Characterization - Charts: (basis functions at control vertices) - Transition Function: (affine transformation) - Partition of Unity

  41. B-Spline Basis • Recursive Definition B n := B n − 1 ∗ B 0 • Closed Form (at segment S j ) x j x j − 1 b j,n ( x ) = b n ( x − x j ) with translation n +1 b n ( x ) := n + 1 X ω i,n ( x − x i ) n + n i =0 • Truncated Power ⇢ ( x − x i ) n if x ≥ x i ; ( x − x i ) n + = 0 if x < x i .

  42. B-Spline Evaluation • At a Segment S j m − 1 X s j ( x ) = c j b j,n ( x ) j =0 • Example: c j-1 c j S j b j-1 b j

  43. 2D Scheme • Quadrilateral Structure control mesh charts / transition function

  44. Extraordinary Vertices • Characteristic Map k=5 k=13 ‣ Breaks good properties (transition function, etc)

  45. Topological Obstructions • A closed 2-manifold M admits an affine atlas, if and only if M is a torus

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend