Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Multiphase Approach to Efficient Surface Simplification Michael Garland Eric Shaffer University of Illinois at Urbana–Champaign Michael Garland Eric.

Similar presentations


Presentation on theme: "A Multiphase Approach to Efficient Surface Simplification Michael Garland Eric Shaffer University of Illinois at Urbana–Champaign Michael Garland Eric."— Presentation transcript:

1 A Multiphase Approach to Efficient Surface Simplification Michael Garland Eric Shaffer University of Illinois at Urbana–Champaign Michael Garland Eric Shaffer University of Illinois at Urbana–Champaign

2 Typical Simplification Problem 1,765,388 faces 420,000 faces 80,000 faces

3 One Common Solution Greedy iterative contraction edges (or vertex pairs) are most common, faces also usededges (or vertex pairs) are most common, faces also used Starting with the original model, iteratively rank all edges with some cost metricrank all edges with some cost metric contract minimum cost edgecontract minimum cost edge update edge costsupdate edge costs Greedy iterative contraction edges (or vertex pairs) are most common, faces also usededges (or vertex pairs) are most common, faces also used Starting with the original model, iteratively rank all edges with some cost metricrank all edges with some cost metric contract minimum cost edgecontract minimum cost edge update edge costsupdate edge costs

4 Measuring Contraction Cost: Quadric Error Metric Given a plane, we can define a quadric Q measuring squared distance of point to plane

5 Measuring Contraction Cost: Quadric Error Metric Sum of quadrics represents set of planes Any set of vertices has an associated quadric sum of quadrics for faces with corner in setsum of quadrics for faces with corner in set find representative point v * minimizing Q(v * )find representative point v * minimizing Q(v * ) Sum of quadrics represents set of planes Any set of vertices has an associated quadric sum of quadrics for faces with corner in setsum of quadrics for faces with corner in set find representative point v * minimizing Q(v * )find representative point v * minimizing Q(v * )

6 Why Iterative Methods Fail: Massive Surface Models 8 million triangles 28 million triangles 300 million triangles

7 One Solution: Out-of-Core Simplification Single pass spatial clustering partition space into cellspartition space into cells merge all vertices within each cellmerge all vertices within each cell Two common partition types uniform grid [Lindstrom 00]uniform grid [Lindstrom 00] BSP tree [Shaffer & Garland 01]BSP tree [Shaffer & Garland 01] Single pass spatial clustering partition space into cellspartition space into cells merge all vertices within each cellmerge all vertices within each cell Two common partition types uniform grid [Lindstrom 00]uniform grid [Lindstrom 00] BSP tree [Shaffer & Garland 01]BSP tree [Shaffer & Garland 01]

8 But Output Quality Deteriorates Significantly Original Uniform grid (1100 faces) BSP tree (1000 faces)

9 Want Truly General Method Able to process meshes of arbitrary size output-sensitive memory usageoutput-sensitive memory usage scan through input a minimal number of timesscan through input a minimal number of times like out-of-core clustering methodslike out-of-core clustering methods Produce high quality approximations even at low output resolutionseven at low output resolutions like iterative contraction algorithmslike iterative contraction algorithms Able to process meshes of arbitrary size output-sensitive memory usageoutput-sensitive memory usage scan through input a minimal number of timesscan through input a minimal number of times like out-of-core clustering methodslike out-of-core clustering methods Produce high quality approximations even at low output resolutionseven at low output resolutions like iterative contraction algorithmslike iterative contraction algorithms

10 Multiphase Method: Do Both! Phase I: Uniform clustering perform out-of-core clustering (uniform grid)perform out-of-core clustering (uniform grid) produce intermediate vertices + facesproduce intermediate vertices + faces and 1 quadric per vertexand 1 quadric per vertex Phase II: Iterative edge contraction beginning with quadrics from Phase Ibeginning with quadrics from Phase I iteratively contract edge of least cost as beforeiteratively contract edge of least cost as before Phases are coupled together by quadrics Phase I: Uniform clustering perform out-of-core clustering (uniform grid)perform out-of-core clustering (uniform grid) produce intermediate vertices + facesproduce intermediate vertices + faces and 1 quadric per vertexand 1 quadric per vertex Phase II: Iterative edge contraction beginning with quadrics from Phase Ibeginning with quadrics from Phase I iteratively contract edge of least cost as beforeiteratively contract edge of least cost as before Phases are coupled together by quadrics

11 Multiphase Simplification Phase I Phase II 300 million triangles 10,000 triangles 1 million triangles

12 Multiphase vs. Uniform Grid Original 8 million faces Uniform grid (46 seconds) Multiphase (65 seconds)

13 Not Just 2 Separate Systems Original Multiphase Separate passes QSlim

14 Quality Similar to QSlim OriginalQSlimMultiphase

15 Choosing Grid Size Specify target memory consumption system builds grid to occupy allowable spacesystem builds grid to occupy allowable space only approximate due to sparse data structureonly approximate due to sparse data structure Specify voxel diameter system carves up bounding box appropriatelysystem carves up bounding box appropriately provides Hausdorff error bound on Phase Iprovides Hausdorff error bound on Phase I our currently preferred approachour currently preferred approach

16 The Effiect of Grid Resolution 200x115x344 (322,347 tri.) 100x57x172 (81,547 tri.) 50x29x86 (20,127 tri.) 25x14x43 (4511 tri.) Approximations with 5000 triangles (145–160 sec.) 28 million triangles

17 Examining Variants of Multiphase Simplification Decoupled multiphase variants decoupled phases (just eliminate quadric sharing)decoupled phases (just eliminate quadric sharing) decoupled phases with memoryless Phase IIdecoupled phases with memoryless Phase II Test consistently worse than main variant error rates are 20–50% higher in our testserror rates are 20–50% higher in our tests differences are minimal with very fine and very coarse voxel grids in Phase Idifferences are minimal with very fine and very coarse voxel grids in Phase I

18 Sample Results: Statue of St. Matthew 300 mil. triangles 1 million triangles 100,000 triangles 10,000 triangles 5000 triangles

19 Multiphase Simplification General Purpose Solution Multiphase system often superior to Qslim several times faster & much less memoryseveral times faster & much less memory asymptotically lower time complexityasymptotically lower time complexity can produce lower error (observed up to 40%)can produce lower error (observed up to 40%) One (potentially significant) drawback can not guarantee topology preservationcan not guarantee topology preservation this is a limitation of Phase 1 uniform clusteringthis is a limitation of Phase 1 uniform clustering Multiphase system often superior to Qslim several times faster & much less memoryseveral times faster & much less memory asymptotically lower time complexityasymptotically lower time complexity can produce lower error (observed up to 40%)can produce lower error (observed up to 40%) One (potentially significant) drawback can not guarantee topology preservationcan not guarantee topology preservation this is a limitation of Phase 1 uniform clusteringthis is a limitation of Phase 1 uniform clustering

20 What Are Allowable Phases? Must accept as input: vertices + faces + per vertex quadricsvertices + faces + per vertex quadrics Must produce as output: vertices + faces + per vertex quadricsvertices + faces + per vertex quadrics input vertices map to output verticesinput vertices map to output vertices –adjacent input vertices either map to the same output vertex or adjacent output vertices output quadrics are sum of input quadrics for input vertices that map to given output vertexoutput quadrics are sum of input quadrics for input vertices that map to given output vertex Must accept as input: vertices + faces + per vertex quadricsvertices + faces + per vertex quadrics Must produce as output: vertices + faces + per vertex quadricsvertices + faces + per vertex quadrics input vertices map to output verticesinput vertices map to output vertices –adjacent input vertices either map to the same output vertex or adjacent output vertices output quadrics are sum of input quadrics for input vertices that map to given output vertexoutput quadrics are sum of input quadrics for input vertices that map to given output vertex

21 Future Work Better choice of grid resolutions currently specified by usercurrently specified by user automatic selection would be preferrableautomatic selection would be preferrable Alternative and/or additional phases other spatial partitioning schemes are attractiveother spatial partitioning schemes are attractive BSP trees and octrees in particularBSP trees and octrees in particular Superior performance to QSlim is surprising indicates further need for analysisindicates further need for analysis

22 Conclusions Can process models of arbitrary size memory usage independent of input sizememory usage independent of input size requires single linear scan of input data filerequires single linear scan of input data file Truly general purpose simplification high quality output at low output levelshigh quality output at low output levels quality comparable to QSlim systemquality comparable to QSlim system can process polygon soupscan process polygon soups topological “noise” removaltopological “noise” removal

23 Acknowledgements This project funded in part by the National Science Foundation Surface datasets provided by Stanford Graphics LabStanford Graphics Lab Digital Michelangelo ProjectDigital Michelangelo Project Georgia Tech Large Models ArchiveGeorgia Tech Large Models Archive


Download ppt "A Multiphase Approach to Efficient Surface Simplification Michael Garland Eric Shaffer University of Illinois at Urbana–Champaign Michael Garland Eric."

Similar presentations


Ads by Google