simplifying polygonal surfaces with quadric error metrics michael garland university of illinois at...

32
Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland Michael Garland University of Illinois at Urbana-Champaign University of Illinois at Urbana-Champaign November 1999 November 1999

Upload: jeremy-cook

Post on 04-Jan-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Simplifying Polygonal Surfaces with Quadric Error Metrics

Michael GarlandMichael GarlandUniversity of Illinois at Urbana-ChampaignUniversity of Illinois at Urbana-Champaign

November 1999November 1999

Michael GarlandMichael GarlandUniversity of Illinois at Urbana-ChampaignUniversity of Illinois at Urbana-Champaign

November 1999November 1999

Page 2: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

The Problem of DetailGraphics systems are awash in model dataGraphics systems are awash in model data• very detailed CAD databasesvery detailed CAD databases

• high-precision surface scanshigh-precision surface scans

Available resources are always constrainedAvailable resources are always constrained• CPU, space, graphics speed, network bandwidthCPU, space, graphics speed, network bandwidth

We need economical modelsWe need economical models• want the minimum level of detail (LOD) requiredwant the minimum level of detail (LOD) required

• detail requirements are dictated by contextdetail requirements are dictated by context

Graphics systems are awash in model dataGraphics systems are awash in model data• very detailed CAD databasesvery detailed CAD databases

• high-precision surface scanshigh-precision surface scans

Available resources are always constrainedAvailable resources are always constrained• CPU, space, graphics speed, network bandwidthCPU, space, graphics speed, network bandwidth

We need economical modelsWe need economical models• want the minimum level of detail (LOD) requiredwant the minimum level of detail (LOD) required

• detail requirements are dictated by contextdetail requirements are dictated by context

Page 3: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

A Non-Economical Model

424,376 triangles424,376 triangles 60,000 triangles60,000 triangles

Page 4: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Polygonal Surface ModelsModel composed ofModel composed of

• sets of vertices and trianglessets of vertices and triangles

– all polygons are pre-triangulatedall polygons are pre-triangulated

• other attributes (e.g., color)other attributes (e.g., color)

These are very widely supportedThese are very widely supported

• almost only hardware primitivealmost only hardware primitive

• near-universal in softwarenear-universal in software

Other representations existOther representations exist

• but they don’t solve the problembut they don’t solve the problem

• many applications many applications want want polygonspolygons

Model composed ofModel composed of

• sets of vertices and trianglessets of vertices and triangles

– all polygons are pre-triangulatedall polygons are pre-triangulated

• other attributes (e.g., color)other attributes (e.g., color)

These are very widely supportedThese are very widely supported

• almost only hardware primitivealmost only hardware primitive

• near-universal in softwarenear-universal in software

Other representations existOther representations exist

• but they don’t solve the problembut they don’t solve the problem

• many applications many applications want want polygonspolygons

Page 5: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Automatic Surface Simplification

Page 6: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Automatic Surface SimplificationProduce approximations with fewer trianglesProduce approximations with fewer triangles• should be as similar as possible to originalshould be as similar as possible to original

• want computationally efficient processwant computationally efficient process

Need criteria for assessing similarity of Need criteria for assessing similarity of modelsmodels• for display, visual similarity is the ultimate goalfor display, visual similarity is the ultimate goal

• similarity of shape is often used insteadsimilarity of shape is often used instead

– generally easier to computegenerally easier to compute

– lends itself more to applications other than displaylends itself more to applications other than display

Produce approximations with fewer trianglesProduce approximations with fewer triangles• should be as similar as possible to originalshould be as similar as possible to original

• want computationally efficient processwant computationally efficient process

Need criteria for assessing similarity of Need criteria for assessing similarity of modelsmodels• for display, visual similarity is the ultimate goalfor display, visual similarity is the ultimate goal

• similarity of shape is often used insteadsimilarity of shape is often used instead

– generally easier to computegenerally easier to compute

– lends itself more to applications other than displaylends itself more to applications other than display

Page 7: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Related TopicsFunction approximationFunction approximation• curves & height fields (e.g., terrains)curves & height fields (e.g., terrains)

Geometry compressionGeometry compression• simplification is a kind of lossy compressionsimplification is a kind of lossy compression

Surface smoothingSurface smoothing• reduces geometric complexity of shapereduces geometric complexity of shape

Mesh generationMesh generation• for finite element analysis (e.g., solving for finite element analysis (e.g., solving

PDE’s)PDE’s)

Function approximationFunction approximation• curves & height fields (e.g., terrains)curves & height fields (e.g., terrains)

Geometry compressionGeometry compression• simplification is a kind of lossy compressionsimplification is a kind of lossy compression

Surface smoothingSurface smoothing• reduces geometric complexity of shapereduces geometric complexity of shape

Mesh generationMesh generation• for finite element analysis (e.g., solving for finite element analysis (e.g., solving

PDE’s)PDE’s)

Page 8: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

My Assumptions About InputMesh connectivity is consistentMesh connectivity is consistent• corners which coincide in space share verticescorners which coincide in space share vertices

Surface need not have manifold topologySurface need not have manifold topology• edges can border any number of facesedges can border any number of faces

• vertices shared by arbitrary collection of facesvertices shared by arbitrary collection of faces

• consistent normal orientation not requiredconsistent normal orientation not required

Application domain does not rely on Application domain does not rely on topologytopology• vs. medical imaging — hole in the lung mattersvs. medical imaging — hole in the lung matters

Mesh connectivity is consistentMesh connectivity is consistent• corners which coincide in space share verticescorners which coincide in space share vertices

Surface need not have manifold topologySurface need not have manifold topology• edges can border any number of facesedges can border any number of faces

• vertices shared by arbitrary collection of facesvertices shared by arbitrary collection of faces

• consistent normal orientation not requiredconsistent normal orientation not required

Application domain does not rely on Application domain does not rely on topologytopology• vs. medical imaging — hole in the lung mattersvs. medical imaging — hole in the lung matters

Page 9: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Key Features of My Surface Simplification AlgorithmAn effective algorithm for practical useAn effective algorithm for practical use• simple to implementsimple to implement

• fast simplification (10,000 faces in 1 fast simplification (10,000 faces in 1 second)second)

• high quality approximationshigh quality approximations

Implicitly simplifies topologyImplicitly simplifies topology• all decisions are based on geometric criteriaall decisions are based on geometric criteria

Can manage surface propertiesCan manage surface properties• color, texture, etc.color, texture, etc.

An effective algorithm for practical useAn effective algorithm for practical use• simple to implementsimple to implement

• fast simplification (10,000 faces in 1 fast simplification (10,000 faces in 1 second)second)

• high quality approximationshigh quality approximations

Implicitly simplifies topologyImplicitly simplifies topology• all decisions are based on geometric criteriaall decisions are based on geometric criteria

Can manage surface propertiesCan manage surface properties• color, texture, etc.color, texture, etc.

Page 10: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Fundamental Operation:Edge ContractionA single edge contraction A single edge contraction (v(v11,v,v22) ) v’ v’ is is performed byperformed by• moving vmoving v11 and v and v22 to position v’ to position v’

• replacing all occurrences of vreplacing all occurrences of v22 with v with v11

• removing vremoving v22 and all degenerate triangles and all degenerate triangles

A single edge contraction A single edge contraction (v(v11,v,v22) ) v’ v’ is is performed byperformed by• moving vmoving v11 and v and v22 to position v’ to position v’

• replacing all occurrences of vreplacing all occurrences of v22 with v with v11

• removing vremoving v22 and all degenerate triangles and all degenerate triangles

v1v1

v2v2v’v’

Page 11: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Overview of AlgorithmPreprocessing phase: model cleanupPreprocessing phase: model cleanup• enforce vertex sharingenforce vertex sharing

• triangulate & remove degenerate facestriangulate & remove degenerate faces

Iteratively contract vertex pairs (i.e., Iteratively contract vertex pairs (i.e., edges)edges)• simple greedy techniquesimple greedy technique

• rank edges by “cost” of contractionrank edges by “cost” of contraction

• maintain proposed contractions in a heapmaintain proposed contractions in a heap

• at each iteration, contract minimum cost edgeat each iteration, contract minimum cost edge

Preprocessing phase: model cleanupPreprocessing phase: model cleanup• enforce vertex sharingenforce vertex sharing

• triangulate & remove degenerate facestriangulate & remove degenerate faces

Iteratively contract vertex pairs (i.e., Iteratively contract vertex pairs (i.e., edges)edges)• simple greedy techniquesimple greedy technique

• rank edges by “cost” of contractionrank edges by “cost” of contraction

• maintain proposed contractions in a heapmaintain proposed contractions in a heap

• at each iteration, contract minimum cost edgeat each iteration, contract minimum cost edge

Page 12: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Measuring Cost of Contractions Cost should reflect geometric error introducedCost should reflect geometric error introduced• error between current & original (vs. last iteration)error between current & original (vs. last iteration)

• also want this to be fairly cheap to computealso want this to be fairly cheap to compute

• various contraction-based algorithms differ herevarious contraction-based algorithms differ here [Guéziec 95; Hoppe 96; Lindstrom-Turk 98; Ronfard-Rossignac 96][Guéziec 95; Hoppe 96; Lindstrom-Turk 98; Ronfard-Rossignac 96]

Must address two interrelated problemsMust address two interrelated problems• what is the best contraction to perform?what is the best contraction to perform?

• what is the best position v’ for remaining vertex?what is the best position v’ for remaining vertex?

Cost should reflect geometric error introducedCost should reflect geometric error introduced• error between current & original (vs. last iteration)error between current & original (vs. last iteration)

• also want this to be fairly cheap to computealso want this to be fairly cheap to compute

• various contraction-based algorithms differ herevarious contraction-based algorithms differ here [Guéziec 95; Hoppe 96; Lindstrom-Turk 98; Ronfard-Rossignac 96][Guéziec 95; Hoppe 96; Lindstrom-Turk 98; Ronfard-Rossignac 96]

Must address two interrelated problemsMust address two interrelated problems• what is the best contraction to perform?what is the best contraction to perform?

• what is the best position v’ for remaining vertex?what is the best position v’ for remaining vertex?

Page 13: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

How I Measure ErrorEach vertex has a (conceptual) set of planesEach vertex has a (conceptual) set of planes• error error sum of squared distances to planes in set sum of squared distances to planes in set

Initialize with planes of incident facesInitialize with planes of incident faces• consequently, all initial errors are 0consequently, all initial errors are 0

When contracting pair, use union of plane When contracting pair, use union of plane setssets• planes(v’) = planes(vplanes(v’) = planes(v11) ) planes(v planes(v22))

Each vertex has a (conceptual) set of planesEach vertex has a (conceptual) set of planes• error error sum of squared distances to planes in set sum of squared distances to planes in set

Initialize with planes of incident facesInitialize with planes of incident faces• consequently, all initial errors are 0consequently, all initial errors are 0

When contracting pair, use union of plane When contracting pair, use union of plane setssets• planes(v’) = planes(vplanes(v’) = planes(v11) ) planes(v planes(v22))

Error T( ) ( )v n v i ii

d 2Error T( ) ( )v n v i ii

d 2

Page 14: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

A Simple Example:Contraction & “Planes” in 2DLines defined by neighboring segmentsLines defined by neighboring segments

• determine position of new vertexdetermine position of new vertex

• accumulate lines for ever larger areasaccumulate lines for ever larger areas

Lines defined by neighboring segmentsLines defined by neighboring segments

• determine position of new vertexdetermine position of new vertex

• accumulate lines for ever larger areasaccumulate lines for ever larger areas

v1v1v2v2

v’v’

Page 15: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

How I Measure ErrorWhy base error on planes?Why base error on planes?• faster, but less accurate, than distance-to-facefaster, but less accurate, than distance-to-face

• simple linear system for minimum-error positionsimple linear system for minimum-error position

• efficient implicit representation; no sets requiredefficient implicit representation; no sets required

• drawback: unlike surface, planes are infinitedrawback: unlike surface, planes are infinite

Related error metricsRelated error metrics• Ronfard & Rossignac — max vs. sumRonfard & Rossignac — max vs. sum

• Lindstrom & Turk — similar form; volume-basedLindstrom & Turk — similar form; volume-based

Why base error on planes?Why base error on planes?• faster, but less accurate, than distance-to-facefaster, but less accurate, than distance-to-face

• simple linear system for minimum-error positionsimple linear system for minimum-error position

• efficient implicit representation; no sets requiredefficient implicit representation; no sets required

• drawback: unlike surface, planes are infinitedrawback: unlike surface, planes are infinite

Related error metricsRelated error metrics• Ronfard & Rossignac — max vs. sumRonfard & Rossignac — max vs. sum

• Lindstrom & Turk — similar form; volume-basedLindstrom & Turk — similar form; volume-based

Page 16: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

The Quadric Error MetricGiven a plane, we can define a Given a plane, we can define a quadricquadric Q QGiven a plane, we can define a Given a plane, we can define a quadricquadric Q Q

measuring squared distance to the plane asmeasuring squared distance to the plane asmeasuring squared distance to the plane asmeasuring squared distance to the plane as

Q x y z

a ab ac

ab b bc

ac bc c

x

y

z

ad bd cd

x

y

z

d( )v

L

NMMM

O

QPPPL

NMMM

O

QPPP

L

NMMM

O

QPPP

2

2

2

22Q x y z

a ab ac

ab b bc

ac bc c

x

y

z

ad bd cd

x

y

z

d( )v

L

NMMM

O

QPPPL

NMMM

O

QPPP

L

NMMM

O

QPPP

2

2

2

22

Q c( )v v Av b v T T2Q c( )v v Av b v T T2

Q c d d ( , , ) ( , , )A b nn nT 2Q c d d ( , , ) ( , , )A b nn nT 2

Page 17: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

The Quadric Error Metric Sum of quadrics represents set of Sum of quadrics represents set of planesplanes

Each vertex has an associated quadricEach vertex has an associated quadric

• error(error(vvii) = ) = QQii (v (vii))

• sum quadrics when contracting sum quadrics when contracting (v(vii, v, vjj) ) v’ v’

• cost of contraction is cost of contraction is Q(v’)Q(v’)

Sum of quadrics represents set of Sum of quadrics represents set of planesplanes

Each vertex has an associated quadricEach vertex has an associated quadric

• error(error(vvii) = ) = QQii (v (vii))

• sum quadrics when contracting sum quadrics when contracting (v(vii, v, vjj) ) v’ v’

• cost of contraction is cost of contraction is Q(v’)Q(v’)

( ) ( ) ( )n v v vi ii

ii

ii

d Q QT FHG

IKJ 2( ) ( ) ( )n v v vi i

ii

ii

id Q QT

FHG

IKJ 2

Q Q Q c ci j i j i j i j ( , , )A A b bQ Q Q c ci j i j i j i j ( , , )A A b b

Page 18: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

The Quadric Error MetricSum of endpoint quadrics determines v’Sum of endpoint quadrics determines v’

• fixed placement: select fixed placement: select vv1 1 or or vv22

• optimal placement: choose optimal placement: choose v’v’ minimizing minimizing Q(v’)Q(v’)

• fixed placement is faster but lower qualityfixed placement is faster but lower quality

• fallback to fixed placement if fallback to fixed placement if AA is non- is non-invertibleinvertible

Sum of endpoint quadrics determines v’Sum of endpoint quadrics determines v’

• fixed placement: select fixed placement: select vv1 1 or or vv22

• optimal placement: choose optimal placement: choose v’v’ minimizing minimizing Q(v’)Q(v’)

• fixed placement is faster but lower qualityfixed placement is faster but lower quality

• fallback to fixed placement if fallback to fixed placement if AA is non- is non-invertibleinvertible

Q( ')v v A b0 1 Q( ')v v A b0 1

Page 19: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Sample Model: Scanned Bunny

69,451 faces69,451 faces 1000 faces1000 faces 100 faces100 faces

Total simplification time: Total simplification time: 7 seconds7 seconds

• 200 MHz PentiumPro; excludes input–output time200 MHz PentiumPro; excludes input–output time

Shape preserved at 1000 faces; gross structure Shape preserved at 1000 faces; gross structure at 100at 100

Total simplification time: Total simplification time: 7 seconds7 seconds

• 200 MHz PentiumPro; excludes input–output time200 MHz PentiumPro; excludes input–output time

Shape preserved at 1000 faces; gross structure Shape preserved at 1000 faces; gross structure at 100at 100

Page 20: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Demo

Page 21: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Visualizing Quadrics in 3-DQuadric Quadric isosurfacesisosurfaces

• are always are always ellipsoidsellipsoids(maybe (maybe degenerate)degenerate)

• centered around centered around vertices vertices

• characterize shapecharacterize shape

• stretch in least-stretch in least-curved directionscurved directions

Quadric Quadric isosurfacesisosurfaces

• are always are always ellipsoidsellipsoids(maybe (maybe degenerate)degenerate)

• centered around centered around vertices vertices

• characterize shapecharacterize shape

• stretch in least-stretch in least-curved directionscurved directions

Page 22: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Quadrics and Surface CurvatureFor quadrics on differentiable manifoldFor quadrics on differentiable manifold• limit of infinitely subdivided polygonal surfacelimit of infinitely subdivided polygonal surface

• integrate quadrics in a small neighborhoodintegrate quadrics in a small neighborhood

Can prove that in the limitCan prove that in the limit• eigenvectors of A are principal directionseigenvectors of A are principal directions

• eigenvalues of A eigenvalues of A squared principal squared principal curvaturescurvatures

• algorithm which minimizes quadric error will algorithm which minimizes quadric error will produce optimal aspect ratios produce optimal aspect ratios [Heckbert–Garland 99][Heckbert–Garland 99]

For quadrics on differentiable manifoldFor quadrics on differentiable manifold• limit of infinitely subdivided polygonal surfacelimit of infinitely subdivided polygonal surface

• integrate quadrics in a small neighborhoodintegrate quadrics in a small neighborhood

Can prove that in the limitCan prove that in the limit• eigenvectors of A are principal directionseigenvectors of A are principal directions

• eigenvalues of A eigenvalues of A squared principal squared principal curvaturescurvatures

• algorithm which minimizes quadric error will algorithm which minimizes quadric error will produce optimal aspect ratios produce optimal aspect ratios [Heckbert–Garland 99][Heckbert–Garland 99]

Page 23: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Sample Model: Dental Mold

424,376 faces424,376 faces 60,000 faces60,000 faces

50 sec50 sec

Page 24: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Sample Model: Dental Mold

424,376 faces424,376 faces 8000 faces8000 faces

55 sec55 sec

Page 25: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Sample Model: Dental Mold

424,376 faces424,376 faces 1000 faces1000 faces

56 sec56 sec

Page 26: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Sample Model: Turbine Blade

1,765,388 faces1,765,388 faces 420,000 faces420,000 faces

217 sec217 sec

Page 27: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Sample Model: Turbine Blade

1,765,388 faces1,765,388 faces 80,000 faces80,000 faces

300 sec300 sec

Page 28: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Sample Model: Turbine Blade

1,765,388 faces1,765,388 faces

310 sec310 sec

8000 faces8000 faces

Page 29: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Summary:Quadric-Based SimplificationAn effective simplification techniqueAn effective simplification technique• good compromise between highest quality good compromise between highest quality

and fastest simplificationand fastest simplification

• uses efficient characterization of local shapeuses efficient characterization of local shape

• proven connection to surface curvature and proven connection to surface curvature and optimal triangle shapeoptimal triangle shape

Currently in real-world useCurrently in real-world use• scanned data, CAD, VR, medical imaging …scanned data, CAD, VR, medical imaging …

An effective simplification techniqueAn effective simplification technique• good compromise between highest quality good compromise between highest quality

and fastest simplificationand fastest simplification

• uses efficient characterization of local shapeuses efficient characterization of local shape

• proven connection to surface curvature and proven connection to surface curvature and optimal triangle shapeoptimal triangle shape

Currently in real-world useCurrently in real-world use• scanned data, CAD, VR, medical imaging …scanned data, CAD, VR, medical imaging …

Page 30: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Future DirectionsBroader applicabilityBroader applicability• non-rigid surfaces (i.e., for animation)non-rigid surfaces (i.e., for animation)

• extremely large datasets of 10extremely large datasets of 1099 or more triangles or more triangles

• other model types: tetrahedral meshs, splines, …other model types: tetrahedral meshs, splines, …

• alternative multiresolution representationsalternative multiresolution representations

Higher quality approximationsHigher quality approximations• more effective topological simplificationmore effective topological simplification

• good performance at extreme levelsgood performance at extreme levels

• better analysis of resulting approximation qualitybetter analysis of resulting approximation quality

Broader applicabilityBroader applicability• non-rigid surfaces (i.e., for animation)non-rigid surfaces (i.e., for animation)

• extremely large datasets of 10extremely large datasets of 1099 or more triangles or more triangles

• other model types: tetrahedral meshs, splines, …other model types: tetrahedral meshs, splines, …

• alternative multiresolution representationsalternative multiresolution representations

Higher quality approximationsHigher quality approximations• more effective topological simplificationmore effective topological simplification

• good performance at extreme levelsgood performance at extreme levels

• better analysis of resulting approximation qualitybetter analysis of resulting approximation quality

Page 31: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

AcknowledgementsFunded in part byFunded in part by

• National Science FoundationNational Science Foundation

• Schlumberger FoundationSchlumberger Foundation

Sample models courtesy ofSample models courtesy of

• Stanford graphics lab — bunnyStanford graphics lab — bunny

• Iris Development — dental moldIris Development — dental mold

• Viewpoint DataLabs — dragonViewpoint DataLabs — dragon

• GE/KitWare — turbine bladeGE/KitWare — turbine blade

• Andrew Willmott — radiosity solutionAndrew Willmott — radiosity solution

Funded in part byFunded in part by

• National Science FoundationNational Science Foundation

• Schlumberger FoundationSchlumberger Foundation

Sample models courtesy ofSample models courtesy of

• Stanford graphics lab — bunnyStanford graphics lab — bunny

• Iris Development — dental moldIris Development — dental mold

• Viewpoint DataLabs — dragonViewpoint DataLabs — dragon

• GE/KitWare — turbine bladeGE/KitWare — turbine blade

• Andrew Willmott — radiosity solutionAndrew Willmott — radiosity solution

Page 32: Simplifying Polygonal Surfaces with Quadric Error Metrics Michael Garland University of Illinois at Urbana-Champaign November 1999 Michael Garland University

Further Details Available OnlineFree sample Free sample implementation,implementation,

example surface models,example surface models,

related papers.related papers.

Free sample Free sample implementation,implementation,

example surface models,example surface models,

related papers.related papers.

http://www.uiuc.edu/~garland/http://www.uiuc.edu/~garland/http://www.uiuc.edu/~garland/http://www.uiuc.edu/~garland/