visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Surface Simplification Using Quadric Error Metrics By Michael Garland and Paul S. Heckbert Carnegie Mellon University Presented by Lok Hwa and Taylor Holliday
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Vertex Decimation (Schroeder et al 92; Soucy-Laurendeau 96) - usually limited to non-manifold surfaces - carefully maintains the model topology Vertex Clustering (Rossignac-Borrel 93; Low-Tan 96) - fast and general, but quality is usually comparably lower - cannot input a specific face count; needs more control - can alter topology drastically Iterative Edge Contraction (Hoppe 96; Gueziec 95; Ronfard-Rossignac 96) - mainly designed for manifold surfaces - can close holes but not join unconnected regions Background / Related Work
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Introduction Iterative Pair Contraction
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Cow Simplification in under 1 second
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Efficiency : fast running time and error approximation is compact (10 floating point numbers per vertex) Quality : Main features are preserved even in highly simplified models Generality : Joins unconnected regions (aggregation) Better approximations of many disconnected parts. Works on non-manifold surface and actually creates non-manifold surfaces. Advantages
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Polygon models consisting of triangles only Better results achieved if intersecting triangle corners are defined as a shared vertex Applications are for rendering systems, not visualization Input is typically either a desired face count or maximum tolerable error Algorithm Setup
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Algorithm: Vertex Pair Contraction (v 1, v 2 ) v –Move v 1 and v 2 to v –Replace all occurances of v 2 with v 1 –Remove v 2 and degenerate triangles Valid Pairs –Edges –|| v 1 - v 2 || < t, where t is a threshhold parameter
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Algorithm: Aggregation
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Q is a 4x4 symmetric matrix representing the error at each vertex Evaluated at vertex v = [v x v y v z 1]: (V) = v T Q v Need a new Q for contraction (v 1, v 2 ) v Q = Q 1 + Q 2 Want to minimize (v) Using Quadrics to Approximate Error
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Using Quadrics to Approximate Error If matrix is not invertible, then try to find optimal vertex along segment v 1 v 2, else choose from v 1 v 2 or midpoint
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Start by representing the models in an adjacency graph structure: vertices, edges, and faces all explicitly linked together. - Keep in mind the mesh must handle arbitrary topology Each vertex maintains a list of the pairs of which it is a member. Algorithm Summary
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Algorithm Summary 1.Compute Q matrices for all the initial vertices. 2.Select all the valid pairs 3.Compute the optimal contraction target for each valid pair. The error becomes the cost of contracting that pair. 4.Place all the pairs in a priority queue keyed on cost with the minimum cost pair at the front
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Algorithm Summary (cont..) 5.Iteratively remove the least cost pair (v 1, v 2 ), contract it, and updated the costs of all valid pairs involving v 1 until the simplification goals are satisfied
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Derivation of QEMs
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Derivation of QEMs Intuitively: sum of squared distances from a set of planes First, we show that squared distance to a plane can be represented as a quadratic form
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Derivation of QEMs
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Derivation of QEMs
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Derivation of QEMs
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Derivation of QEMs
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Derivation of QEMs Now we combine these quadrics for a set of planes
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Derivation of QEMs Now we combine these quadrics for a set of planes Note Q is positive definite
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Geometric Interpretation Vertex errors have either planar, cylindrical, or ellipsoid level surfaces
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Geometric Interpretation Why ellipsoids? If Q is diagonalizable,
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Geometric Interpretation Why ellipsoids? If Q is diagonalizable, Let
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Geometric Interpretation Why ellipsoids? If Q is diagonalizable, Let Apply the rotation y = S T v
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Details Recall: minimize Do not double-count planes on an original vertex Planes can still be double-counted if they coincide between vertices
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Preserving Boundaries Error quadrics do not make allowance for boundary edges - such as those found in terrains We want to simplify the shape, but preserve the boundary Generate heavily weighted planes perpendicular to boundary triangles
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Preventing Mesh Inversion prevent normals from changing direction by more than (“flipping”) Contractions resulting in flipped normals are rejected
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Results
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Evaluation Metric Need a metric for approximation error
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Effect of vertex placement
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Bunny Model
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Crater Lake Model
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Timings t is non-edge contraction threshold Crater Lake was a large dataset in 1997
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Foot Model
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Aggregation Recall: aggregation is the joining of disconnected components Aggregation effects approximation error
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Discussion Primary weakness of QEMs: measuring the distance to a set of planes only works well in local neighborhoods –Note that there is usually no longer a zero- distance point after we add quadrics Removed planes are still counted during simplification –No easy way to subtract them from quadrics
visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Conclusion Quality Only other algorithm supporting aggregation (vertex clustering) has low quality Efficiency Compact error information (10 floats/vertex) Generality Aggregation Non-manifold topology