Surface Simplification Using Quadric Error Metrics

  • Upload
    alesia

  • View
    37

  • Download
    3

Embed Size (px)

DESCRIPTION

Surface Simplification Using Quadric Error Metrics. By Michael Garland and Paul S. Heckbert Carnegie Mellon University Presented by Lok Hwa and Taylor Holliday. Background / Related Work. - PowerPoint PPT Presentation

Citation preview

  • Surface Simplification Using Quadric Error MetricsBy Michael Garland and Paul S. HeckbertCarnegie Mellon University Presented byLok Hwa and Taylor Holliday

    Multiresolution (ECS 289L) - Winter 2003

  • 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

    Multiresolution (ECS 289L) - Winter 2003

  • IntroductionIterative Pair Contraction

    Multiresolution (ECS 289L) - Winter 2003

  • Cow Simplification in under 1 second

    Multiresolution (ECS 289L) - Winter 2003

  • 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

    Multiresolution (ECS 289L) - Winter 2003

  • 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

    Multiresolution (ECS 289L) - Winter 2003

  • Algorithm: Vertex Pair Contraction

    (v1, v2) vMove v1 and v2 to vReplace all occurances of v2 with v1Remove v2 and degenerate trianglesValid PairsEdges||v1 - v2 || < t , where t is a threshhold parameter

    Multiresolution (ECS 289L) - Winter 2003

  • Algorithm: Aggregation

    Multiresolution (ECS 289L) - Winter 2003

  • Q is a 4x4 symmetric matrix representing the error at each vertexEvaluated at vertex v = [vx vy vz 1]: (V) = vTQvNeed a new Q for contraction (v1, v2) v Q = Q1 + Q2Want to minimize (v)Using Quadrics to Approximate Error

    Multiresolution (ECS 289L) - Winter 2003

  • Using Quadrics to Approximate ErrorIf matrix is not invertible, then try to find optimal vertex along segment v1v2, else choose from v1 v2 or midpoint

    Multiresolution (ECS 289L) - Winter 2003

  • 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

    Multiresolution (ECS 289L) - Winter 2003

  • Algorithm SummaryCompute Q matrices for all the initial vertices. Select all the valid pairs Compute the optimal contraction target for each valid pair. The error becomes the cost of contracting that pair.

    Place all the pairs in a priority queue keyed on cost with the minimum cost pair at the front

    Multiresolution (ECS 289L) - Winter 2003

  • Algorithm Summary (cont..)Iteratively remove the least cost pair (v1, v2), contract it, and updated the costs of all valid pairs involving v1 until the simplification goals are satisfied

    Multiresolution (ECS 289L) - Winter 2003

  • Derivation of QEMs

    Multiresolution (ECS 289L) - Winter 2003

  • Derivation of QEMsIntuitively: sum of squared distances from a set of planesFirst, we show that squared distance to a plane can be represented as a quadratic form

    Multiresolution (ECS 289L) - Winter 2003

  • Derivation of QEMs

    Multiresolution (ECS 289L) - Winter 2003

  • Derivation of QEMs

    Multiresolution (ECS 289L) - Winter 2003

  • Derivation of QEMs

    Multiresolution (ECS 289L) - Winter 2003

  • Derivation of QEMs

    Multiresolution (ECS 289L) - Winter 2003

  • Derivation of QEMsNow we combine these quadrics for a set of planes

    Multiresolution (ECS 289L) - Winter 2003

  • Derivation of QEMsNow we combine these quadrics for a set of planes

    Note Q is positive definite

    Multiresolution (ECS 289L) - Winter 2003

  • Geometric InterpretationVertex errors have either planar, cylindrical, or ellipsoid level surfaces

    Multiresolution (ECS 289L) - Winter 2003

  • Geometric InterpretationWhy ellipsoids? If Q is diagonalizable,

    Multiresolution (ECS 289L) - Winter 2003

  • Geometric InterpretationWhy ellipsoids? If Q is diagonalizable,

    Let

    Multiresolution (ECS 289L) - Winter 2003

  • Geometric InterpretationWhy ellipsoids? If Q is diagonalizable,

    LetApply the rotationy = ST v

    Multiresolution (ECS 289L) - Winter 2003

  • DetailsRecall: minimizeDo not double-count planes on an original vertexPlanes can still be double-counted if they coincide between vertices

    Multiresolution (ECS 289L) - Winter 2003

  • Preserving BoundariesError quadrics do not make allowance for boundary edges - such as those found in terrainsWe want to simplify the shape, but preserve the boundaryGenerate heavily weighted planes perpendicular to boundary triangles

    Multiresolution (ECS 289L) - Winter 2003

  • Preventing Mesh Inversionprevent normals from changing direction by more than (flipping)Contractions resulting in flipped normals are rejected

    Multiresolution (ECS 289L) - Winter 2003

  • Results

    Multiresolution (ECS 289L) - Winter 2003

  • Evaluation MetricNeed a metric for approximation error

    Multiresolution (ECS 289L) - Winter 2003

  • Effect of vertex placement

    Multiresolution (ECS 289L) - Winter 2003

  • Bunny Model

    Multiresolution (ECS 289L) - Winter 2003

  • Crater Lake Model

    Multiresolution (ECS 289L) - Winter 2003

  • Timingst is non-edge contraction thresholdCrater Lake was a large dataset in 1997

    Multiresolution (ECS 289L) - Winter 2003

  • Foot Model

    Multiresolution (ECS 289L) - Winter 2003

  • AggregationRecall: aggregation is the joining of disconnected componentsAggregation effects approximation error

    Multiresolution (ECS 289L) - Winter 2003

  • DiscussionPrimary weakness of QEMs: measuring the distance to a set of planes only works well in local neighborhoodsNote that there is usually no longer a zero-distance point after we add quadricsRemoved planes are still counted during simplificationNo easy way to subtract them from quadrics

    Multiresolution (ECS 289L) - Winter 2003

  • ConclusionQualityOnly other algorithm supporting aggregation (vertex clustering) has low qualityEfficiencyCompact error information (10 floats/vertex)GeneralityAggregationNon-manifold topology

    Multiresolution (ECS 289L) - Winter 2003

    Note the large and flat ellipsoids near more planar regions such as the hind leg.Note the large and flat ellipsoids near more planar regions such as the hind leg.Note the large and flat ellipsoids near more planar regions such as the hind leg.Note the large and flat ellipsoids near more planar regions such as the hind leg.This is a technique rejected as too expensive by the previous paper, which relied on a topological approach. However, with the approach in this paper, more contractions may be considered. Can a non-edge contraction result in a normal flip?Approximation is best for mid-sized reductions. This is highly data dependant. In general, the result of the algorithm initially removing fairly low detail vertices (where placement doesnt matter as much), then encountering important vertices where placement matters. Finally, when the approximation drops very low, this metric understates the perceived improvement.Crater Lake is a smallish dataset by todays standards - about a quarter the size of the 16k Puget Sound dataset.Here we can really see the algorithm at work. Compare uniform vertex clustering (other method), with Quadrics w/o aggregation, and quadrics with aggregation.The authors were dissatisfied with the aggregation performance.