1 / 31

Surface Simplification Using Quadric Error Metrics

Surface Simplification Using Quadric Error Metrics. Michael Garland Paul S. Heckbert. Why Simplification?. Full complexity of models is not always required Reduce the computational cost Get fast processing speed. Objective.

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 Michael Garland Paul S. Heckbert

  2. Why Simplification? • Full complexity of models is not always required • Reduce the computational cost • Get fast processing speed

  3. Objective • Find a surface simplification algorithm that can be used in rendering systems for multiresolution model • Efficient • Good quality • Generality • Join unconnected regions of the model together ---- aggregation

  4. Categories of surface simplification algorithms • Vertex Decimation • Vertex Clustering • Iterative Edge Contraction

  5. Vertex Decimation • Basic idea • Iteratively selects a vertex for removal, removes all adjacent faces, and retriangulates the resulting hole. • Pros: provide reasonable efficiency and quality • Cons: only limited to manifold surfaces

  6. Vertex Clustering • Basic idea • A bounding box is placed around the original model and divided into grids • Vertices within each cell are clustered together into a single vertex and model faces are updated accordingly • Pros: • Fast • Can make drastic topological alterations • Cons • Output quality is very low

  7. Iterative Edge Contraction • Cons: do not support aggregation

  8. Assumptions • Model only consists of triangles • The topology of the model need not to be maintained • In a good approximation, points do not move far from their original positions

  9. Algorithm overview • Iteratively contract vertex pairs ( a generalization of edge contraction) • As the algorithm proceeds, a geometric error approximation is maintained at each vertex of the model which is represented using quadric matrices • The algorithm proceeds until the simplification goals are satisfied.

  10. Pair Contraction

  11. Advantages of pair contraction • Achieve aggregation, which can join previously unconnected regions of the model together • Algorithm is less sensitive to the mesh connectivity of the original model

  12. Edge contraction vs. pair contraction Regular grid of 100 closely spaced cubes Approximation using edge contraction Approximation using pair contraction

  13. Pair Selection • Select the set of valid pairs at initialization time • A pair (V1, V2) is a valid pair for contraction if either: • (V1, V2) is an edge, or • ||V1 – V2|| < t, where t is a threshold parameter

  14. Pair contraction • Initially, each vertex is associated with the set of pairs of which it is a member • After performing contraction (V1, V2) → V1 • V1 acquires all the edges that were linked to V2 • Merge the set of pairs from V2 into its own set and remove duplicate pairs

  15. Error approximation • Associate a symmetric 44 matrix Q with each vertex • The error at vertex v is defined as the quadratic form: ∆(v) = vTQv. • For a given contraction (v1, v2) → v’, a new matrix Q’ needs to be derived to approximate the error at v’. • Q’ = Q1 + Q2

  16. Find the position for v’ • Simply select either v1, v2, or (v1+v2)/2 which produces the lowest value of error at v’ (∆(v’) = v’TQ’v’). • Find a position for v’ which minimizes ∆(v’)

  17. Compute the initial Q matrices • Associate a set of planes with each vertex • Define the error of the vertex as the sum of squared distances to the planes Here p=[a b c d]T represents the plane defined by equation ax+by+cz+d=0, and a2+b2+c2=1

  18. Quadratic form Kp is defined as “fundamental error quadric”.

  19. Algorithm summary • Compute the Q matrices for all the initial vertices • Select all valid pairs and compute the optimal contraction target v’ for each valid pair (v1, v2). • The cost of contracting the pair is computed as: v’T(Q1+Q2)V’ • Place all the pairs in a heap keyed on cost with the minimum cost pair at the top • Iteratively remove the pair (v1, v2) of the least cost from the heap, contract this pair and update the costs of all valid pairs involving v1, v2.

  20. Approximation evaluation • The approximation error Ei of the simplified model Mi is defined as: Mn ---- the initial model. Xn ---- sets of points sampled on model Mn Xi ---- sets of points sampled on model Mi

  21. Result(1) ---- an example sequence of approximations 5,804 faces 994 faces 532 faces 248 faces 64 faces An example sequence of approximations generated by the algorithm. The entire sequence was constructed in about one second.

  22. Result(2) – sample running times Time needed to make a 10 face approximation of the given model.

  23. Result(3) – effect of optimal vertex placement Choosing an optimal position can significantly reduce approximation error.

  24. Result(4) ---- bunny model 69,451 triangles 1,000 triangles 100 triangles 1.4% of original size 0.14% of original size

  25. Result(5) ---- Terrain model 199,114 faces 999 faces (46 secs)

  26. Result(6) ---- comparison between different methods Original model Edge Contractions (250 faces) (4,204 faces) Uniform Vertex Clustering Pair Contractions (250 faces) (262 faces)

  27. Result(7) ---- level surfaces of error quadrics 1000 face approximation 250 face approximation

  28. Result(8) ---- initially valid pairs

  29. Result(9) -- effect of pair thresholds

  30. Conclusion • This paper presents a surface simplification algorithm using iterative pair contractions and quadric error metrics. • The algorithm can provide high efficiency, high quality and high generality.

  31. Future works • Use a more sophisticated adaptive scheme to select valid pairs • Take the color of surface into account

More Related