Surface Simplification

1 / 32

# Surface Simplification - PowerPoint PPT Presentation

Surface Simplification. Dr. Scott Schaefer. Surface Simplification. Given a closed polygon model, reduce the number of polygons and maintain appearance of the shape. 5804 tris. 2500 tris. 1000 tris. 500 tris. Reducing Polygons.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about ' Surface Simplification' - jenski

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Surface Simplification

Dr. Scott Schaefer

Surface Simplification
• Given a closed polygon model, reduce the number of polygons and maintain appearance of the shape

5804 tris

2500 tris

1000 tris

500 tris

Reducing Polygons
• Perform local, topological operations to reduce number of polygons
• Vertex removal
Reducing Polygons
• Perform local, topological operations to reduce number of polygons
• Vertex removal
• Edge Collapse
Reducing Polygons
• Perform local, topological operations to reduce number of polygons
• Vertex removal
• Edge Collapse
• Face Collapse, …
Reducing Polygons
• Perform local, topological operations to reduce number of polygons
• Vertex removal
• Edge Collapse
• Face Collapse, …
Surface Simplification
• How do we determine the order of edge collapse operations?
• Where do we place new vertex after collapse?
Error Metrics For Simplification
• Measures distance to infinite planes
Error Metrics For Simplification
• Measures distance to infinite planes
Error Metrics For Simplification
• Measures distance to infinite planes

symmetric 3x3

3x1

1x1

Error Metrics For Simplification
• Measures distance to infinite planes

symmetric 3x3

3x1

1x1

Requires 10 floats independent of number of polygons!!!

Combining QEFS

Add 10 numbers to combine QEFs!!!

Placement of Vertices Using QEFs
• Place new vertex at minimum of error function
Placement of Vertices Using QEFs
• Place new vertex at minimum of error function
Placement of Vertices Using QEFs
• Place new vertex at minimum of error function
Placement of Vertices Using QEFs
• Place new vertex at minimum of error function

Not invertible in flat areas or straight edges!!!

Placement of Vertices Using QEFs
• Place new vertex at minimum of error function

Pseudoinverse minimizes |v|

Placement of Vertices Using QEFs
• Let where c is a point we want to minimize the distance to
Placement of Vertices Using QEFs
• Let where c is a point we want to minimize the distance to
Placement of Vertices Using QEFs
• Let where c is a point we want to minimize the distance to
Placement of Vertices Using QEFs
• Let where c is a point we want to minimize the distance to
• Compact representation (10 numbers)
• Fast to combine multiple functions (addition)
• Relatively easy to minimize (pseudoinverse)
• Suffers from numerical instabilities
Surface Simplification Algorithm
• Build QEFs for each vertex
• For each edge
• Compute combined QEF and error
• Insert edge into priority queue sorted by error
• While poly # > target #
• Collapse edge
Surface Simplification: Edge Collapse
• Place new vertex at minimizer of QEF
Surface Simplification: Edge Collapse
• Place new vertex at minimizer of QEF
• QEF of new vertex is combined QEF
Surface Simplification: Edge Collapse
• Place new vertex at minimizer of QEF
• QEF of new vertex is combined QEF
• Remove all edges touching collapsed edge from priority queue
Surface Simplification: Edge Collapse
• Place new vertex at minimizer of QEF
• QEF of new vertex is combined QEF
• Remove all edges touching collapsed edge from priority queue
• Recompute QEF/error for all edges touching new vertex and insert into priority queue
Surface Simplification: Edge Collapse
• Edge collapse may alter topology of surface
• Test for topology change and exclude unsafe edge collapses
• Unsafe edge may become safe after another collapse
• Alternatively, perform two edge collapses
Surface Simplification: Edge Collapse
• Edge collapse may alter topology of surface
• Test for topology change and exclude unsafe edge collapses
• Unsafe edge may become safe after another collapse
• Alternatively, perform two edge collapses

unsafe edge collapses

Surface Simplification: Edge Collapse
• Edge collapse may alter topology of surface
• Test for topology change and exclude unsafe edge collapses
• Unsafe edge may become safe after another collapse
• Alternatively, perform two edge collapses
Surface Simplification
• Extremely fast
• Somewhat memory intensive
• Limits maximum surface size
• Greedy algorithm
• Does not guarantee optimal sequence of edge collapses!!!