Proximity graphs: reconstruction of curves and surfaces Framework Duality between the Voronoi diagram and the Delaunay triangulation. Power diagram. Alpha shape and weighted alpha shape. The Gabriel Graph. The beta-skeleton Graph. A-shape and Crust. Local Crust and Voronoi Gabriel Graph. NN-crust. M. Melkemi
Duality: Voronoi diagram and Delaunay triangulation (1) A Voronoi region of a point is defined by: The Voronoi diagram of the set S, DV(S), is the set of the regions A 3-cell is a Voronoi polyhedron, a 2-cell is a face,a 1-cell is an edge of DV(S).
Duality: Voronoi diagram and Delaunay triangulation (2) is a k-simplex of the Delaunay triangulation D(S) iff there exists an open ball b such that:
Duality: Voronoi diagram and Delaunay triangulation (3) Examples A Delaunay triangle corresponds to a Voronoi vertex. An edge of D(S) corresponds to a Voronoi edge. A Delaunay vertex corresponds to a Voronoi region.
Duality: Voronoi diagram and Delaunay triangulation (4)
Duality: Voronoi diagram and Delaunay triangulation (5)
Power diagram and regular triangulation (1) A weighted point is denoted as p=(p’,p’’), with its location and its weight. For a weighted points, p=(p’,p’’), the power distance of a point x to p is defined as follows: p(p,x) x p’
regular triangulation (2) Power diagram and regular triangulation (2) The locus of the points equidistant from two weighted points is a straight line.
Power diagram and regular triangulation (3) 1 2 1 2 R1 R2 R1 R2 1 2 1 2 R1 R2 R1 R2
regular triangulation (4) Power diagram and regular triangulation (4) A power region of a point is defined by: The power diagram of the set S, P(S), is the set of the regions
Power diagram and regular triangulation (5)
Power diagram and regular triangulation (6) A power region may be empty. A power region of p may be does not contain the point p. A point on the convex hull of S has an unbounded or an empty region.
Power diagram and regular triangulation (7) is a k- simplex of the regular triangulation of S iff
Alpha-shape of a set of points (1)
Alpha-shape of a set of points: example (2)
Alpha-shape of a set of points: example(3)
Alpha-shape of a set of points: example(4)
Alpha-shape of a set of points: properties(5) The alpha shape is a sub-graph of the Delaunay triangulation. The convex hull is an element of the alpha shape family.
Alpha-shape of a set of points (6) Theorem (2D case)
Alpha-shape of a set of points (7)
Alpha-shape of a set of points: algorithm(8) Input: the point set S, output: a-shape of S Compute the Voronoi diagram of S. For each edge e compute the values amin(e) and amax(e). If (amin(e)<=a<=amax(e)) then e is in the a-shape of S.
Alpha-shape of a set of points : 3D case(9) 1-simplex 2-simplex p1 v2 v1 p3 p2
Alpha-shape of a set of points (10) Simplicial Complex A simplicial complex K is a finite collection of simplices with the following two properties: A Delaunay triangulation is a simplicial complex.
Alpha-shape of a set of points (11) Alpha Complex
Alpha-shape of a set of points (12) Alpha Complex
Alpha-shape of a set of points (13) Alpha Complex : example
Alpha-shape of a set of points (14) Curve reconstruction: definition The problem of curve reconstruction takes a set, S, of sample points on a smooth closed curve C, and requires to produce a geometric graph having exactly those edges that connect sample points adjacent in C.
Alpha-shape of a set of points (15) Surface reconstruction A set of points S The reconstructed surface
Alpha-shape of a set of points (16) Curve reconstruction : theorem
Alpha-shape of a set of points (17) The sampling density must be such that the center of the “disk probe” is not allowed to cross C without touching a sample point. Examples of non admissible cases of probe-manifold intersection.
Weighted alpha shape (1) For two weighted points, (p’, p ’’) and x=(x’,x’’), we define
Weighted alpha shape (2) x’
Weighted alpha shape (3)
Weighted alpha shape (4)
Weighted alpha shape (5) The weighted alpha shape is a sub-graph of the regular triangulation.
Weighted alpha-shape (6) Input: the points set S, output: weighted a-shape of S. Compute the power diagram of S. For each edge e of the regular triangulation of S compute the values amin(e) and amax(e). For each edge e If (amin(e)<=a<=amax(e)) then e is in the weighted a-shape of S.
Gabriel Graph: definition (1)
Gabriel Graph: example (2) This edge is not in the GG An edge of Gabriel
Gabriel Graph: properties (3) 1) The Gabriel graph of S is a sub graph of the Delaunay triangulation of S.
Gabriel Graph: example (4)
Gabriel Graph: algorithm (5) Compute the Voronoi diagram of S. A Delaunay edge e belongs to the Gabriel Graph of S iff e cuts its dual Voronoi-edge.
Beta skeleton (1) b-neighborhood, neighborhood, The Gabriel graph is an element of the b-skeleton family (b= 1). The b-skeleton is a sub-graph of the Delaunay triangulation.
Examples of b-neighborhood : Beta skeleton (2) Examples of b-neighborhood : Forbidden regions
Beta skeleton (3) A beta-skeleton edge
Beta skeleton (4) beta = 1.1 beta = 1.4
Beta skeleton : algorithm (5) The coordinates of these centers are:
Medial axis (1) The medial axis of a region, defined by a closed curves C, is the set of points p which have a same distance to at least two points of C.
Medial axis and Voronoi diagram(2) A Delaunay disc is an approximation of a maximal ball
Medial axis and Voronoi diagram (3) Let S be a regular sampling of C. Compute the Voronoi diagram of S. A Voronoi edge vv’ is in an approximation of the medial axis of C if it separates two non adjacent samples on C.
Reconstruction : e-sampling condition(1) S is an e-sampling (e<1) of a curve C iff
Reconstruction : e-sampling condition(2)
Reconstruction : b-skeleton (3) Let S e-sample a smooth curve, with e<0.297. The b-skeleton of S contains exactly the edges between adjacent vertices on the curve, for b = 1.70.
A-shape and Crust (1)
A-shape and Crust (2) An edge of A-shape
A-shape and Crust (3)
A-shape et Crust (4) Crust of S is an A-shape of S when A is the set of the vertices of the Voronoi diagram of S.
A-shape et Crust (5) Voronoi vertex crust Voronoi crust
Crust : algorithm (6) Compute the Voronoi diagram of S, DV(S). Compute the Voronoi diagram of SUV, DV(SUV), V being the set of the Voronoi vertices of DV(S). A k-simplex, conv(T), of the Delaunay triangulation of SUV, belongs to the crust of S iff the points of T have a same neighbor belonging to V.
Crust : reconstruction (7) The crust of S (S being an e-sampling of C) reconstructs the curve C if e <1/5.
Local Crust : definition and properties (1) v v’ is the dual Voronoi edge of pp’, b(p p’ v) is the ball which circumscribes the points p, p’,v.
Local Crust : definition and properties (2)
Local Crust and Gabriel Graph (3) Local crust of S is a sub graph of the Gabriel Graph of S.
Voronoi Gabriel Graph (VGG) Local Crust and Gabriel Graph (4) Voronoi Gabriel Graph (VGG) [v v’] is an edge of the VGG of S iff [v v’] is the dual Voronoi edge of the Delaunay edge [pp’]. b(v v’) is the ball of diameter v v’. An edge pp’ belongs to the Local crust of S iff vv’ belongs to the VGG of S.
Local Crust and Gabriel Graph (5)
Local Crust : reconstruction (6) The Local crust of S (S being an e-sampling of C) reconstructs the curve C, if e<0.42.
Local Crust and Gabriel Graph (7) Voronoi Gabriel Graph
NN-Crust: curve reconstruction Compute the Delaunay triangulation of S. E is empty. For each p in S do Compute the shortest edge pq in D(S). Compute the shortest edge ps so that the angle (pqs) more than p/2. E= E U {pq, ps}. E is the NN-crust of S.
3D reconstruction: an example