1 / 26

Surface Simplification Using Quadric Error Metrics

Surface Simplification Using Quadric Error Metrics. Speaker: Fengwei Zhang September 20. 2007. Author:. Michael Garland:. A research scientist with NVIDIA and an adjunct professor in the Department of Computer Science

Download Presentation

Surface Simplification Using Quadric Error Metrics

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. Surface Simplification Using Quadric Error Metrics Speaker: Fengwei Zhang September 20. 2007

  2. Author: Michael Garland: A research scientist with NVIDIA and an adjunct professor in the Department of Computer Science at the University of Illinois, Urbana-Champaign. Graduated with Ph.D. from the Computer Science Department of Carnegie Mellon University. Paul S.Heckbert: Computer Science Professor at Carnegie Mellon University from 1992-2001. Currently a 3D Graphics Architect for Nvidia, living and working in Pittsburgh

  3. Background • Simple Introduction to Mesh • Necessary to Simplification: Mass data; Livel Of Detail (LOD)

  4. Background • Good simplification result • Meet the given target criterion: • A face count • A max tolerable error • Good approximation of the original model • Good algorithm • Efficiency • Quality (maintain high fidelity to the original model) • Generality

  5. Related Work 1. Vertex Decimation • References: William J. Schroeder, Jonathan A. Zarge, and William E.Lorensen Decimation of triangle meshes. Computer Graphics(SIGGRAPH ’92 Proc.), 26(2):65–70, July 1992. • Solutions: • Select a vertex for removal • Retriangulate the hole • Property: • Limited to manifold surfaces

  6. Related Work 2. Vertex Clustering • References: Jarek Rossignac and Paul Borrel. Multi-resolution 3D approximations for rendering complex scenes • Solutions: A surrounding box, Divided into a grid, Clustering into a vertex • Property: • 1.Generality and Fast • 2.Can not provide a geometric error bound and low quality

  7. Related Work 3. Edge Contraction • Solutions • Property • How to choose an edge to contract • Be designed for use on manifold surfaces

  8. Compare the Solutions • Vertex Decimation • Provide reasonable efficiency and quality • Limited to manifold surfaces • Vertex Clustering • Generality and Fast • But bad control • Edge Contraction Limited to manifold surfaces Not support aggregation

  9. New Solution: Pair Contraction Edge contraction + Non-edge contraction = (V1,V2)->V Pair Contraction

  10. Why Non-edge contraction • When Overall shape is important than topology • Less sensitive to the mesh connectivity: repair this shortcoming of the initial mesh, when two faces meet at a vertex which is duplicated A regular grid of spaced cubes Non-edge contraction Edge contraction

  11. Why Non-edge contraction • Advantage of like the vertex clustering (V1,V2,…Vk)->V • Generates a large number of approximate models or a multiresolution representation (Mn,Mn-1,…,Mg).

  12. Pair Selection A validpair for contraction: if 1. (v1, v2) is an edge or 2.||v1−v2||< t, where t is a threshold parameter • Choosing t carefully • Pairs are selected at initialization time and only consider these edges during the course of the algorithm • Modify the topology

  13. Approximating Error With Quadrics • How to get the new vertex V: (V1,V2)->V • How to give the cost of a contraction

  14. Approximating Error With Quadrics The distance from the point to the set of surface: Vertex V Error matrix: Q=

  15. Approximating Error With Quadrics Get the new vertex: V Why? Minimize △V= Find ∴ ∴ * • If the matrix is invertible, (*) • If not, find the optimal vertex along the segment (v1,v2) • If failed, find the V amongst v1,v2,(v1+v2)/2

  16. Approximating Error With Quadrics Step: 1.Define a error matrix at each vertex Q 2.Minimize △V= • To get the new vertex: V • The cost of a contraction: min value • The matrix of the new vertex • Required a 4×4 symmetric matrix (10 floating point numbers) at each matrix • A single plane may be counted multipletimes, but at most 3 times

  17. New Algorithm 1. Compute the Q matrices for all the initial vertices. 2. Select all valid pairs 4. Place all the pairs in a heap keyed on cost with the minimum cost pair at the top. 5. Iteratively remove the pair (v1,v2)of least cost from the heap,contract this pair, and update the costs of all valid pairs involving v1.

  18. Additional Details • Preserving Boundaries • Generate a perpendicular plane through the boundary edge • Be weighted by a large penalty factor • Preventing Mesh Inversion Compare the normal of each face before and after the contraction

  19. Experiment Example 5,804 532 248 64 994 • Fast: constructed in about a second • High fidelity: features such as horns and hooves only • disappear in low levels of detail

  20. Experiment Effect of optimal vertex placement Error measurement: Example: Cow model (t=0) Optimal: Choosing an optimal position Fixed:v1,v2,(v1+v2)/2

  21. Experiment the nature of the error quadrics Given s: vQv=s is an ellipsoid around the corresponding vertex 69451 • Conform to the shape of the model surface nicely: • large and flat on planar areas; • be elongated along lines; 1000(15s)

  22. Experiment Benefits of aggregation via pair contractions Uniform Vertex Clustering (262) (11×4×4 grid) 4,204 contain separate bone segments Edge Contractions(250) Pair Contractions(250) (t=0.318) Toes are being merged into larger solid components

  23. Experiment Benefits of aggregation via pair contractions The selection of t: Conclusion: • (t>0) produce better approximations than are achieved by (t= 0) • Increasing t does not always improve the approximation

  24. Conclusion • Pair contract = edge contract + Non-edge contract • Tract the approximate error through Q • Boundary preservation • Efficiency;Quality;Generality

  25. Problem • Measuring error as a distance to a set of planes only works well in a suitably local neighborhood • Contraction created a non-manifold region

  26. Thank you!

More Related