Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 10 Ravi Ramamoorthi

Slides:



Advertisements
Similar presentations
Discrete Differential Geometry Planar Curves 2D/3D Shape Manipulation, 3D Printing March 13, 2013 Slides from Olga Sorkine, Eitan Grinspun.
Advertisements

Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 14: Review / Subdivision Ravi Ramamoorthi Slides courtesy.
Advanced Graphics Lecture Six Subdivision Surfaces Alex Benton, University of Cambridge – Supported in part by Google UK, Ltd.
© University of Wisconsin, CS559 Spring 2004
Classic Subdivision Schemes. Schemes Catmull-Clark (1978) Doo-Sabin (1978) Loop (1987) Butterfly (1990) Kobbelt (1996) Mid-edge (1996 / 1997)
1 Dr. Scott Schaefer Analysis of Subdivision Surfaces at Extraordinary Vertices.
On Triangle/Quad Subdivision Scott Schaefer and Joe Warren TOG 22(1) 28 – 36, 2005 Reporter: Chen zhonggui
Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.
Analysis techniques for subdivision schemes Joe Warren Rice University.
Subdivision Curves & Surfaces and Fractal Mountains. CS184 – Spring 2011.
CS Peter Schröder Subdivision I: The Basic Ideas.
Surfaces Chiew-Lan Tai. Surfaces 2 Reading Required Hills Section Hearn & Baker, sections 8.11, 8.13 Recommended Sections 2.1.4, , 3D Computer.
Fractal Mountains, Splines, and Subdivision Surfaces Jordan Smith UC Berkeley CS184.
Subdivision Surfaces in Character Animation Tony DeRose - Michael Kass - Tien Truong - Pixar Animation Studios - Pierce Groover March 4 th, 2003.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 12: Spline Curves (review) Ravi Ramamoorthi Most material.
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 4: 3D Objects and Meshes Ravi Ramamoorthi
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
1 Lecture 13 Modeling Curved Lines and Surfaces. 2 Types of Surfaces Ruled Surfaces B-Splines and Bezier Curves Surfaces of Revolution.
Visualization and graphics research group CIPIC January 30, 2003Multiresolution (ECS 289L) - Winter MAPS – Multiresolution Adaptive Parameterization.
Content Subdivision First some basics (control point polygon, mesh)
1 Subdivision Surfaces CAGD Ofir Weber. 2 Spline Surfaces Why use them?  Smooth  Good for modeling - easy to control  Compact (complex objects are.
Subdivision Primer CS426, 2000 Robert Osada [DeRose 2000]
11/08/00 Dinesh Manocha, COMP258 Subdivision Curves & Surfaces Work of G. de Rham on Corner Cutting in 40’s and 50’s Work of Catmull/Clark and Doo/Sabin.
Scott Schaefer Joe Warren A Factored, Interpolatory Subdivision for Surfaces of Revolution Rice University.
CS Subdivision I: The Univariate Setting Peter Schröder.
Subdivision Analysis via JSR We already know the z-transform formulation of schemes: To check if the scheme generates a continuous limit curve ( the scheme.
Introduction to Subdivision Surfaces. Subdivision Curves and Surfaces 4 Subdivision curves –The basic concepts of subdivision. 4 Subdivision surfaces.
Splines III – Bézier Curves
11/30/04© University of Wisconsin, CS559 Fall 2004 Last Time More modeling: –Hierarchical modeling –Instancing and Parametric Instancing –Constructive.
Subdivision surfaces Construction and analysis Martin Reimers CMA/IFI, University of Oslo September 24th 2004.
Subdivision/Refinement Dr. S.M. Malaek Assistant: M. Younesi.
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Spline curves 1/23 Curves and Surfaces.
Graphics Graphics Korea University cgvr.korea.ac.kr Creating Virtual World I 김 창 헌 Department of Computer Science Korea University
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Quadric Error Metrics 1/20 Quadric Error Metrics.
4/15/04© University of Wisconsin, CS559 Spring 2004 Last Time More modeling: –Hierarchical modeling –Instancing and Parametric Instancing –Constructive.
Manuel Mesters - Subdivision Surfaces computer graphics & visualization Seminar Computer Graphics Geometric representation and processing: Subdivision.
Why manifolds?. Motivation We know well how to compute with planar domains and functions many graphics and geometric modeling applications involve domains.
Introduction to Subdivision surfaces Martin Reimers CMA, University of Oslo.
1 Manifolds from meshes Cindy Grimm and John Hughes, “Modeling Surfaces of Arbitrary Topology using Manifolds”, Siggraph ’95 J. Cotrina Navau and N. Pla.
Subdivision Schemes Basic idea: Start with something coarse, and refine it into smaller pieces for rendering –We have seen how subdivision may be used.
Non-Uniform Rational B-Splines NURBS. NURBS Surfaces NURBS surfaces are based on curves. The main advantage of using NURBS surfaces over polygons, is.
Parametric Surfaces Define points on the surface in terms of two parameters Simplest case: bilinear interpolation s t s x(s,t)x(s,t) P 0,0 P 1,0 P 1,1.
Subdivision Surfaces Ref: Subdivision Surfaces in Character Animation, DeRose et. al, SIGGRAPH98.
Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 9 Ravi Ramamoorthi
Lee Byung-Gook Dongseo Univ.
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Subdivision Surfaces Greg Humphreys University of Virginia CS 445, Fall 2003.
11/26/02(C) University of Wisconsin Last Time BSplines.
A Note on Subdivision Kwan Pyo Ko Dongseo University
Subdivision Surfaces Dr. Scott Schaefer.
1/57 CS148: Introduction to Computer Graphics and Imaging Geometric Modeling CS148 Lecture 6.
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
Construction of Navau and Garcia. Basic steps Construction has two parameters: smoothness k and n > k, defining how closely the surface follows the control.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Subdivision surfaces.
CS559: Computer Graphics Lecture 33: Shape Modeling Li Zhang Spring 2008.
Subdivision Schemes. Center for Graphics and Geometric Computing, Technion What is Subdivision?  Subdivision is a process in which a poly-line/mesh is.
Introduction to Parametric Curve and Surface Modeling.
© University of Wisconsin, CS559 Spring 2004
Subdivision curves.
Advanced Computer Graphics
Goals A high-order surface construction Desirable features
Daniil Rodin for CAGD course, 2016
CSE 167 [Win 17], Lecture 9: Curves 1 Ravi Ramamoorthi
Subdivision curves.
© University of Wisconsin, CS559 Spring 2004
The Variety of Subdivision Schemes
Jeff Ballard Nick Rasmussen
Subdivision Surfaces 고려대학교 컴퓨터 그래픽스 연구실 cgvr.korea.ac.kr.
Jeff Ballard Nick Rasmussen
Last Time B-splines Project 3 was made available
Presentation transcript:

Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 10 Ravi Ramamoorthi

To Do  Assignment 2 due May 15  Should already be well on way.  Contact us for difficulties etc.  This lecture is a “bonus”: more advanced topic that is closer to the research frontier

Subdivision  Very hot topic in computer graphics  Brief survey lecture, quickly discuss ideas  Detailed study quite sophisticated  See some of materials from readings Advantages  Simple (only need subdivision rule)  Local (only look at nearby vertices)  Arbitrary topology (since only local)  No seams (unlike joining spline patches)

Video: Geri’s Game (outside link) outside linkoutside link

Outline  Basic Subdivision Schemes  Analysis of Continuity  Exact and Efficient Evaluation (Stam 98)

Subdivision Surfaces  Coarse mesh & subdivision rule  Smooth surface = limit of sequence of refinements [Zorin & Schröder]

Key Questions  How to refine mesh?  Where to place new vertices?  Provable properties about limit surface [Zorin & Schröder]

Loop Subdivision Scheme  How refine mesh?  Refine each triangle into 4 triangles by splitting each edge and connecting new vertices [Zorin & Schröder]

Loop Subdivision Scheme  Where to place new vertices?  Choose locations for new vertices as weighted average of original vertices in local neighborhood [Zorin & Schröder]

Loop Subdivision Scheme  Where to place new vertices?  Rules for extraordinary vertices and boundaries: [Zorin & Schröder]

Loop Subdivision Scheme Choose β by analyzing continuity of limit surface  Original Loop  Warren

Butterfly Subdivision  Interpolating subdivision: larger neighborhood 1/21/21/21/2 1/21/21/21/2 -1 / 16 1/81/81/81/8 1/81/81/81/8

Modified Butterfly Subdivision Need special weights near extraordinary vertices  For n = 3, weights are 5 / 12, -1 / 12, -1 / 12  For n = 4, weights are 3/8, 0, -1/8, 0  For n ≥ 5, weights are  Weight of extraordinary vertex = 1 - Σ other weights

A Variety of Subdivision Schemes  Triangles vs. Quads  Interpolating vs. approximating [Zorin & Schröder]

More Exotic Methods  Kobbelt’s subdivision:

More Exotic Methods  Kobbelt’s subdivision:  Number of faces triples per iteration: gives finer control over polygon count

Subdivision Schemes [Zorin & Schröder]

Subdivision Schemes [Zorin & Schröder]

Outline  Basic Subdivision Schemes  Analysis of Continuity  Exact and Efficient Evaluation (Stam 98)

Analyzing Subdivision Schemes  Limit surface has provable smoothness properties [Zorin & Schröder]

Analyzing Subdivision Schemes  Start with curves: 4-point interpolating scheme -1 / 16 9 / 16 (old points left where they are)

4-Point Scheme  What is the support? v0v0v0v0 v -2 v -1 v1v1v1v1 v2v2v2v2 Step i: v0v0v0v0 v -2 v -1 v1v1v1v1 v2v2v2v2 Step i+1: So, 5 new points depend on 5 old points

Subdivision Matrix  How are vertices in neighborhood refined? (with vertex renumbering like in last slide)

Subdivision Matrix  How are vertices in neighborhood refined? (with vertex renumbering like in last slide) After n rounds:

Convergence Criterion Expand in eigenvectors of S: Criterion I : | λ i | ≤ 1

Convergence Criterion  What if all eigenvalues of S are < 1?  All points converge to 0 with repeated subdivision Criterion II : λ 0 = 1

Translation Invariance  For any translation t, want: Criterion III : e 0 = 1, all other | λ i | < 1

Smoothness Criterion  Plug back in:  Dominated by largest λ i  Case 1: |λ 1 | > |λ 2 |  Group of 5 points gets shorter  All points approach multiples of e 1  on a straight line  Smooth!

Smoothness Criterion  Case 2: |λ 1 | = |λ 2 |  Points can be anywhere in space spanned by e 1, e 2  No longer have smoothness guarantee Criterion IV : Smooth iff λ 0 = 1 > |λ 1 | > |λ i |

Continuity and Smoothness  So, what about 4-point scheme?  Eigenvalues = 1, 1 / 2, 1 / 4, 1 / 4, 1 / 8  e 0 = 1  Stable  Translation invariant  Smooth

2-Point Scheme  In contrast, consider 2-point interpolating scheme  Support = 3  Subdivision matrix = 1/21/21/21/2 1/21/21/21/2

Continuity of 2-Point Scheme  Eigenvalues = 1, 1 / 2, 1 / 2  e 0 = 1  Stable  Translation invariant  Smooth X  Not smooth; in fact, this is piecewise linear

For Surfaces…  Similar analysis: determine support, construct subdivision matrix, find eigenstuff  Caveat 1: separate analysis for each vertex valence  Caveat 2: consider more than 1 subdominant eigenvalue  Points lie in subspace spanned by e 1 and e 2  If |λ 1 |≠|λ 2 |, neighborhood stretched when subdivided, but remains 2-manifold Reif’s smoothness condition: λ 0 = 1 > |λ 1 | ≥ |λ 2 | > |λ i |

Fun with Subdivision Methods Behavior of surfaces depends on eigenvalues (recall that symmetric matrices have real eigenvalues) [Zorin] ComplexDegenerateReal

Outline  Basic Subdivision Schemes  Analysis of Continuity  Exact and Efficient Evaluation (Stam 98) Slides courtesy James O’Brien

Practical Evaluation  Problems with Uniform Subdivision  Exponential growth of control mesh  Need several subdivisions before error is small  Ok if you are “drawing and forgetting”, otherwise …  (Exact) Evaluation at arbitrary points  Tangent and other derivative evaluation needed  Paper by Jos Stam SIGGRAPH 98 efficient method  Exact evaluation (essentially take out “subdivision”)  Smoothness analysis methods used to evaluate

Isolated Extraordinary Points  After 2+ subdivisions, isolated “extraordinary” points where irregular valence  Regular region is usually easy  For example, Catmull Clark can treat as B-Splines

Isolated Extraordinary Points

Subdivision Matrix

Eigen Space

Comments  Computing Eigen-Vectors is tricky  See Jos’ paper for details  He includes solutions for valence up to 500  All eigenvalues are (abs) less than one  Except for lead value which is exactly one  Well defined limit behavior  Exact evaluation allows “pushing to limit surface”

Curvature Plots See Stam 98 for details

Summary  Advantages:  Simple method for describing complex, smooth surfaces  Relatively easy to implement  Arbitrary topology  Local support  Guaranteed continuity  Multiresolution  Difficulties:  Intuitive specification  Parameterization  Intersections [Pixar]