1 / 32

Hamid Laga hamid@img.cs.titech.ac.jp img.cs.titech.ac.jp/~hamid/

Geometric Modeling using Polygonal Meshes Lecture 3: Discrete Differential Geometry and its Application to Mesh Processing. Hamid Laga hamid@img.cs.titech.ac.jp http://www.img.cs.titech.ac.jp/~hamid/. Office: South 6- 401B-C Global Edge Institute Tokyo Institute of Technology.

cullen
Download Presentation

Hamid Laga hamid@img.cs.titech.ac.jp img.cs.titech.ac.jp/~hamid/

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Geometric Modeling using Polygonal MeshesLecture 3: Discrete Differential Geometry and its Application to Mesh Processing Hamid Laga hamid@img.cs.titech.ac.jp http://www.img.cs.titech.ac.jp/~hamid/ Office: South 6- 401B-C Global Edge Institute Tokyo Institute of Technology

  2. Today’s program • Introduction and applications • Differential properties of a surface • Tangent and Normal • Curvatures • Shape and curvature • Discrete differential operators • Normal estimation • Discrete • Continuous approximation (with a quadric) • Curvature on meshes • Examples • Application to feature detection • Mesh smoothing • Mesh decimation • Summary • Other topics in discrete geometry processing

  3. Introduction • Featuredetection • line features • Creases, • Features of interest • Applications • Mesh segmentation • Non-photo rendering

  4. Introduction • Parameterization and texture mapping

  5. Differential properties of a surface • Parametric representation • S(u, v) • Tangent plane • Any vector is the tangent planeis tangent to S(u,v) • Normal vector

  6. Differential properties of a surface • Normal plane • Any plane along the normal vector • Many normal planes aone point • Normal section curve • Intersection of normalplane with the surface •  1D curve • Normal curvature • The curvature of the normal section curve

  7. 1D curves revisited • Parametric representation of a curve C • C(t) = ( x(t), y(t) ) • Unit tangent vector of C at a point t • Curvature • Small R  high curvature • Measures curve bending R Osculating circle

  8. Back to surfaces • Normal curvature • The curvature of the normal section curve • At a point (u,v) thereare many normal sections •  normal curvaturenot unique • Principal curvatures Kmin and Kmax • Minimum and maximum of the normal curvatures

  9. Surface curvatures • Principal curvatures Kmin and Kmax • Minimum and maximum of the normal curvatures • Correspond to two orthogonal tangent directions • Principal directions

  10. Curvature analysis

  11. Principal directions of curvature

  12. Curvature analysis • Curvature analysis for local shape understanding • Kmin = kmax > 0 sphere • Kmin = Kmax = 0  planar • Kmin > o, Kmax > 0 elliptic • Kmin = 0, Kmax > 0 parabolic (ex. cyllindric surface) • Kmin <0, Kmax > 0 hyperbolic surface • For global shape understanding • Analyze the distribution of the curvature (histogram)

  13. Other curvatures • Gaussian curvature • Mean curvature

  14. Today’s program • Introduction and applications • Differential properties of a surface • Tangent and Normal • Curvatures • Shape and curvature • Discrete differential operators • Normal estimation • Discrete • Continuous approximation (with a quadric) • Curvature on meshes • Examples • Application to feature detection • Mesh smoothing • Mesh decimation • Summary • Other topics in discrete geometry processing

  15. Curvature on mesh • Approximate the curvature of (unknown) underlying surface • Continuous approximation • Approximate the surface and compute continuous differential measures • Discrete approximation • Approximate the differential measures for mesh

  16. Normal estimation • Need surface normal defined on each vertex to: • Construct approximate surface • Rendering • Computing other differential properties • Solution 1: • Average face normals • Does not reflect face influence • Solution 2: • Weighted average of face normals • Weights: • Face area, angles at vertices • What happens at creases ?

  17. Quadric approximation • Approximate the surface by a quadric • At each mesh vertex, using the surrounding faces: • Compute the normal at the vertex average face normals • Compute a tangent plane and a local coordinate system • For each neighbor vertex compute itscoordinates in localcoord. system

  18. Quadric approximation (cont’d) • Fit a quadric function approximating the vertices • To find the coefficients use least squares fit

  19. Curvature estimation • Given the surface F, its principal curvatures are solution of:

  20. Visualizing curvatures • Approximation always results in some noise • Solution • Truncate extreme values • Can come for instance from division by very small area • Smooth • More later • Gaussian curvature

  21. Visualizing curvatures • Mean curvature

  22. Today’s program • Introduction and applications • Differential properties of a surface • Tangent and Normal • Curvatures • Shape and curvature • Discrete differential operators • Normal estimation • Discrete • Continuous approximation (with a quadric) • Curvature on meshes • Examples • Application to feature detection • Mesh smoothing • Mesh decimation • Summary • Other topics in discrete geometry processing

  23. Mesh smoothing • Mesh smoothing • Moving mesh vertices on surface to reduce the curvature variation and remove the noise. • Similar to high frequency elimination in signal processing. • Note • Can’t reduce overall Gauss curvature • Why? • Use to: • Reduce noise • Improve mesh triangle shape

  24. Laplacian smoothing One-ring Neighborhood of vi

  25. Shrinkage and over smoothing • Solutions • Project back to surface • Keep original mesh and project each vertex to it • Project to approximating surface (ex. quadric) • Other extensions • Add weights reflecting mesh shape

  26. Laplacian + expansion • Define • Modified formula •  slightly bigger than  • Typically  =0.67 = 0.60 • Corresponds to expanding Gauss filter to the second term

  27. Comparison • Drawback • Slow • No stopping criteria

  28. Bilateral denoising • Move verticesin normaldirection • Use image processing denoising weights • One iteration only

  29. Smoothing • Can apply to any surface property • Curvature, normals, physical properties • Can use Gauss filter with small number of iterations

  30. Example – smoothing mean curvature

  31. Summary • Differential properties of surfaces • Curvature analysis can be used for: • Pre-processing (smoothing,…) • Shape understanding • There are many other applications of differential geometry • Mesh parameterization • Mesh simplification • Shape analysis • Symmetry and regular structure detection

  32. Online resources • This course website: • http://www.img.cs.titech.ac.jp/~hamid/courses/cg2008/cg_2008.php • Aknowledgment • Materials of this course are based on: • Siggraph 2007 and Eurographics 2006 courses on Geometry Processing using polygonal meshes: • http://www.agg.ethz.ch/publications/course_notes • Alla Sheffer’s course on Digital Geometry Processing • http://www.cs.ubc.ca/~sheffa/dgp/

More Related