Title: Avoiding Slivers in Practice and with a Guarantee
1Avoiding Slivers in Practice and with a
Guarantee
- Daniel Dumitriu, Stefan Funke, Martin Kutz,
Nikola Milosavljevic - Presented by Kuiyu Li for 888
- April 5, 2007
2Overview
- A new method for reconstructing a 2-manifold from
a point sample in R3 - Throws away geometry info and operates
combinatorially on a graph - Conservative in creating adjacencies between
samples in the vicinity of slivers
3References (3 papers)
- To understand the paper, we need at least
- 1 Smooth-surface reconstruction in near-linear
time, SODA 2002 - 2 Network Sketching or How Much Geometry
Hides in Connectivity? Part II, SODA 2007 - 3 Surface reconstruction by voronoi filtering
(CRUST), SOCG 1998
4Background and Motivation
- CRUST is a early method for reconstructing smooth
closed surface T based on a point sample V - It defines local feature size
- V should bee-sample of T
- The reconstructed surface is the set of delaunay
triangles that are dual to the Voronoi edges in
the Voronoi diagram of V that are intersected by
the surface T
3 Surface reconstruction by voronoi filtering
(CRUST), SOCG 1998
5Background and Motivation
- Slivers
- Def 4 almost cocircular points that are nearby
on the surface and have an empty diametral ball - Because of this, its impossible to decide the
correct reconstruction without knowing T - Local decisions might disagree
- For each sample p, we need to know which of the
candidate triangles to keep for the final
reconstruction - Sliver induce a Voronoi vertex for the involved
sample points
6Background and Motivation
- One possibility is to decide adjacencies
conservatively by only creating adjacencies that
are sure - But its unclear how much connectivity is lost,
i.e. - the resulting graph is connected at all ?
- how big potential holes/faces are ?
7Contribution of the Paper
- Show that it is actually possible to make local
decisions - Guarantee that the resulting graph exhibits
topological equivalence to the original surface
8Contribution of the Paper
- A Graph-based algorithm
- Operate combinatorially on a graph
- Created adjacencies are conservative
- 2 samples are connected if there is a safe
sliver-free region around them - It also guarantees constant-size faces in the
reconstruction - No manifold extraction step
9Conservative Adjacencies in R2
- Input a uniform e-sampling V
- Create a locally neighborhood graph G(V,E)
- G(V,E) is also a a-quasi-unit-disk-graph
- Call S ? V a tight k-subsample of V, if
2 Network Sketching or How Much Geometry
Hides in Connectivity? Part II, SODA 2007
10GVD and CDM
- Determining adjacencies among nodes in S based on
a Graph Voronoi Diagram (GVD) - GVD is created on the locally neighborhood graph
G(V,E) - GVD partitions the plane into simply connected
disjoint regions, with each of them containing
one node of S - The constructed graph G(S,E'), called
Combinatorial Delaunay Map, denoted as CDM(S), of
S is the dual graph of GVD
2 Network Sketching or How Much Geometry
Hides in Connectivity? Part II, SODA 2007
11How to determine adjacencies ?
- How to determine adjacencies in of S ?
- labeling of G(V,E), given S ? V
- Determining Adjacencies of nodes of S to get
CDM(S)
2 Network Sketching or How Much Geometry
Hides in Connectivity? Part II, SODA 2007
12Theorem 2.1
2 Network Sketching or How Much Geometry
Hides in Connectivity? Part II, SODA 2007
13CDM(S) is dense !(ß-Skeleton of S ? CDM(S)
ß-Skeleton is dense)
- Consider theß-Skeleton of S
- Def ß-skeleton of S has an edge between p q ?
S iff any ball of radius ßpq/2 touching p and
q is empty of other points - Whenß1, its Gabriel graph
- ß-Skeleton is dense
- ß-skeleton of S is a s-power spanner
- s-power distance ds(p,q) between p q ? S is
determined by a sequence of points (power minimal
/ efficient path)
such that
is minimal
2 Network Sketching or How Much Geometry
Hides in Connectivity? Part II, SODA 2007
14CDM(S) is dense !(ß-Skeleton of S ? CDM(S)
ß-Skeleton is dense)
- Lemma 2.3
- For a good choice of s and ß, all power efficient
paths use only edges of the ß-skeleton and that
the ß-skeleton-graph is connected - Finally, to show thatß-Skeleton is dense, only
need to show that the induced faces of ß-skeleton
are of constant size !
15CDM(S) is dense !(ß-Skeleton of S ? CDM(S)
ß-Skeleton is dense)
- At this point, we have shown that the ß-skeleton
of S induces a connected planar graph which has
constant-size faces - For a suitable choice of k,eandß
- ß-skeleton ? CDM(S)
- Corollary 2.1
16How about in R3 ? a 3D Algorithm
- Input
- e-sample V of a manifold T
- Output
- reconstruction of V for T as a subcomplex of the
Delaunay tetrahedralization of V
173D Algorithm Steps
- (1) Determine a Lipschitz function f(v) for
every v ? V, which lower-bounds elfs(v) - (2) Construct a local neighborhood graph G(V) by
creating an edge from every point v to all other
points v'with vv' 6f(v) - (3) Compute a tight k-subsample S of V
- (4) Create certified adjacencies among samples
of S using the Graph Voronoi Didgram of G(V) - (5) Use geometric positions of the points in S
to identify faces (which are of constant size) of
the graph induced by certified adjacencies - (6) Triangulate all non-triangular faces
- (7) re-insert points in V - S for final
reconstruction
18Smooth-surface reconstruction in near-linear
time, SODA 2002
- Lipschitz function
- Foragt0, fS-gtR has the Lipschitz property if for
any x, y?S, f(x) f(y)axy - Locally uniforme-sampling
- A sample P?S is a locally uniforme-sampling, if
there is a control functionfS-gtR and constant
0lta,ß,dlt1, such that
1 Smooth-surface reconstruction in near-linear
time, SODA 2002
19Smooth-surface reconstruction in near-linear
time, SODA 2002
- Input e-sampling P of S
- Output triangulationSof P to approximate S
- Algorithm steps
- (1) Estimation of decimation radius for each pt
of P - (2) Do the decimation to get a locally uniform
sub-sampling Q?P - (3) Use Crust to construct surfaceS from Q
- (4) Re-insert samples P-Q" for final
reconstruction - Time complexity
- Worst time O(nlgn)
1 Smooth-surface reconstruction in near-linear
time, SODA 2002
20Core Correctness Proof
- local neighborhood graph corresponds locally to
aa-quasi-unit-disk graph for a set of points in
the plane - Corollary 2.1 also apply in here
- The certified adjacencies locally form a planar
graph - The faces of this graph have constant size
- The constructed graph on S is a mesh that is
locally planar and covers the whole 2-manifold T
21Core Correctness Proof
22Implementation
- The paper doesnt implement step (6) and (7)
- It assumes that the input points V is a locally
uniform sampling - so it doesnt compute Lipschitz function f(v)
- Local neighborhood graph is constructed by
connecting a sample to its 15 nearest neighbors - A Simplified determination of adjacencies of
CDM(S) - two samples s1 s2 ? S are adjacent in CDM(S) if
the number of edges linking a sample v1 (? s1s
graph Voronoi cell) to a sample v2 (? s2s graph
Voronoi cell) is more than 7
23Results
- Point cloud Graph Voronoi Diagram
24Results
25Results
- Time spend in different stages
- (step 2) Ngb local neighborhood graph
- (step 3) MIS get tight k-subsample S from V
- (step 4) Vor Graph Voronoi Diagram (GVD)
- (step 4) Del Combinatorial Delaunay Map (CDM)
- (step 5) Cye identify faces
26Results
- Parameter choice
- According to the theory, k must be chosen very
large to guarantee sufficient density of CDM(S)
k2
k5
k14
27Results
28Results
29Thanks