Download presentation
Presentation is loading. Please wait.
Published byCedric Sweetser Modified over 9 years ago
1
Surface Simplification Using Quadric Error Metrics Speaker: Fengwei Zhang September 20. 2007
2
Author: Michael Garland: Paul S.Heckbert: A research scientist with NVIDIA and an adjunct professorNVIDIA in the Department of Computer ScienceDepartment of Computer Science at the University of Illinois, Urbana-Champaign.University of Illinois Graduated with Ph.D. from the Computer Science Department of Carnegie Mellon University.Computer Science DepartmentCarnegie Mellon University Computer Science Professor at Carnegie Mellon University from 1992-2001. Currently a 3D Graphics Architect for Nvidia,Nvidia living and working in Pittsburgh
3
Background Simple Introduction to Mesh Necessary to Simplification: Mass data; Livel Of Detail (LOD)
4
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 Background
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
2. Vertex Clustering Related Work 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
3. Edge Contraction Related Work 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
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 Edge contraction Non-edge contraction Why Non-edge contraction
11
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). Why Non-edge contraction
12
Pair Selection if 1. (v1, v2) is an edge or 2.||v1−v2||< t, where t is a threshold parameter A valid pair for contraction: 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
The distance from the point to the set of surface: Vertex V Error matrix: Q= Approximating Error With Quadrics
15
Get the new vertex: V Minimize △ V= Why? 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 * Approximating Error With Quadrics
16
1.Define a error matrix at each vertex Q Step: 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 Fast: constructed in about a second High fidelity: features such as horns and hooves only disappear in low levels of detail 5,804 994 53224864 Example
20
Experiment Fixed:v1,v2,(v1+v2)/2 Effect of optimal vertex placement Optimal: Choosing an optimal position Cow model (t=0) Error measurement : Example:
21
Experiment 69451 1000(15s) the nature of the error quadrics Given s: vQv=s is an ellipsoid around the corresponding vertex Conform to the shape of the model surface nicely: large and flat on planar areas; be elongated along lines;
22
Experiment Benefits of aggregation via pair contractions 4,204 contain separate bone segments Uniform Vertex Clustering (262) (11 × 4 × 4 grid) 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 (t>0) produce better approximations than are achieved by (t= 0) Increasing t does not always improve the approximation Conclusion: The selection of t:
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!
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.