390 likes | 670 Views
Discrete geometry. Lecture 2. © Alexander & Michael Bronstein tosca.cs.technion.ac.il/book. Numerical geometry of non-rigid shapes Stanford University, Winter 2009. ‘. ‘. ‘. ‘. The world is continuous,. but the mind is discrete. David Mumford. Discretization. Continuous world.
E N D
Discrete geometry Lecture 2 © Alexander & Michael Bronstein tosca.cs.technion.ac.il/book Numerical geometry of non-rigid shapes Stanford University, Winter 2009
‘ ‘ ‘ ‘ The world is continuous, but the mind is discrete David Mumford
Discretization Continuous world Discrete world • Surface • Metric • Topology • Sampling • Discrete metric (matrix of distances) • Discrete topology (connectivity)
Sampling density • How to quantify density of sampling? • is an -covering ofif Alternatively: for all , where is the point-to-set distance.
Sampling efficiency • Are all points necessary? • An -covering may be unnecessarily dense (may even not be a discrete set). • Quantify how well the samples are separated. • is -separated if for all . • For , an -separated set is finite if is compact. Also an r-covering!
Farthest point sampling • Good sampling has to be dense and efficient at the same time. • Find and -separated -covering of . • Achieved using farthest point sampling. • We defer the discussion on • How to select ? • How to compute ?
Farthest point sampling Farthest point
Farthest point sampling • Start with some . • Determine sampling radius • If stop. • Find the farthest point from • Add to
Farthest point sampling • Outcome: -separated -covering of . • Produces sampling with progressively increasing density. • A greedy algorithm: previously added points remain in . • There might be another -separated -covering containing less points. • In practice used to sub-sample a densely sampled shape. • Straightforward time complexity: number of points in dense sampling, number of points in . • Using efficient data structures can be reduced to .
Sampling as representation • Sampling represents a region on as a single point . • Region of points on closer to than to any other • Voronoi region (a.k.a. Dirichlet or Voronoi-Dirichlet region, Thiessen polytope or polygon, Wigner-Seitz zone, domain of action). • To avoid degenerate cases, assume points in in general position: • No three points lie on the same geodesic. (Euclidean case: no three collinear points). • No four points lie on the boundary of the samemetric ball. (Euclidean case: no four cocircular points).
Voronoi decomposition Voronoi region Voronoi edge Voronoi vertex • A point can belong to one of the following • Voronoi region ( is closer to than to any other ). • Voronoi edge ( is equidistant from and ). • Voronoi vertex ( is equidistant from three points ).
Voronoi decomposition • Voronoi regions are disjoint. • Their closure covers the entire . • Cutting along Voronoi edges produces a collection of tiles . • In the Euclidean case, the tiles are convex polygons. • Hence, the tiles are topological disks (are homeomorphic to a disk).
Voronoi tesellation • Tessellation of (a.k.a. cell complex): a finite collection of disjoint open topological disks, whose closure cover the entire . • In the Euclidean case, Voronoi decomposition is always a tessellation. • In the general case, Voronoi regions might not be topological disks. • A valid tessellation is obtained is the sampling is sufficiently dense.
Non-Euclidean Voronoi tessellations • Convexity radius at a point is the largest for which the closed ball is convex in , i.e., minimal geodesics between every lie in . • Convexity radius of = infimum of convexity radii over all . • Theorem (Leibon & Letscher, 2000): An -separated -covering of with convexity radius of is guaranteed to produce a valid Voronoi tessellation. • Gives sufficient sampling density conditions.
Sufficient sampling density conditions Invalid tessellation Valid tessellation
MATLAB® intermezzo Farthest point sampling and Voronoi decomposition
Representation error • Voronoi decomposition replaces with the closest point . • Mapping copying each into . • Quantify the representation error introduced by . • Let be picked randomly with uniform distribution on . • Representation error = variance of
Optimal sampling • In the Euclidean case: (mean squared error). • Optimal sampling: given a fixed sampling size , minimize error Alternatively: Given a fixed representation error , minimize sampling size
Centroidal Voronoi tessellation • In a sampling minimizing , each has to satisfy (intrinsic centroid) • In the Euclidean case – center of mass • In general case: intrinsic centroid of . • Centroidal Voronoi tessellation (CVT): Voronoi tessellation generated by in which each is the intrinsic centroid of .
Lloyd-Max algorithm • Start with some sampling (e.g., produced by FPS) • Construct Voronoi decomposition • For each , compute intrinsic centroids • Update • In the limit , approaches the hexagonal honeycomb shape – the densest possible tessellation. • Lloyd-Max algorithms is known under many other names: vector quantization, k-means, etc.
Sampling as clustering Partition the space into clusters with centers to minimize some cost function • Maximum cluster radius • Average cluster radius In the discrete setting, both problems are NP-hard Lloyd-Max algorithm, a.k.a. k-means is a heuristic, sometimes minimizing average cluster radius (if converges globally – not guaranteed)
Farthest point sampling encore • Start with some , • For • Find the farthest point • Compute the sampling radius Lemma • .
Proof For any
Proof (cont) Since , we have
Almost optimal sampling Theorem (Hochbaum & Shmoys, 1985) Let be the result of the FPS algorithm. Then In other words: FPS is worse than optimal sampling by at most 2.
Idea of the proof Let denote the optimal clusters, with centers Distinguish between two cases One of the clusters contains two or more of the points Each cluster contains exactly one of the points
Proof (first case) Assume one of the clusters contains two or more of the points , e.g. triangle inequality Hence:
Proof (second case) Assume each of the clusters contains exactly one of the points , e.g. Then, for any point triangle inequality
Proof (second case, cont) We have: for any , for any point In particular, for