Download presentation
Presentation is loading. Please wait.
Published byHarriet Hardy Modified over 9 years ago
2
Dr. Marina Gavrilova Associate Professor, Department of Computer Science, University of Calgary, Calgary, Alberta, Canada. Computational Geometry Algorithms: Voronoi Diagram and Delaunay Triangulation
3
2 General Research Areas Voronoi diagram introductions Voronoi diagram theory Application examples Conclusions Lecture Overview
4
Computational Geometry in Action
5
Activities in Brief Founder and Co-Director: Biometric Technologies Laboratory, CFI SPARCS Laboratory for Spatial Analysis in Computational Sciences, GEOIDE Editor-in-Chief: International Journal LNCS Transactions on Computational Sciences, Springer-Verlag Guest Editor: Int. Journal of Computational Geometry and Applications IEEE Robotics and Automation Magazine RAM
6
Activities in Brief Chair and Co-Founder: International Conference on Computational Sciences and Applications since 2003 International Workshop on Computational Geometry and Applications (since 2001) Chair, the 3 rd International Symposium on Voronoi Diagrams and Applications 06 Author of new books: S. Yanushkevich, M. Gavrilova, P. Wang and S. Srihari "Image Pattern Recognition: Synthesis and Analysis in Biometrics," Series in Machine Perception and Artificial Intelligence, World Scientific Bestseller, 2007 M. Gavrilova “Computational Intelligence: A Geometry- Based Approach,” Series on Studies in Computational Intelligence, Springer-Verlag, 2008
7
Areas of Research Biological systems modeling Molecular systems representation and analysis Geographical Information Systems Biometric analysis and synthesis Granular-type materials simulation Topological properties of data sets Terrain rendering and surface triangulation Path planning and obstacle avoidance Robotics and Navigation Autocorrelation analysis Spatial-temporal models Nearest neighbor properties Terrain reconstruction and triangulation
8
Areas of Research Biometric researchPorous materials Dynamic data structures (with I. Kolingerova) Coral models (with J. Kaandorp) Terrain modeling Lipid bi-layers and molecular modeling (with N.N. Medvedev)
9
Voronoi Diagrams – A Brief Overview
10
M. Moriguchu and K. Sugihara, Japan Deok-Soo Kim, Korea C. Gold and M. Dakowicz, UK A. Mukhopadhyay, S. Das, Canada L. Wang et. al. China Tetsuo Asano, Japan T. Taylor and I. Vaisman, USA James Dean Palmer, USA P. Bhattacharya and M. Gavrilova, Canada Voronoi diagrams in selected applications (ISVD 2006)
11
Craig S. Kaplan, University of Waterloo, Canada Voronoi diagrams in tiling (ISVD 2006) Jos Leys, Belgium
12
Voronoi diagram and Delaunay Tessellation Voronoi diagram is one of the fundamental computational geometry data structures that stored proximity information for a set of obejcts. It’s dual structure, often used in computer graphics, is Delaunay Tessellation. A generalized Voronoi diagram (GVD) for a set of objects in space is the set of generalized Voronoi regions where d(x,P) is a distance function between a point x and a site P in the d-dimensional space.
13
Delaunay Tessellation A generalized Delaunay tessellation (triangulation in 2d) is the dual of the generalized Voronoi diagram obtained by joining all pairs of sites whose Voronoi regions share a common Voronoi edge according to some specific rule.
14
Delaunay simplex (tetrahedron in 3D) defines a simplicial configuration of spheres and a void (empty space) between spheres. Delaunay Triangle and Void Empty volume
15
Voronoi diagram and Delaunay triangulation in 2D
16
Under assumptions that no four sites from the object (generator) set S are cocircular: Voronoi vertex is the intersection of 3 Voronoi edges and a common point of 3 Voronoi regions Voronoi vertex is equidistant from 3 sites. It lies in the center of a circle inscribed between 3 cites Empty circle property This inscribed circle is empty, i.e. it does not contain any other sites Nearest-neighbor property If Q is the nearest neighbor of P then their Voronoi regions share an edge (to find a nearest neighbor it is sufficient to check only neighbors in the VD) Main properties of the Voronoi Diagram
17
Under assumptions that no three sites from the set S (generator) lie on the same straight line: The straight-line dual of the Voronoi diagram is a triangulation of S The circumcircle of any Delaunay triangle does not contain any points of S in its interior If each triangle of a triangulation of the convex hull of S satisfies the empty circle property, then this triangulation is the Delaunay triangulation of S. If Q is the nearest neighbor of P then their Voronoi regions share an edge (to find a nearest neighbor it is sufficient to check only neighbors in the VD). Main properties of the Delaunay Triangulation
18
Distance metrics for Voronoi Diagrams General L p distance Manhattan Supremum Manalanobis
19
Voronoi diagrams VD: Thiessen polygons, Delaunay triangulations, tessellations
20
Tessellation Tessellation is often obtained using Delaunay triangulation.
21
Voronoi diagram Given a set of N sites (points) in the plane or a 3D space Distance function d(x,P) between point x and site P is defined according to some metric Voronoi region Vor(P) is the set of all points which are closer to P than to any other site Voronoi diagram is the union of all Voronoi regions
22
Voronoi Diagram
23
Voronoi diagram
25
Voronoi diagram properties Assumption 1. No four points from the set S are cocircular. Property 1. Voronoi vertex is the intersection of 3 Voronoi edges and a common point of 3 Voronoi regions Property 2. Voronoi vertex is equidistant from 3 sites. It lies in the center of a circle inscribed between 3 cites Property 3. Empty circle property This inscribed circle is empty, i.e. it does not contain any other sites Property 4. Nearest-neighbor property If Q is the nearest neighbor of P then their Voronoi regions share an edge (to find a nearest neighbor it is sufficient to check only neighbors in the VD) Property 5. Voronoi region Vor(P) is unbounded if and only if P belongs to the boundary of convex hull of S.
26
VD properties
31
Delaunay triangulation Definition 3. A Delaunay triangulation (DT) is the straight-line dual of the Voronoi diagram obtained by joining all pairs of sites whose Voronoi regions share a common Voronoi edge [Delaunay 34]. Follows from the definition: If two Voronoi regions Vor(P) and Vor(Q) share an edge, then sites P and Q are connected by an edge in the Delaunay triangulation If a Voronoi vertex belongs to Vor(P), Vor(Q) and Vor(R), then DT contains a triangle (P,Q,R)
32
Delaunay triangulation
33
DT properties Assumption 2. No three points from the set S lie on the same straight line. Theorem. The straight-line dual of the Voronoi diagram is a triangulation of S [Preparata and Shamos 85]. Property 5. The circumcircle of any Delaunay triangle does not contain any points of S in its interior [Lawson 77]. Property 6. If each triangle of a triangulation of the convex hull of S satisfies the empty circle property, then this triangulation is the Delaunay triangulation of [Lawson 77].
34
DT properties The edge of the quadrilateral satisfies the local min-max criterion if the following equation holds: A triangulation satisfies the global min-max criterion if every internal edge of a convex quadrilateral in the triangulation satisfies the local min-max criterion. Property 8. The Delaunay triangulation satisfies the global min-max criterion [Lawson 77]. Property 9. If a triangulation of the convex hull of satisfies the global min-max criterion then it is the Delaunay triangulation of [Lawson 77].
35
VD and DT
36
Both DT and VD effectively represent the proximity information for the set of sites. They can be easily transformed into each other. VD contains geometrical information, while DT contains topological information.
37
Generalized Voronoi diagram Given a set S of n sites (spheres) in d - dimensional space Distance function d(x,P) between a point x and a site P is defined.
38
Generalized Voronoi diagram A generalized Voronoi diagram (GVD) for a set of objects in space is the set of generalized Voronoi regions where d(x,P) is a distance function between a point x and a site P in the d -dimensional space.
39
Generalized Delaunay tessellation A generalized Delaunay triangulation (GDT) is the dual of the generalized Voronoi diagram obtained by joining all pairs of sites whose Voronoi regions share a common Voronoi edge.
40
General metrics Generalized distance functions Power Additively weighted –Euclidean –Manhattan –supremum x P d(x,P) P x P x p r Pxd, P x p r Pxd,
41
Power and Euclidean Voronoi diagrams P Q B(P,Q) Euclidean bisectorPower bisector Power diagram and Delaunay triangulation P Q B(P,Q) Euclidean diagram and Delaunay triangulation
42
Manhattan and Supremum VD Supremum bisectors Manhattan bisectors Manhattan diagram and Delaunay triangulation Supremum diagram and Delaunay triangulation
43
Properties of Generalized VD and DT The vertex of generalized Voronoi diagram is a center of a sphere inscribed between d +1 Voronoi sites (spheres). The inscribed sphere is empty, i.e. it does not contain any other sites. One of the facets of the generalized Voronoi region Vor(P) defines a nearest-neighbor of P. A Voronoi region Vor(P) is unlimited if and only if site P belongs to the convex hull of S. The sphere inscribed between the sites comprising a simplex of generalized Delaunay tessellation is an empty sphere. The power Delaunay tessellation of a set of spheres S is a tetrahedrization.
44
Algorithmic Strategies Incremental Divide-and-conquer Sweep-line/plane Dimension reduction Geometric decomposition
45
Part 2 Algorithm development techniques on example of Voronoi Diagrams Incremental construction Divide and conquer Sweep-plane Geometric transformations Dynamic data structures
46
Incremental construction INCIRCLE condition power Euclidean Supremum Polynomial of 4 th order in the plane Polynomial of 8 th order in the plane System of linear equations and inequalities in the plane
47
Incremental construction Incremental method outline –Insert new site P –Perform swap operations on quadrilaterals where the empty-sphere condition is not satisfied Method complexity is O(n 2 ) in the plane.
48
Sweep-plane algorithm Algorithm description –Throw pebbles in the water –Intersection of waves gives the Voronoi diagram –Add time as 3rd dimension: waves transform to pyramids. –Sweep pyramids with the sweep-plane to get the Voronoi diagram
49
Sweep-plane algorithm Properties –The complexity of the sweep-plane algorithm in generalized Manhattan metric is O(n log n). –Sweep-plane method is not applicable to the power diagram construction.
50
Sweep-plane algorithm An example of a sweep-plane construction of a Voronoi diagram in L 1 metric
51
Cones in L 1 Sweep-plane algorithm
52
Sweeping the cones Sweep-plane algorithm
53
Parabolas sweep direction Sweep-plane algorithm
54
Site event Sweep-plane algorithm
55
Site event Sweep-plane algorithm
56
two half-bisectors are created one is growing Sweep-plane algorithm
57
The half-bisector changes its direction Sweep-plane algorithm
58
Site event 2 half-bisectors created Sweep-plane algorithm
59
The half-bisector Changes its direction Sweep-plane algorithm
60
Circle event Triangle added to DT 2 half-bisectors deleted 1 half-bisector created Sweep-plane algorithm
61
Half-bisector changes its direction Sweep-plane algorithm
62
No more events Sweep-plane algorithm
63
Resulting Voronoi diagram and Delaunay triangulation Sweep-plane algorithm
64
Waves in Manhattan metric Waves in power metric
65
Swap method: from VD to power diagram Relationship between Voronoi bisector and power bisector: The power bisector is moved relative to the Voronoi bisector by Bisector transformation
66
Swap method: from VD to power diagram Algorithm overview –Inflate VD sites –Transform edges of VD –Perform INCIRCLE test on quadrilaterals and perform swap operations if needed. The worst-case complexity of algorithm is O(n 2 ).
67
Swap method Voronoi to power (a) p (b) p e e e * 1 p p p 2 1 3 4 2 p p p 3 4 e *
68
Dynamic data structures – swap application Approach –construct and maintain a dynamic Delaunay triangulation for the set of moving disks (in some metric). –Collisions checks are performed only along the Delaunay edges.
69
Dynamic VD and DT Problem Given a set of N moving and/or changing (i.e. growing) sites Construct the VD (DT) for the set Maintain the VD (DT) dynamically
70
Dynamic VD and DT Dynamic Voronoi diagram Dynamic Delaunay triangulation
71
Dynamic VD and DT Dynamic DT is easier to maintain than dynamic VD in a sense that the coordinates of VD vertices must be calculated, while coordinates of DT vertices (the sites) are already known for any moment of time As sites move, the topological structure of DT (and VD) changes only at discrete moments of time, which are called topological events. Topological event involves swapping of the diagonal in a quadrilateral in the DT In the VD corresponding edge shrinks to zero and another edge starts to grow
72
Swap condition
73
INCIRCLE test 1. Power metric To determine the swap time we have to solve 2. Euclidean metric 3. Manhattan metric (L )
74
Dynamic DT maintenance Preprocessing –Construct the static Delaunay triangulation for the original site distribution –For every quadrilateral in DT calculate the potential topological event. Insert all such events into the priority event queue sorted according to the time order Iteration –Take the next event from the event queue –Perform the swap operation and update the data structure –Delete topological events planned for the four disappearing quadrilaterals from the event queue. –Compute the new topological events for the four new quadrilaterals and insert them into the queue.
75
Algorithm complexity Time –Constructing initial static DT - O(N log N) –Each swap - O(1) –Insertion into the priority queue - O(log N) –Deletion from the queue can be performed in O(1) –Number of topological events depends on the trajectories of moving sites. It can vary from from O(1) up to O(n 3 ) –and even to infinity (in the case of periodic trajectories) –When sites do not move, but just grow, we conjecture that the number of topological events will not be greater than O(N) in general case. Space –DT occupies O(N) –Queue requires O(N) because only one event can be scheduled for each edge in the DT
76
Clustering: the CRYSTAL Algorithm
77
Detecting a cluster boundary Vertex V i Mean of incident edge lengths of V i > 1.6 * Average cluster edge length? Boundary vertex Inner point of the cluster Boundary vertex
78
Enqueue( Q, v k ) C ← v k tot_dist ← 0 avg ← AvgadjEdgeLen( v k ) AvgadjEdgeLen( v i ) – Average of the length of edges incident on a vertex v i d ← Head( Q ) L ← 1st-order neighbors of d sorted by edge length For all L i є L do C ← C U L i tot_dist ← tot_dist + EdgeLen( d, L i ) avg ← tot_dist / (Size( C ) - 1) If Not a boundary vertex and Not connected to a boundary vertex then Enqueue ( Q, L i ) End If End For EdgeLen( v i, v j ) – Euclidean distance between vertices v i and v j Dequeue(Q) Q = Φ ? Y Perform sweep and consider next vertex N Grow cluster phase
79
78 Example Processing
80
79 Sample output Original dataset (n = 8,000) CRYSTAL output (Th = 2.4)
81
Computational Geometry Algorithms for Clearance-based Path Planning
82
Voronoi diagram based roadmap ( a) Shortest path from Voronoi diagram based roadmap (based on VD edges) (b) Shortest path using developed algorithm (Cmin = 0). (c) Clearance based path using proposed algorithm (Cmin = 2). Zoomed path on right.
83
82 Tools: Visibility graphs Used to plan shortest paths. Constructed in O (n 2 log n) time, where n is the total number of obstacle vertices. Output-sensitive O (n log n + k) algorithm exists for construction where k is the number of edges in visibility graph. Resulting paths have no clearance
84
VD and visibility graph roadmaps
85
84 Flow diagram of the Voronoi diagram based algorithm
86
Voronoi diagram based path -illustration Voronoi diagram Roadmap extracted
87
86 More examples Clearance = 12 Clearance = 0 Clearance = 7 Clearance = 0 Clearance = 8 Clearance = 0
88
87 Underlying hierarchical data structure
89
Review Define VD and DT List main VD properties List main DT properties Explain generalizations (in space, distance metric, site type) Explain CCW and In-Circle test What is dynamic VD? Explain main algorithmic approaches for DT constructions.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.