Harmonic Triangulationscybertron.cg.tu-berlin.de/~alexa/ht_sig.pdf · HARMONIC FLIPPING FROM...

60
HARMONIC TRIANGULATIONS Marc Alexa

Transcript of Harmonic Triangulationscybertron.cg.tu-berlin.de/~alexa/ht_sig.pdf · HARMONIC FLIPPING FROM...

  • HARMONIC TRIANGULATIONS

    Marc Alexa

  • PHOTOGRAPHY &RECORDING ENCOURAGED

  • TRIANGULATIONS

    Input: Points {xi} ∈ RdOutput: Nice triangulation• Good element shape• As few elements as possible,but not fewer

    • Efficient computation

  • DELAUNAY TRIANGULATIONS

    Delaunay triangulation• Dual of Voronoi diagram• A simplex is part of the Delaunaytriangulation if its circumspherecontains no points

  • DELAUNAY TRIANGULATIONS

    Delaunay triangulation• Dual of Voronoi diagram• A simplex is part of the Delaunaytriangulation if its circumspherecontains no points

  • DELAUNAY TRIANGULATIONS

    Delaunay triangulation• Dual of Voronoi diagram• A simplex is part of the Delaunaytriangulation if its circumspherecontains no points

  • DELAUNAY TRIANGULATIONS

    Delaunay triangulation• Dual of Voronoi diagram• A simplex is part of the Delaunaytriangulation if its circumspherecontains no points

  • DELAUNAY TRIANGULATIONS

    Delaunay triangulation• Dual of Voronoi diagram• A simplex is part of the Delaunaytriangulation if its circumspherecontains no points

  • DELAUNAY TRIANGULATIONS

    Delaunay triangulation• Dual of Voronoi diagram• A simplex is part of the Delaunaytriangulation if its circumspherecontains no points

  • DELAUNAY TRIANGULATIONS

    Delaunay triangulation• Dual of Voronoi diagram• Empty ball• Lifting construction:

    1. Lift point xi to ‖xi‖22. Take lower convex hull

  • PL FUNCTIONS AND TRIANGULATIONS

  • SMOOTHNESS OF PL FUNCTION AND DIRICHLET ENERGY

    Dirichlet energy of a function g : Ω 7→ R:E(g) = 12

    ∫Ω

    ‖∇g(x)‖2dx

    Gradient of PL function induced by f:E(f) = 12

    ∑t∈T

    fTt Ltft = 12 fTLT f.

  • SMOOTHNESS OF PL FUNCTION AND DIRICHLET ENERGY

    Dirichlet energy of a function g : Ω 7→ R:E(g) = 12

    ∫Ω

    ‖∇g(x)‖2dx

    Gradient of PL function induced by f:E(f) = 12

    ∑t∈T

    fTt Ltft = 12 fTLT f.

  • RIPPA’S MOTIVATING RESULT

    Given:• A set of n points in the plane• Any function values f associated with the points

    Rippa’s theoremDelaunay triangulation minimizes fTLT f among all triangulationsRemarkable: Result is independent of the function values.

  • HARMONIC TRIANGULATION

    DefinitionA triangulation T is harmonic if it satisfies fTLT f ≤ fTLT ′f for• any triangulation T ′ of the points and• any vector of function values f ∈ Rn.

    Existence

    d = 2: Harmonic triangulation exists. It is the Delaunay triangulation.d ≥ 3: Existence of harmonic triangulations is open.

  • HARMONIC TRIANGULATION

    DefinitionA triangulation T is harmonic if it satisfies fTLT f ≤ fTLT ′f for• any triangulation T ′ of the points and• any vector of function values f ∈ Rn.

    Existence

    d = 2: Harmonic triangulation exists. It is the Delaunay triangulation.d ≥ 3: Existence of harmonic triangulations is open.

  • MAIN RESULTS

    Negative result for d = 3Harmonic triangulations generally don’t exist in three dimensions(proof by explicit counterexample).The same is true in higher dimensions (conjectured).

  • THANK YOU!

    Questions / Remarks?

  • ELEMENTARY MOVES: BISTELLAR FLIPS

    Bistellar flips• d + 1 points in Rd form a simplex• d + 2 points in Rd have at most 2triangulations

    • lower and upper side of convex hull

  • ELEMENTARY MOVES: BISTELLAR FLIPS

    Bistellar flips• d + 1 points in Rd form a simplex• d + 2 points in Rd have at most 2triangulations

    • lower and upper side of convex hull

  • ELEMENTARY MOVES: BISTELLAR FLIPS

    Bistellar flips• d + 1 points in Rd form a simplex• d + 2 points in Rd have at most 2triangulations

    • lower and upper side of convex hull

    3/2 flip

    2/3 flip

  • FLIPPING AND DIRICHLET ENERGY

    • Given a triangulation T .• Pick d + 2 points in convex position• Consider the ’other’ triangulation T ′• Flip if

    fTLT ′f < fTLT f⇐⇒ 0 < fT (LT − LT ′) f

    Key observationT , T ′ arerelated by a flip =⇒LT − LT ′ semi-definite.Harmonic flipA flip that decreases Dirichlet energy forsome f.

  • FLIPPING AND DIRICHLET ENERGY

    • Given a triangulation T .• Pick d + 2 points in convex position• Consider the ’other’ triangulation T ′• Flip if

    fTLT ′f < fTLT f⇐⇒ 0 < fT (LT − LT ′) f

    Key observationT , T ′ arerelated by a flip =⇒LT − LT ′ semi-definite.

    Harmonic flipA flip that decreases Dirichlet energy forsome f.

  • FLIPPING AND DIRICHLET ENERGY

    • Given a triangulation T .• Pick d + 2 points in convex position• Consider the ’other’ triangulation T ′• Flip if

    fTLT ′f < fTLT f⇐⇒ 0 < fT (LT − LT ′) f

    Key observationT , T ′ arerelated by a flip =⇒LT − LT ′ semi-definite.Harmonic flipA flip that decreases Dirichlet energy forsome f.Harmonic flips only depend on geometry.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.

    Consider additional point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.3. Triangle is bad if orientation of pedal

    triangle is positive.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider additional point y

    1. Project y onto edge lines(x0x1, x1x2, x2x0).

    2. Projections form pedal triangle.3. Triangle is bad if orientation of pedal

    triangle is positive.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider additional point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).

    2. Projections form pedal triangle.3. Triangle is bad if orientation of pedal

    triangle is positive.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider additional point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.

    3. Triangle is bad if orientation of pedaltriangle is positive.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider additional point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.3. Triangle is bad if orientation of pedal

    triangle is positive.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider additional point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.3. Triangle is bad if orientation of pedal

    triangle is positive.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.

    Consider different point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.3. Triangle is good if orientation of pedal

    triangle is negative.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider different point y

    1. Project y onto edge lines(x0x1, x1x2, x2x0).

    2. Projections form pedal triangle.3. Triangle is good if orientation of pedal

    triangle is negative.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider different point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).

    2. Projections form pedal triangle.3. Triangle is good if orientation of pedal

    triangle is negative.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider different point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.

    3. Triangle is good if orientation of pedaltriangle is negative.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider different point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.3. Triangle is good if orientation of pedal

    triangle is negative.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2.Consider different point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.3. Triangle is good if orientation of pedal

    triangle is negative.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2. Consideradditional point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.3. Both triangulations are good if pedal

    triangle degenerates.

    Well knownLocations y with degenerated pedaltriangles form circumcircle.

  • GEOMETRY OF FLIPPING - 2D

    Given a simplex x0, x1, x2. Consideradditional point y1. Project y onto edge lines

    (x0x1, x1x2, x2x0).2. Projections form pedal triangle.3. Both triangulations are good if pedal

    triangle degenerates.Well knownLocations y with degenerated pedaltriangles form circumcircle.

  • GEOMETRY OF FLIPPING - 3D

    Given a tetrahedron x0, x1, x2, x3.Consider additional point y1. Project y onto face planes.2. Projections form pedal tetrahedron.3. Both triangulations are good if pedal

    tetrahedron degenerates.

    Much lesser knownLocations y with degenerated pedaltetrahedra form Cayley’s nodal cubic.

  • GEOMETRY OF FLIPPING - 3D

    Given a tetrahedron x0, x1, x2, x3.Consider additional point y1. Project y onto face planes.2. Projections form pedal tetrahedron.3. Both triangulations are good if pedal

    tetrahedron degenerates.Much lesser knownLocations y with degenerated pedaltetrahedra form Cayley’s nodal cubic.

  • GEOMETRY OF FLIPPING - 3D

  • AN IMPORTANT EXAMPLE

    3/2 �

    ip 3/2 �ip

    ObservationsCompared to Delaunay: fewer tetrahedra, better shape quality

  • AN IMPORTANT EXAMPLE

    3/2 �

    ip 3/2 �ip

    ObservationsCompared to Delaunay: fewer tetrahedra, better shape quality

  • HARMONIC FLIPPING FROM DELAUNAY

    Algorithm1. Compute Delaunay triangulation2. Put harmonic flips into queue3. While queue not empty

    3.1 Take element from queue3.2 Flip if still valid3.3 Check elements resulting from flip

    and put into queue if harmonic

    3/2 �

    ip 3/2 �ip

  • HARMONIC FLIPPING FROM DELAUNAY IN 3D – TIME

    104 105 106 107

    10−1

    100

    101

    102

    n

    Time [sec]

  • IMPROVEMENT

    2.4 2.5 2.6 2.7 2.8 2.9 3 3.1 3.2 3.3 3.4ηt

    1,090 1,100 1,110 1,120 1,130 1,140 1,150 1,160 |T |

    7 7.5 8 8.5 9 9.5ηt

    5,700 5,800 5,900 6,000 6,100 6,200 6,300 6,400 6,500 |T |

    21 22 23 24 25 26 27 28 29ηt

    3,700 3,800 3,900 4,000 4,100 4,200 4,300 4,400 |T |

  • IMPROVEMENT AND ORDER OF FLIPS

    2.4 2.5 2.6 2.7 2.8 2.9 3 3.1 3.2 3.3 3.4ηt

    1,090 1,100 1,110 1,120 1,130 1,140 1,150 1,160 |T |

    7 7.5 8 8.5 9 9.5ηt

    5,700 5,800 5,900 6,000 6,100 6,200 6,300 6,400 6,500 |T |

    21 22 23 24 25 26 27 28 29ηt

    3,700 3,800 3,900 4,000 4,100 4,200 4,300 4,400 |T |

  • SLIVER EXUDATION

    3/2 �

    ip 3/2 �ip

  • SLIVER EXUDATION VS HARMONIC FLIPPING – SMALL ANGLES

    Dihedral angles smaller 10◦

  • SLIVER EXUDATION VS. HARMONIC FLIPPING – ANGLE DISTRIBUTION

    0 20 40 60 80 100 120 140 160 180 φ

  • HARMONIC FLIPPING COMPARED TO SLIVER EXUDATION – TIME

    103 104 105 106 10710−3

    10−1

    101

    103

    |T |

    Time [sec]

  • VERTEX POSITION OPTIMIZATION

    Optimal Delaunay Triangulation• Delaunay triangulation minimizesvolume under parabolic lift

    • Move vertices to further minimizevolume

  • VERTEX POSITION OPTIMIZATION

    Harmomizing• Harmonic triangulation minimizesDirichlet energy

    • Move vertices to further minimizesDirichlet energy

    • Potential problem: unclear whatfunction values to use

    • Use expected Dirichlet energy: tr(L)

    0 20 40 60 80 1001

    1.5

    2

    2.5 ·104tr(LT )

    10

    20

    30φ

  • VERTEX POSITION OPTIMIZATION

    Harmomizing• Harmonic triangulation minimizesDirichlet energy

    • Move vertices to further minimizesDirichlet energy

    • Potential problem: unclear whatfunction values to use

    • Use expected Dirichlet energy: tr(L) 0 20 40 60 80 10011.5

    2

    2.5 ·104tr(LT )

    10

    20

    30φ

  • ODT VS. HARMONIZING

    140

    160

    180φ

    0 0.5 1 1.5 2 2.50

    20

    Time [sec]

    140

    160

    180φ

    0 5 10 15 20 250

    20

    Time [sec]

  • CGAL OPTIMIZATION PIPELINE VS. HARMONIZING

    Dihedral angle < 25◦

  • CGAL OPTIMIZATION PIPELINE VS. HARMONIZING

    Dihedral angle < 25◦

  • CGAL OPTIMIZATION PIPELINE VS. HARMONIZING

    0 20 40 60 80 100 120 140 160 180φ

  • WRAP UP

    • Minimizing Dirichlet energy is natural• Reduces to Delaunay in 2D, which is known to be good• Flipping is independent of function values in any dimension

    • Immediate practical benefits• Flipping improves Delaunay more than exudation• Harmonizing better than elaborate combination of heuristics

    • Many natural theory questions are open• Existence of harmonic triangulations under conditions• Connection to "good"/"perfect" Laplace operators• Connection to regular triangulations (exploration of "secondary quadratic fan")• Behavior in higher dimension

  • THANK YOU!

    • Boris Springborn for discussions• Philipp Herholz for help with figures• CGAL team (basic implementationavailable)

    mbtn@13: mbtn@12: mbtn@11: fd@p20do: mbtn@10: mbtn@9: fd@p20rd: mbtn@8: mbtn@7: fd@p20rd: mbtn@6: mbtn@5: fd@p20rx: mbtn@4: mbtn@3: fd@p20ry: mbtn@2: mbtn@1: mbtn@0: fd@p20d: fd@rm@0: