Top Banner
Simplification and Improvement of Tetrahedral Models for Simulation Barbara Cutler, MIT Julie Dorsey, Yale Leonard McMillan, UNC - Chapel Hill
40

Simplification and Improvement of Tetrahedral Models for Simulation

Jan 17, 2016

Download

Documents

ulani

Simplification and Improvement of Tetrahedral Models for Simulation. Barbara Cutler, MIT Julie Dorsey, Yale Leonard McMillan, UNC - Chapel Hill. Motivation. Physical simulations are now in widespread use in computer graphics Interactive deformation & fracture simulations - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Simplification and Improvement of Tetrahedral Models for Simulation

Simplification and Improvement of Tetrahedral Models for Simulation

Barbara Cutler, MITJulie Dorsey, Yale

Leonard McMillan, UNC - Chapel Hill

Page 2: Simplification and Improvement of Tetrahedral Models for Simulation

Motivation

• Physical simulations are now in widespread use in computer graphics

• Interactive deformation & fracture simulations

• However, preparing appropriate models is challenging

Page 3: Simplification and Improvement of Tetrahedral Models for Simulation

Motivation

300 bone tetras

850 skin tetras

(head only)

1,200 bone tetras

800 skin tetras

[Cutler et al. 02] & [Müller et al. 02]

Page 4: Simplification and Improvement of Tetrahedral Models for Simulation

Contributions

• Simplification and shape improvement to meet interactive simulation requirements

• Element quality metric• Models from high-resolution scanned

meshes with interior boundaries • Robust & efficient implementation

Page 5: Simplification and Improvement of Tetrahedral Models for Simulation

Overview

• Previous Meshing Research– Mesh Generation– Mesh Simplification– Mesh Improvement– Mesh Refinement

• Goals and Requirements• Algorithm• Results• Conclusions & Future Work

Page 6: Simplification and Improvement of Tetrahedral Models for Simulation

Mesh Generation

Given some boundary, fill the interior with elements

• Advancing Front / Advancing Layers [Lohner 88, Pirzadeh 96]

• Delaunay Triangulation [Baker 89, Shewchuk 97, Cavalcanti & Mello 99, Persson & Strang 04]

• Structured/Octree Tetrahedralization [Yerry & Shepard 84, Nielson & Sung 97]

Page 7: Simplification and Improvement of Tetrahedral Models for Simulation

Mesh Simplification

Reduce the overall number of elements

• Progressive Mesh - edge collapses only– 2D [Hoppe 96]– 3D [Staadt 98, Cignoni et al. 00, Chiang & Lu

03, Natarajan & Edelsbrunner 04] • Complex transformations – more difficult to

implement, allows topology change– 2D [Shroeder et al. 92, Turk 92]– 3D [Trotts et al. 98, Chopra & Meyer 02]

Page 8: Simplification and Improvement of Tetrahedral Models for Simulation

Mesh Improvement

Improve the quality/shape of elements in the mesh

• Local transformations to improve shape[Frey & Field 91, Hoppe et al. 93, Joe 95]

• Sliver removal from Delaunay Triangulations[Cheng et al. 99, Edelsbrunner & Guoy 02]

• Combination of transformations more effective than a single type[Freitag & Ollivier-Gooch 97]

Page 9: Simplification and Improvement of Tetrahedral Models for Simulation

Mesh Refinement

Increase the local resolution of the mesh

(while maintaining element quality)

• Regular Subdivision [Bank et al. 83, Bey 95, Edelsbrunner & Grayson 00]

• Edge Bisection [Alder 83, Rivara & Levin 92, Liu & Joe 95, Maubach 95, Arnold et al. 00]

Page 10: Simplification and Improvement of Tetrahedral Models for Simulation

Overview

• Previous Meshing Research• Goals and Requirements

– Element Quality Metric

• Algorithm• Results• Conclusions & Future Work

Page 11: Simplification and Improvement of Tetrahedral Models for Simulation

Goals and Requirements

• Reduce the overall number of elements

• Maintain the material boundaries• Improve the shape of each element• Reasonable distribution of elements• Robustness• Scalability

Page 12: Simplification and Improvement of Tetrahedral Models for Simulation

Why is Element Shape Important?• Very small dihedral angles →

the stiffness matrix is constrained [Babuska & Aziz 76]

• Very large dihedral angles → errors in FEM increase [Krizek 92]

• All elements must meet minimum shape requirements

Page 13: Simplification and Improvement of Tetrahedral Models for Simulation

Element Quality Metric

Geometric mean of 3 components:• Shape

– minimum solid angle (equilateral ≈ 0.55 steradians)

• Volume– ideal volume =

• Edge Length – ideal edge length = 3√ ideal volume

total volumetarget tetra

count

Page 14: Simplification and Improvement of Tetrahedral Models for Simulation

Overview

• Previous Meshing Research• Goals and Requirements• Algorithm

– Local mesh transformations– Block iteration

• Results• Conclusions & Future Work

Page 15: Simplification and Improvement of Tetrahedral Models for Simulation

Local Mesh Transformations

• Tetrahedral Swaps• Edge Collapse• Vertex Smoothing• Vertex Addition

Page 16: Simplification and Improvement of Tetrahedral Models for Simulation

Local Mesh Transformations

• Tetrahedral Swaps– Choose the

configuration with the best local element shape

• Edge Collapse• Vertex Smoothing• Vertex Addition

Page 17: Simplification and Improvement of Tetrahedral Models for Simulation

Local Mesh Transformations

• Tetrahedral Swaps• Edge Collapse

– Delete a vertex & the elements around the edge

• Vertex Smoothing• Vertex Addition

Before

After

Page 18: Simplification and Improvement of Tetrahedral Models for Simulation

Prioritizing Edge Collapses

• Preserve topology– Thin layers should not

pinch together

• Collapse weight– Edge length +

boundary error

• No negative volumes• Local element quality

does not significantly worsen

Interior: ok to collapse

Boundary:

check error

Spanning: never collapse

Boundary-Touching:one-way collapse

Page 19: Simplification and Improvement of Tetrahedral Models for Simulation

Local Mesh Transformations

• Tetrahedral Swaps• Edge Collapse• Vertex Smoothing

– Move a vertex to the centroid of its neighbors

– Convex or concave, but avoid negative-volume elements

• Vertex Addition

Before After

Page 20: Simplification and Improvement of Tetrahedral Models for Simulation

Local Mesh Transformations

• Tetrahedral Swaps• Edge Collapse• Vertex Smoothing• Vertex Addition

– At the center of a tetra, face, or edge– Useful when mesh is simplified, but needs

further element shape improvement

Page 21: Simplification and Improvement of Tetrahedral Models for Simulation

Ensuring Consistency

• Prevent mesh degeneracies– Examine the neighbors sharing each face,

edge and vertex– (see paper for list)

• Implementation must be tolerant of negative- and zero-volume elements– May be present in input models or at

intermediate stages of deformation

Page 22: Simplification and Improvement of Tetrahedral Models for Simulation

Block Iteration Algorithm

while (tetra count > target tetra count)

T = a subset of all elementsrandomly reorder Tforeach t T, try:

• tetrahedral swaps• edge collapse• move vertex• add vertex

Look for an action that improves or removes this element

Page 23: Simplification and Improvement of Tetrahedral Models for Simulation

Block Iteration Algorithm

E = ideal edge length while (tetra count > target tetra count)

T = a subset of all elementsrandomly reorder Tforeach t T, try:

• tetrahedral swaps• edge collapse• move vertex• add vertex

E *=

tetra count

target tetra count√3

As ∆E → 0, the Block Iteration Algorithm is equivalent to a Progressive Mesh

E is the allowable boundary error

Page 24: Simplification and Improvement of Tetrahedral Models for Simulation

Block Iteration Algorithm

E = ideal edge lengthpercent = 10%while (tetra count > target tetra count)

T = the poorest percent of all elementsrandomly reorder Tforeach t T, try:

• tetrahedral swaps• edge collapse• move vertex• add vertex

E *=

percent += 10%

tetra count

target tetra count√3

The Block Iteration Algorithm is a partial order

Not all of the edge weights must be recomputed before the next transformation

Page 25: Simplification and Improvement of Tetrahedral Models for Simulation

Computing Edge Collapse Weight• Expensive to determine

legality of collapse, especially in 3D

• On average 100 edge weights are invalidated when an edge is collapsed

• Progressive Mesh maintains a priority queue of all collapse weights (total order)

Before

After

Page 26: Simplification and Improvement of Tetrahedral Models for Simulation

Edge Collapse Weight Recomputation

Average number of edge weight re-computations before an edge is collapsed

Block Iteration

Progressive Mesh ratio

461K → 2K 28.2 240.5 8.5

461K → 10K 40.3 240.2 6.0

461K → 50K 67.7 238.9 3.5Edge collapse weight re-

computation dominates the running time (~80%)

Page 27: Simplification and Improvement of Tetrahedral Models for Simulation
Page 28: Simplification and Improvement of Tetrahedral Models for Simulation

Overview

• Previous Meshing Research• Goals and Requirements• Algorithm• Results

– Meshes, Performance, Quality– Comparison to Previous Work

• Conclusions & Future Work

Page 29: Simplification and Improvement of Tetrahedral Models for Simulation

Results: Handoriginal

(100K faces)

100K tetras(57K faces) 30K tetras

(19K faces)

10K tetras(7K faces)

Page 30: Simplification and Improvement of Tetrahedral Models for Simulation

Results: Dragonoriginal

(100K faces)

5K tetras(3K faces)

100K tetras(48K faces)

Page 31: Simplification and Improvement of Tetrahedral Models for Simulation

Performance

Block Iteration(all

transformations)

mm:ss

461K → 2K 9:20

461K → 10K 12:12

461K → 50K 27:45

Extreme simplification is faster because E, the allowable error, is larger

(optimizing over fewer elements)

Page 32: Simplification and Improvement of Tetrahedral Models for Simulation

Performance

Block Iteration(all

transformations)

mm:ss

Block Iteration(edge collapse

only)

mm:ss

Progressive Mesh

(edge collapse only)

mm:ss ratio

461K → 2K 9:20 6:38 1:02:08 9.4

461K → 10K 12:12 7:25 1:01:35 8.3

461K → 50K 27:45 13:24 57:15 4.3

Edge collapse weight re-computation dominates the

running time (~80%)

Page 33: Simplification and Improvement of Tetrahedral Models for Simulation

Visualization of Element Quality

1,050K tetras(133K faces)

zero-angle &

zero-volume

good angle, but small-

volume

near-equilateral

& ideal-volume

Page 34: Simplification and Improvement of Tetrahedral Models for Simulation

Visualization of Element Quality

Octree or Adaptive Distance Field (ADF)

461K tetras(108K faces)

Page 35: Simplification and Improvement of Tetrahedral Models for Simulation

Visualization of Element Quality

After Simplification& Mesh

Improvement10K tetras(3K faces)

Page 36: Simplification and Improvement of Tetrahedral Models for Simulation

Variety of Transformations

More likely to contain poor quality elements or require

large boundary error, E

All Transformations Edge Collapse Only

Page 37: Simplification and Improvement of Tetrahedral Models for Simulation

Overview

• Previous Meshing Research• Goals and Requirements• Algorithm• Results• Conclusions & Future Work

Page 38: Simplification and Improvement of Tetrahedral Models for Simulation

Conclusions

• Element quality metric• Robust & efficient implementation• Ensures removal of poorest quality

elements to meet FEM requirements• Encourages iterative modeling

Page 39: Simplification and Improvement of Tetrahedral Models for Simulation

Future Work

• Switch to a total-order mesh optimization (e.g. Progressive Mesh) at end to improve performance

• Order of transformations attempted• Multiple transformation look-ahead• Topological simplification• Online local re-meshing & refinement

Page 40: Simplification and Improvement of Tetrahedral Models for Simulation

Thank You

• Matthias Müller, Rob Jagnow, Justin Legakis, Derek Bruening, Frédo Durand

• MIT Computer Graphics Group