Practical delaunay triangulation algorithms for surface reconstruction and related problems

The Delaunay triangulation is one of the fundamental problems in computational geometry, dual to the well-known Voronoi diagram. It has numerous applications in various disciplines such as computer graphics, computer vision, and robotics. This thesis deals with a number of interrelated questions arising in modeling shapes by computing Delaunay triangulations. We give algorithms for surface reconstruction, computing Delaunay triangulations given surfaces, and computing Delaunay triangulations in general. Given a set of samples from a surface, the surface reconstruction problem is to construct a piecewise linear approximation of the original surface. We give two surface reconstruction algorithms with guarantees of both geometric and topological correctness using the 3D Delaunay triangulation of the input samples. The first algorithm selects a set of Delaunay triangles using a simple geometric test and extracts a manifold from it. It is the first surface reconstruction algorithm with topological guarantee of correctness. The second algorithm improves the robustness using the weighted Voronoi diagrams called power diagram. When the surface on which the samples lie are known, we can use the connectivity of the surface to speed up the Delaunay triangulation. We give an O(n log* n) expected time algorithm to compute the 3D Delaunay triangulation given the surface on which the samples lie, under some realistic assumptions. It improves upon O( n log n) expected time usual randomized incremental algorithm in this case. The algorithm can be useful for mesh generation and medial axis construction. The randomized incremental algorithm for Delaunay triangulation is theoretically optimal in expected time but suffers from serious thrashing because of its random memory access pattern when the data structure gets too large to fit in memory. We propose a new insertion order called biased randomized insertion order (BRIO) which removes enough randomness to significantly improve performance, but leaves enough randomness so that the algorithm remains theoretically optimal. We show by experiments that the size of input data we can compute in a given machine increases dramatically using BRIO instead of the total random order.

[1]  Herbert Edelsbrunner,et al.  An O(n log² h) Time Algorithm for the Three-Dimensional Convex Hull Problem , 1991, SIAM J. Comput..

[2]  Guy E. Blelloch,et al.  Design and Implementation of a Practical Parallel Delaunay Algorithm , 1999, Algorithmica.

[3]  Tamal K. Dey,et al.  Reconstructing curves with sharp corners , 2001, Comput. Geom..

[4]  Sunghee Choi,et al.  The power crust, unions of balls, and the medial axis transform , 2001, Comput. Geom..

[5]  Raimund Seidel,et al.  Small-dimensional linear programming and convex hulls made easy , 1991, Discret. Comput. Geom..

[6]  Philip N. Klein,et al.  A randomized linear-time algorithm to find minimum spanning trees , 1995, JACM.

[7]  Anne Verroust-Blondet,et al.  Computing a canonical polygonal schema of an orientable triangulated surface , 2001, SCG '01.

[8]  Giri Narasimhan,et al.  Experiments with Computing Geometric Minimum Spanning Trees , 2000 .

[9]  Timothy M. Chan,et al.  Primal Dividing and Dual Pruning: Output-Sensitive Construction of Four-Dimensional Polytopes and Three-Dimensional Voronoi Diagrams , 1997, Discret. Comput. Geom..

[10]  Jyh-Jong Tsay,et al.  External-memory computational geometry , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

[11]  Stefan Funke,et al.  Smooth-surface reconstruction in near-linear time , 2002, SODA '02.

[12]  Rex A. Dwyer Higher-dimensional voronoi diagrams in linear expected time , 1989, SCG '89.

[13]  Ketan Mulmuley,et al.  On levels in arrangements and voronoi diagrams , 1991, Discret. Comput. Geom..

[14]  Kurt Mehlhorn,et al.  Four Results on Randomized Incremental Constructions , 1992, Comput. Geom..

[15]  Herbert Edelsbrunner,et al.  Three-dimensional alpha shapes , 1992, VVS.

[16]  Gert Vegter,et al.  In handbook of discrete and computational geometry , 1997 .

[17]  Carsten Thomassen Trees in Triangulations , 1994, J. Comb. Theory, Ser. B.

[18]  Jeffrey S. Salowe,et al.  On the maximum degree of minimum spanning trees , 1994, SCG '94.

[19]  Roberto Scopigno,et al.  Computer Graphics forum , 2003, Computer Graphics Forum.

[20]  Jeff Erickson,et al.  Nice Point Sets Can Have Nasty Delaunay Triangulations , 2001, SCG '01.

[21]  William E. Lorensen,et al.  Marching cubes: A high resolution 3D surface construction algorithm , 1987, SIGGRAPH.

[22]  Marc Levoy,et al.  The digital Michelangelo project: 3D scanning of large statues , 2000, SIGGRAPH.

[23]  David Eppstein,et al.  The Crust and the beta-Skeleton: Combinatorial Curve Reconstruction , 1998, Graph. Model. Image Process..

[24]  Otfried Cheong,et al.  Euclidean minimum spanning trees and bichromatic closest pairs , 1990, SCG '90.

[25]  William S. Massey,et al.  Algebraic Topology: An Introduction , 1977 .

[26]  Marshall W. Bern,et al.  Surface Reconstruction by Voronoi Filtering , 1998, SCG '98.

[27]  S. Osher,et al.  Fast surface reconstruction using the level set method , 2001, Proceedings IEEE Workshop on Variational and Level Set Methods in Computer Vision.

[28]  R. Seidel Backwards Analysis of Randomized Geometric Algorithms , 1993 .

[29]  Sunghee Choi,et al.  A simple algorithm for homeomorphic surface reconstruction , 2000, SCG '00.

[30]  Jeff Erickson,et al.  Dense point sets have sparse Delaunay triangulations , 2001, ArXiv.

[31]  Ketan Mulmuley,et al.  A fast planar partition algorithm, II , 1989, JACM.

[32]  Kenneth L. Clarkson,et al.  Applications of random sampling in computational geometry, II , 1988, SCG '88.

[33]  Hyeon-Suk Na,et al.  On the average complexity of 3D-Voronoi diagrams of random points on convex polytopes , 2003, Comput. Geom..

[34]  Ketan Mulmuley,et al.  Randomized algorithms , 1997 .

[35]  Sunghee Choi,et al.  A Simple Algorithm for Homeomorphic Surface Reconstruction , 2002, Int. J. Comput. Geom. Appl..

[36]  Marshall W. Bern,et al.  A new Voronoi-based surface reconstruction algorithm , 1998, SIGGRAPH.

[37]  Marc Levoy,et al.  A volumetric method for building complex models from range images , 1996, SIGGRAPH.

[38]  Sunghee Choi,et al.  The power crust , 2001, SMA '01.

[39]  Jacques-Olivier Lachaud,et al.  Constructing iso-surfaces satisfying the Delaunay constraint. Application to the skeleton computation , 1999, Proceedings 10th International Conference on Image Analysis and Processing.

[40]  Ho-Lun Cheng,et al.  Dynamic Skin Triangulation , 2001, SODA '01.

[41]  Mark de Berg,et al.  Computational geometry: algorithms and applications , 1997 .

[42]  Olivier Devillers,et al.  The Shuffling Buffer , 2001, Int. J. Comput. Geom. Appl..

[43]  Sunghee Choi,et al.  Delaunay triangulation programs on surface data , 2002, SODA '02.

[44]  Binhai Zhu,et al.  Further Computational Geometry in Secondary Memory , 1994, ISAAC.

[45]  L. Chew Building Voronoi Diagrams for Convex Polygons in Linear Expected Time , 1990 .

[46]  Ketan Mulmuley,et al.  Computational geometry - an introduction through randomized algorithms , 1993 .

[47]  Lars Arge,et al.  External Memory Data Structures , 2001, ESA.

[48]  Olivier Devillers Randomization yields simple O(n log* n) algorithms for difficult Omega(n) problems , 1992, Int. J. Comput. Geom. Appl..

[49]  Olivier Devillers,et al.  The Delaunay Hierarchy , 2002, Int. J. Found. Comput. Sci..

[50]  Ernst P. Mücke,et al.  Fast randomized point location without preprocessing in two- and three-dimensional Delaunay triangulations , 1996, SCG '96.

[51]  Herbert Edelsbrunner,et al.  Triangulating topological spaces , 1994, SCG '94.

[52]  Gabriel Taubin,et al.  The ball-pivoting algorithm for surface reconstruction , 1999, IEEE Transactions on Visualization and Computer Graphics.

[53]  Steven Fortune,et al.  Voronoi Diagrams and Delaunay Triangulations , 2004, Handbook of Discrete and Computational Geometry, 2nd Ed..

[54]  Greg Turk,et al.  Reconstructing Surfaces by Volumetric Regularization Using Radial Basis Functions , 2002, IEEE Trans. Pattern Anal. Mach. Intell..

[55]  Tamal K. Dey,et al.  Detecting undersampling in surface reconstruction , 2001, SCG '01.

[56]  Tony DeRose,et al.  Surface reconstruction from unorganized points , 1992, SIGGRAPH.

[57]  Ketan Mulmuley A Fast Planar Partition Algorithm, I , 1990, J. Symb. Comput..

[58]  J. Shewchuk,et al.  Delaunay refinement mesh generation , 1997 .

[59]  Jean-Daniel Boissonnat,et al.  A linear bound on the complexity of the delaunay triangulation of points on polyhedral surfaces , 2002, SMA '02.

[60]  Jean-Daniel Boissonnat,et al.  Geometric structures for three-dimensional shape representation , 1984, TOGS.

[61]  Kenneth L. Clarkson,et al.  New applications of random sampling in computational geometry , 1987, Discret. Comput. Geom..

[62]  Rex A. Dwyer,et al.  Average-case analysis of algorithms for convex hulls and Voronoi diagrams , 1988 .

[63]  R. Scopigno,et al.  Parallel 3D Delaunay Triangulation , 1993, Comput. Graph. Forum.

[64]  Nikos Chrisochoides,et al.  Guaranteed: quality parallel delaunay refinement for restricted polyhedral domains , 2002, SCG '02.

[65]  Raimund Seidel,et al.  A Simple and Fast Incremental Randomized Algorithm for Computing Trapezoidal Decompositions and for Triangulating Polygons , 1991, Comput. Geom..

[66]  Tamal K. Dey,et al.  Delaunay based shape reconstruction from large data , 2001, Proceedings IEEE 2001 Symposium on Parallel and Large-Data Visualization and Graphics (Cat. No.01EX520).