Abstract
We present a novel reconstruction algorithm that, given an input point set sampled from an object S, builds a one-parameter family of complexes that approximate S at different scales. At a high level, our method is very similar in spirit to Chew’s surface meshing algorithm, with one notable difference though: the restricted Delaunay triangulation is replaced by the witness complex, which makes our algorithm applicable in any metric space. To prove its correctness on curves and surfaces, we highlight the relationship between the witness complex and the restricted Delaunay triangulation in 2d and in 3d. Specifically, we prove that both complexes are equal in 2d and closely related in 3d, under some mild sampling assumptions.
Keywords: Sampling, Reconstruction, Delaunay triangulation, Witness complex
1 Introduction
The problem of reconstructing a curve or a surface from scattered data points has received a lot of attention in the past. Although it is ill-posed by nature, since infinitely many shapes with different topological types can interpolate a given point cloud, a number of provably good methods have been proposed. The common denominator of these methods is the assumption that the input point set is densely sampled from a sufficiently regular shape: this assumption makes the reconstruction problem well posed, since all sufficiently regular shapes interpolating the point set have the same topological type and are close to one another geometrically. It suffices then to approximate any of these shapes to get the right answer. The notion of ε-sample, introduced by Amenta and Bern [1], provides a sound mathematical framework for this kind of approach, the corresponding set of reconstructible shapes being the class of manifolds with positive reach [26]. A number of provably-good algorithms are based on the ε-sampling theory—see [9] for a survey, and several extensions have been proposed to reconstruct manifolds in higher-dimensional spaces [15] or from noisy point cloud data [24]. The theory itself has been recently extended to a larger class of shapes, known as the class of Lipschitz manifolds [8]. In all these methods, the Delaunay triangulation of the input point set plays a prominent role since the final reconstruction is extracted from it.
This approach to surface reconstruction is limited because it assumes implicitly that a point cloud should always represent a single class of shapes. Consider the example of a closed helical curve rolled around a torus in ℝ3—see Fig. 1. Take a very dense uniform point sample of the curve: what does this point set represent, the curve or the torus? Although both objects are well sampled according to Amenta and Bern’s sampling theory, classical reconstruction methods always choose a single class of shapes, here the curve or the torus, by restricting themselves either to a certain dimension or to a certain scale: for instance, the reconstruction method of [15] or the dimension detection algorithm of [23] will detect the curve but not the torus, since the point set is a sparse sample of the curve but not of the torus. Now, we claim that the result of the reconstruction should not be either the curve or the torus, but both of them. More generally, the result of the reconstruction should be a one-parameter family of complexes, whose elements approximate the original shape at different scales, as illustrated in Fig. 1. This point of view, inspired from recent results by Chazal et al. [10], stands in sharp contrast with previous work in the area and is echoed in the literature on nonlinear dimensionality reduction [34, 36] and topological persistence [19, 25, 37].
This paper presents a novel reconstruction algorithm that, given an input point set W sampled from an object S, builds a one-parameter family of complexes that approximate S at different scales. At a high level, the method is very similar to Chew’s surface meshing algorithm [7, 17]: it constructs a subset L of W iteratively, while maintaining a subcomplex of the Delaunay triangulation of L. The one-parameter family of complexes obtained from this iterative process is the result of the algorithm. The difference with Chew’s approach is that, instead of maintaining the restricted Delaunay triangulation of L, we maintain its witness complex (L) relative to W. The main advantages are that the underlying object S does not have to be known, and that the full-dimensional Delaunay triangulation (L) does not have to be computed. Moreover, the algorithm can be used in any metric space, ultimately enabling new applications of the Delaunay-based reconstruction ideas.
The witness complex can be viewed as a weak version of the Delaunay triangulation, well defined and computable in any metric space—see Sect. 2 below. As such, it has played an important role in the context of topological data analysis [22]. It was first introduced by de Silva [20], who proved that (L) is a subcomplex of (L) whenever the points of L lie in general position in a Euclidean space. Moreover, if the set W of witnesses spans the whole ambient space, then (L) is equal to (L). Now the question is whether this property holds when the points of W are sampled from a subspace of the ambient space, such as for instance a submanifold: in [22], Carlsson and de Silva observed that (L) is then closely related to the restricted Delaunay triangulation (L), and they conjectured that both objects should coincide under some sampling assumptions on W and L. We prove that this conjecture is valid for a curve in the plane but not for a surface in 3d. In the latter case, we show how to relax the definition of the witness complex so that it contains (L), and then how to extract a subcomplex that approximates (L) (and hence S). This proves that our reconstruction algorithm is correct when applied to point samples of Lipschitz curves or surfaces. We are only aware of one related result: in [4], Attali et al. show that (L) and (L) coincide whenever the set W of witnesses spans an entire submanifold of ℝn of dimension one or two. This result differs from ours in two ways: our set W can be finite, which makes our result more practical, yet in return our set L has to be sparse compared to W, for (L) to contain (L). This sparseness condition is not an issue in practice, since the set L is constructed by the algorithm. Other noticeable differences are that our manifolds can have singularities and that our point samples can be noisy. Our assumption on the input point set W is fairly mild, since it amounts to saying that the Hausdorff distance between W and S is sufficiently small. In particular, there is no sparseness condition on W, and the amplitude of the noise can be as large as the sampling density. This noise model, introduced in [12] and used in subsequent work on reconstruction [10, 13, 29, 30], is less restrictive than its predecessors [16, 24, 28], and it makes our algorithm more practical.
The paper is organized as follows. In Sect. 2, we recall several concepts that will be used later on. In Sect. 3, we present our structural results. Specifically, we prove that the restricted Delaunay triangulation and the witness complex are equal in 2d (Sect. 3.1) and closely related in 3d (Sect. 3.2), under some mild sampling assumptions. In Sect. 4, we introduce our reconstruction algorithm and present some experimental results.
2 Background and Definitions
Let S be a subset of ℝ2 (resp. ℝ3), L a finite set of points in ℝ2 (resp. ℝ3), and ε a positive number.
Definition 2.1
L is an ε-noisy sample of S if no point of L is farther than ε from S.
L is an ε-sample of S if no point of S is farther from L than ε.
L is ε-sparse if the pairwise distances between the points of L are at least ε.
A 0-noisy sample is called a noise-free sample. When the first two conditions of the definition apply simultaneously, for a same ε, the Hausdorff distance between L and S is bounded by ε. We denote by (L) the Delaunay triangulation of L.
Definition 2.2
The Delaunay triangulation of L restricted to S, or (L) for short, is the subcomplex of (L) made of the Delaunay faces whose dual Voronoi faces intersect S.
Let W be another set of points in ℝ2 (resp. ℝ3), finite or infinite.
Definition 2.3
- Given a point w ∈ W and a simplex σ = [p0, …, pl] with vertices in L, w witnesses σ if p0, …, pl belong to the l + 1 nearest neighbors of w, that is,
The witness complex of L relative to W, or (L) for short, is the maximum abstract simplicial complex with vertices in L, whose faces are witnessed by points of W.
The fact that (L) is an abstract simplicial complex means that a simplex belongs to the complex only if all its faces do. By the so-called Weak Witness Theorem [20], we have (L) ⊆ (L), which implies that (L) is an embedded simplicial complex. In the sequel, L will be referred to as the set of landmarks, and W as the set of witnesses.
Lipschitz curves and surfaces
Boissonnat and Oudot [8] introduced a new framework for the analysis of Delaunay-based sampling algorithms. This framework relies on a quantity, called the Lipschitz radius, which plays a role equivalent to the local feature size of Amenta and Bern [1], on a much larger class of shapes—the class of Lipschitz curves and surfaces.
Definition 2.4
Let S be the boundary of a bounded open subset of ℝ2 (resp. ℝ3). Given a point p ∈ S, the k-Lipschitz radius of S at p, or lrk(p) for short, is the maximum radius r such that ∩ B(p, r) is the intersection of B(p, r) with the hypograph of some k-Lipschitz univariate (resp. bivariate) function. We call lrk(S) the infimum of lrk over S.
Recall that the hypograph of a real-valued bivariate function f is the set of points (x, y, z) ∈ ℝ3 such that z < f(x, y). The function f is k-Lipschitz if: ∀p, q ∈ ℝ2, . It is proved in [8] that lrk(S) > 0 whenever S is a k-Lipschitz curve in ℝ2 or surface in ℝ3. In such a case, one can attach to each point p ∈ S a so-called k-Lipschitz normal nk(p) and a so-called k-Lipschitz support plane Tk(p), which play a role similar to the usual normal vector and tangent plane in the Lipschitz setting:
Definition 2.5
Given p ∈ S, the k-Lipschitz normal of S at p, noted nk(p), is the z vector of an oriented orthonormal frame (x, y, z) in which ∩ B(p, lrk(p)) is the intersection of B(p, lrk(p)) with the hypograph of a k-Lipschitz function f(x, y). The k-Lipschitz support plane at p, noted Tk(p), is the plane orthogonal to nk(p) that passes through p.
The main result of [8] is the following:
Theorem 2.6
Let S be a k-Lipschitz surface in ℝ3 and L ⊂ S a finite point set such that:
-
H1
L is an ε-sample of S with ,
-
H2
the triangles of (L) have radius-edge ratios of at most ϱ with and θ = arctan k.
Then, (L) is a 2-manifold isotopic to S, at Hausdorff distance at most ε from S, and whose oriented normals approximate the k-Lipschitz normals of S within an angle of arcsin(2ϱ sin θ).
Another useful result, proved in [31], is an equivalent of Proposition 13 of [5] for Lipschitz surfaces:
Lemma 2.7
Let S be a k-Lipschitz surface in ℝ3 with k < 1. Then, ∀p ∈ S, ∀r ≤ lrk(p), S ∩ B(p, r) is a topological disk.
Similar results can be proved in the planar case (we recall their proofs for completeness):
Lemma 2.8
Let S be a k-Lipschitz curve in ℝ2 with k < 1. Then, ∀p ∈ S, ∀r ≤ lrk(p), S ∩ B(p, r) is a topological arc. Moreover, the orthogonal projection of S ∩ B(p, r) onto Tk(p) is a segment whose vertices are the orthogonal projections of the two endpoints of S ∩ B(p, r).
Proof
Since S is an embedded curve without boundary, S ∩ B(p, r) is a collection of pairwise-disjoint simple arcs, whose endpoints lie on the circle ∂B(p, r). Proving that S ∩ B(p, r) is a topological arc reduces then to showing that |S ∩ ∂B(p, r)| ≤ 2.
Since r ≤ lrk(p), S ∩ B(p, r) is the graph of some k-Lipschitz univariate function f defined over Tk(p) with k < 1. This implies that S ∩ B(p, r) lies in the double wedge K of apex p, of axis Tk(p), and of half-angle θ. Now, at every point of K ∩ ∂B(p, r), the line tangent to ∂B(p, r) makes an angle of at least with Tk(c). Thus, for any two points u, v of ∂B(p, r) lying in the same wedge of K, the line (u, v) makes an angle of at least with Tk(c). It follows that S ∩ ∂B(p, r) cannot have more than one point per wedge of K, since otherwise the fact that S ∩ B(p, r) coincides with the graph of f would be contradicted. As a result, S ∩ B(p, r) is a topological arc, whose endpoints are precisely the two points u, v of S ∩ ∂B(p, r).
Since S ∩ B(p, r) coincides with the graph of f, the orthogonal projection of S ∩ B(p, r) is one-to-one, and thus it maps the arc S ∩ B(p, r) to a segment whose vertices are the orthogonal projections of the endpoints of S ∩ B(p, r).
Theorem 2.9
If S is a k-Lipschitz curve in the plane with k < 1, and if L is an ε-sample of S with ε < lrk(S), then (L) is a polygonal curve homeomorphic to S and at Hausdorff distance at most ε from S.
Proof
Since L is an ε-sample of S, no point of S is farther than ε from L ⊆ (L). Conversely, every point of (L) belongs to some Delaunay edge circumscribed by a Delaunay ball centered on S. This ball has a radius of at most ε, since L is an ε-sample of S. Thus, no point of (L) is farther than ε from S. This proves that (S, (L)) ≤ ε.
Let us now show that S and (L) are homeomorphic. Let [u, v] be an edge of (L). Let B(c, r) be a Delaunay ball centered on S that circumscribes [u, v]. Since L is an ε-sample of S, we have r ≤ ε < lrk(S). Therefore, S ∩ B(c, r) is a topological arc whose endpoints are u and v, by Lemma 2.8. Moreover, S intersects ∂B(c, r) only in u and v. Thus, u and v are consecutive points of L on S.
Assume conversely that u and v are two points of L consecutive on S. Let γ be the elementary1 arc of S that joins u and v. Let l be the bisector line of [u, v]. Since l divides ℝ2 into two regions, one of which contains u while the other contains v, γ intersects l. Let c be a point of intersection, and let r = d(c, L). If the circle ∂B(c, r) passes through u and v, then B(c, r) is a Delaunay ball and hence [u, v] belongs to (L). Otherwise, ∂B(c, r) passes through some other point t ∈ L. Since u and v are consecutive along S, t does not belong to γ. Hence, S ∩ B(c, r) contains a piece of γ (since c ∈ γ) and also a piece of S\γ, and these pieces are disjoint, since B(c, r) does not contain u nor v. As a result, S ∩ B(c, r) is disconnected, which implies that r > lrk(S), by Lemma 2.8. Now, since L is an ε-sample of S, we have r ≤ ε < lrk(S), which contradicts the above statement. Therefore, [u, v] belongs to (L).
It follows from the last two paragraphs that there is a bijection between the elementary arcs of S and the edges of (L). For any edge e = [u, v] of (L), let he be a homeomorphism from e to the elementary arc of S joining u and v, such that he(u) = u and he(v) = v. Let h be the map defined by: ∀p ∈ (L), h(p) = he(p), where e is any edge of (L) containing p. Since the edges of (L) have pairwise-disjoint relative interiors, and since the he coincide at vertices (they leave the vertices unchanged), h(p) does not depend on the choice of the edge e of (L) that contains p. It follows that h is a well-defined and continuous function from (L) to S. Moreover, since the he are bijective, and since there is a bijection between the edges of (L) and the elementary arcs of S, h is bijective. In addition, the inverse of h is continuous, since (L) is compact. It follows that h is a homeomorphism from(L) to S.
3 Structural Results
In this section, we highlight the relationship between the witness complex and the restricted Delaunay triangulation in 2d and in 3d. Let S be a k-Lipschitz manifold, i.e., either a k-Lipschitz curve in the plane (Sect. 3.1) or a k-Lipschitz surface in 3d (Sect. 3.2), for some constant k ≥ 0. For convenience, we define θ = arctan k ∈ [0, π/2[. Let W be a δ-noisy δ-sample of S and L ⊂ W an ε-sparse ε-sample of W. The constants δ and ε will be explicited later on. Clearly, L is a (δ + ε)-sample of S.
For the sake of simplicity, we assume for now that the points of L belong to S, i.e., that L is a noise-free sample of S. We will see in Sect. 3.3 that this condition can actually be removed, since whenever L is a δ-noisy ε-sparse ε-sample of a k-Lipschitz surface S, there exists some nearby and isotopic k′-Lipschitz surface S′ with k′ = O(k) and lrk′(S′) = Ω(lrk(S)) such that the points of L lie on S′ (Theorem 3.16).
Our assumption that L is a sparse point set may look a bit restrictive at first sight. However, in our application the set of landmarks will not be given as input and will be made sparse by construction—see Sect. 4.
3.1 The Planar Case
Theorem 3.1
Assume that and that . If ε satisfies , then (L) coincides with (L).
The lower bound on ε means that the set W of witnesses must be sufficiently dense2 compared to the set L of landmarks, for the simplices of (L) to be witnessed. An illustration is given in Fig. 2, which shows that (L) contains (L) when L is sparse (left picture), whereas when L = W (ε = 0), (L) coincides with the nearest neighbor graph of L, which has nothing to do with (L) (right picture). The upper bound on ε ensures that the set L of landmarks is sufficiently dense, so that the nice properties of (L) stated in Sect. 2 hold and that classical local arguments can be applied to show that (L) is included in (L).
To prove the theorem, we will need the following technical result:
Lemma 3.2
Assume that . Then, every Voronoi vertex lies at least away from L.
Proof
Let c be a Voronoi vertex, and let (u, v, w) be its dual Delaunay triangle. Since L ⊂ S, the points u, v, w belong to S. Let r = d(c, u). Assume for a contradiction that . Then, (u, v, w) is included in the ball B(u, 2r) ⊆ B(u, lrk(S)), and thus lines (u, v), (u, w), and (v, w) form angles of at most θ with Tk(u). It follows that each inner angle of triangle (u, v, w) is smaller than 2θ or larger than π − 2θ. Since , the larger inner angle of the triangle is at least π − 2θ, hence the radius-edge ratio of (u, v, w) is at least . As a consequence, we have , since the lengths of the edges of (u, v, w) are at least ε (recall that L is ε-sparse). This contradicts the assumption that and thereby concludes the proof of the lemma.
We will now prove Theorem 3.1 in two steps: first, we will show that (L) is included in (L) (Lemma 3.3), then we will show that (L) is included in (L) (Lemma 3.4).
Lemma 3.3
Assume that and that . If ε satisfies , then (L) is included in (L) and has no simplex of dimension two or more.
Proof
Let e = [u, v] be an edge of (L). By the definition of (L), the dual Voronoi edge of e intersects S at some point c. Let r = d(c, u) = d(c, v) = d(c, L), which is at most ε + δ, since L is a (δ + ε)-sample of S. Since W is a δ-sample of S, there is some w ∈ W at distance at most δ from c. Then, u and v are both included in B(w, ε + 2δ).
Let p be any point of L\{u, v}. We will prove that p ∉ B(w, ε + 2δ), which means that w witnesses e. Consider the portion of S that lies in B(c, r). Since r ≤ ε + δ < lrk(S), we know from Lemma 2.8 that S ∩ B(c, r) is a topological arc whose endpoints are u, v and whose orthogonal projection onto Tk(c) is the line segment [ū, v̄], where ū, v̄ are the orthogonal projections of u, v. If p does not belong to B(c, lrk(S)), then it does not belong to B(w, ε + 2δ) either, since B(w, ε + 2δ) ⊂ B(c, ε + 3δ), which by hypothesis is included in B(c, lrk(S)). Otherwise, since p ∈ L\{u, v}, S ∩ B(c, r) contains c but not p. Therefore, p̄ (the orthogonal projection of p onto Tk(c)) does not belong to [ū, v̄], because the projection from S ∩ B(c, lrk(S)) to Tk(c) is one-to-one. As a consequence, d(c, p) is at least d(c, p̄) ≥ d(c, {ū, v̄}) + d(p̄, {ū, v̄}). Since L is ε-sparse, we have d(p, u) ≥ ε, d(p, v) ≥ ε, and . Moreover, since S ∩ B(c, lrk(S)) is the graph of a k-Lipschitz univariate function defined over Tk(c), we have d(p̄, ū) ≥ d(p, u) cos θ, d(p̄, v̄) ≥ d(p, v) cos θ, d(c, ū) ≥ d(c, u) cos θ, and d(c, v̄) ≥ d(c, v) cos θ. As a result,
This expression is greater than ε + 3δ, since , by hypothesis. It follows that p is farther than ε + 3δ from c and hence farther than ε + 2δ from w. Thus, w witnesses [u, v]. Similarly, every other edge of (L) is witnessed by some point of W. Since L ⊆ W, the vertices of (L) witness themselves, hence the 1-skeleton of (L) is included in (L).
Let us now focus on higher-dimensional simplices. Since L is a (δ + ε)-sample of S with by hypothesis, all the points of S lie within distance of L. Therefore, S cannot contain any Voronoi vertex, by Lemma 3.2. This means that (L) has no triangle. As a consequence, (L) has no simplex of dimension two or more, and therefore it is equal to its 1-skeleton, which is included in (L).
Lemma 3.4
Assume that and that . If ε satisfies , then (L) is included in (L) and has no simplex of dimension two or more.
Proof
Let v be a vertex of (L). By assumption, we have v ∈ L ⊂ S, therefore the Voronoi cell of v intersects S, which implies that v is a vertex of (L). Let now [u, v] be an edge of (L), and let w ∈ W be a witness of [u, v]. We assume without loss of generality that d(w, u) ≤ d(w, v).
Claim 3.4.1
d(w, u) ≤ d(w, v) ≤ 2ε + 3δ.
Proof
Let w̄ be a point of S closest to w. Since W is a δ-noisy sample of S, we have d(w, w̄) ≤ δ. It follows that d(w̄, u) ≤ δ + ε < lrk(S). Since S ∩ B(w̄, lrk(S)) is the graph of a k-Lipschitz univariate function defined over Tk(w̄), u belongs to the double wedge K of apex w̄, of axis Tk(w̄), and of half-angle θ. Let Ku be the wedge of K that contains u (if u = w̄, then take either wedge of K for Ku). Since , for any point p ∈ K\Ku, the point of Ku closest to p is w̄. In particular, given any r ∈]δ + ε, lrk(S)[, every point p of S ∩ ∂B(w̄, r)\Ku satisfies d(p, u) ≥ d(p, w̄) = r. If v does not belong to B(w̄, 2r), then d(p, L) ≥ r > δ + ε, which contradicts the fact that L is a (δ + ε)-sample of S. Since this is true for all r ∈ ]δ + ε, lrk(S)[, v belongs to the ball B(w̄, 2(δ + ε)), which implies that d(w, v) ≤ 3δ + 2ε, since d(w, w̄) ≤ δ.
Consider the set of balls centered on the line segment [w, v] and whose bounding spheres pass through v. Since B(w, d(w, v)) contains u, one of these balls (called B) is such that ∂B contains both u and v. Clearly, B ⊆ B(w, d(w, v)). Since w witnesses [u, v], the interior of B(w, d(w, v)) cannot contain any point of L other than u, thus no point of L lies in the interior of B. Therefore, B is a Delaunay ball. Let c be its center. It lies on the Voronoi edge e dual to [u, v]. Moreover, its distance to L is at most d(w, v). By Claim 3.4.1, we have d(w, v) ≤ 2ε + 3δ, which, according to the hypothesis of the lemma, is less than . Hence, .
Claim 3.4.2
If a Voronoi edge contains a point closer to L than , then this edge intersects S.
Proof
Let e be a Voronoi edge containing a point c closer to L than . Let [u, v] be the Delaunay edge dual to e. We have d(c, u) = d(c, v) = d(c, L) < r. It follows that d(u, v) ≤ 2r. Since 2r < lrk(S), S ∩ B(u, 2r) is the graph of a k-Lipschitz univariate function defined over Tk(u). As a consequence, S ∩ B(u, 2r) lies outside the double wedge K(u) of apex u, of axis aligned with nk(u), and of half-angle . Moreover, by Lemma 2.8, S ∩ B(u, 2r) is a topological arc whose endpoints lie on the circle ∂B(u, 2r). Since c lies in B(u, r), it can be proved that S ∩ B(u, 2r) intersects any line3 included in the double wedge K(c) of apex c, of axis aligned with nk(u), and of half-angle θ: a proof of this fact is given in Claim 6.6.3 of [8] for the 3d case, and it holds the same in 2d. Now, since v lies outside K(u), the angle between nk(u) and the line l supporting e is at most θ, which means that l is included in K(c) and thus intersects S inside B(u, 2r). Finally, we assumed that e intersects B(u, 2r), while Lemma 3.2 states that the vertices of e lie outside of B(u, 2r). Hence, l ∩ B(u, 2r) = e ∩ B(u, 2r), and therefore e intersects S.
It follows from this claim that e intersects S. Therefore, [u, v] is an edge of (L). As a result, the 1-skeleton of (L) is included in (L). Let us now show that (L) has no simplex of dimension two or more. Recall that a simplex σ belongs to (L) only if all its faces belong to (L). Therefore, it suffices to prove that (L) has no triangle.
Claim 3.4.3
For any triangle t of (L), at least one edge of t does not belong to (L).
Proof
Let (u, v, w) be a triangle of (L). Assume for a contradiction that edges [u, v], [v, w], and [u, w] belong to (L). Since L is a (δ + ε)-sample of S, the three edges are circumscribed by Delaunay balls of radius at most δ + ε. It follows that the triangle (u, v, w) is included in B(v, 2(δ + ε)). Let c be the circumcenter of this triangle. Since c is a Voronoi vertex, Lemma 3.2 states that , which by assumption is greater than 2(ε + δ). Therefore, c does not belong to B(v, 2(ε + δ)), and hence it does not belong to triangle (u, v, w) either. This means that c is not a local maximum of the distance to L. As a consequence, there is a Voronoi edge e incident to c such that d(x, L) increases as point x moves away from c along e. Since the local maxima of the distance to L are Voronoi vertices, d(x, L) keeps increasing until x reaches the other vertex of e. Thus, every point of e is at least d(c, L) away from L with d(c, L) > 2(δ + ε). This implies that e cannot intersect S, because otherwise some point of e would be at most δ + ε away from L (recall that L is a (δ + ε)-sample of S). Now, the Delaunay edge dual to e is an edge of (u, v, w). Therefore, at least one edge of (u, v, w) does not belong to (L), which contradicts our assumption.
Since (L) is included in (L), and since its edges belong to (L), any triangle of (L) is a Delaunay triangle whose edges belong to (L). Hence, by Claim 3.4.3, (L) has no triangle, which concludes the proof of the lemma.
3.2 The 3d Case
Unlike in the planar case, the witness complex and the restricted Delaunay triangulation of points sampled from a surface in 3d may not always coincide, even in situations where the sets of witnesses and landmarks satisfy strong sampling conditions. The reason is that, when a tetrahedron t of (L) has almost cocircular vertices, the chance for any of the diagonal edges of t to be witnessed by a point of W is small—such a tetrahedron is called a sliver in the literature [35]. In order to give an intuition of this fact, let us assume for simplicity that the surface is flat and that the vertices of t are cocircular, as in Fig. 3 (left). The order-two Voronoi diagram of the vertices is then degenerate, the Voronoi cells of the diagonal edges being reduced to a single point p that lies at the intersection of the edges of the diagram. Therefore, any diagonal edge can be witnessed only by p, which means that the probability for any triangle of the quadrangle to be witnessed when W is finite is zero. As a result, holes appear with probability one in the witness complex, as illustrated in Fig. 4 (left).
When the vertices of tetrahedron t are almost-cocircular, as in Fig. 3 (right), the order-two Voronoi cell of one diagonal edge is empty, while the cell of the other diagonal edge is arbitrarily small. Thus, the probability for any triangle of the quadrangle to be witnessed when W is finite is also arbitrarily small. Although it is always possible to perturbate the point set L so that the points are in general position, guaranteeing that the order-two Voronoi cells of the edges of (L) are sufficiently large requires large perturbations, which are not tractable in practice, since the underlying surface S is unknown.
3.2.1 The ν-witness Complex
Our approach for dealing with the above issue consists in relaxing the definition of the witness complex, so that the latter includes the restricted Delaunay triangulation. This requires to modify the concept of witness:
Definition 3.5
Given an integer m, a point w ∈ W, and a simplex σ = [p0, …, pl] with vertices in L, w m-witnesses σ if all the d(w, pi) are among the m smallest values of the set {d(w, q), q ∈ L}.
Observe that, in the case where m ≤ l, some vertices of σ must be equidistant to w for w to m-witness σ. In particular, if m = 1, then all the points of σ must be equidistant to w, which means that w is a strong witness of σ, or equivalently, that σ is a Delaunay simplex. If m = 0, then no point w ∈ W can m-witness σ. In [22], the authors use m-witnesses only for edges. More generally, we use them for simplices of all dimensions:
Definition 3.6
Given a countable sequence ν of integers, the ν-witness complex of L, or for short, is the maximum abstract simplicial complex with vertices in L such that each i-face is νi-witnessed by some point of W.
Since the simplices of have their vertices in L, their dimension is at most |L| − 1. Hence, in the sequence of integers, only ν0 through ν|L|−1 are used. There is a strong relationship between (L) and : if νi ≥ i + 1 ∀i, then contains (L); in contrast, if νi ≤ i + 1 ∀i, then is included in (L); thus, whenever νi = i + 1 ∀i. In addition, if νi = 0 for some i, then the i-skeleton of is empty, since a simplex cannot be 0-witnessed, and the dimension of is then at most i − 1.
Theorem 3.7
Assume that and that . If ε satisfies , then, for any sequence ν of integers such that ν0 ≥ 1, ν1 ≥ 6, and ν2 ≥ 6, (L) is included in .
Proof
Since the vertices of (L) belong to L, which is included in W, they witness themselves and thus belong to . In addition, (L) contains no tetrahedron generically.
Let σ be a simplex (edge or triangle) of (L), and let B(c, r) be a Delaunay ball centered on S and circumscribing σ. Since W is a δ-sample of S, there is a point w ∈ W at distance at most δ from c. Then, σ lies in the ball B(w, r + δ), which is included in B(c, r + 2δ).
Claim 3.7.1
The ball B(c, r + 2δ) contains at most six points of L.
Proof
Since L is a (δ + ε)-sample of S, the radius r of the surface Delaunay ball is at most δ + ε. Therefore, r + 2δ ≤ ε + 3δ, which is less than lrk(S) according to the hypothesis of Theorem 3.7. It follows that S ∩ B(c, r + 2δ) is the graph of a k-Lipschitz bivariate function defined over the plane Tk(c).
Let p1, …, pl be the points of L ∩ B(c, r + 2δ). We call p̄1, …, p̄l their orthogonal projections onto Tk(c). Since L is ε-sparse, the pi are at least ε away from one another. And since they belong to S ∩ B(c, lrk(S)), which is the graph of a k-Lipschitz bivariate function defined over the plane Tk(c), their projections p̄i are at least ε cos θ away from one another. Moreover, since B(c, r) is a Delaunay ball, the pi are at least r away from c, hence the p̄i are at least r cos θ away from c.
The rest of the proof depends on whether r ≥ ε or r < ε. In fact, the overall ideas are the same, but some technical details differ.
-
If r ≥ ε, then, inside Tk(c), c and the p̄i are centers of pairwise-disjoint open disks of radius . Let Dc, D1, …, Dl denote these disks. Since the pi belong to B(c, r + 2δ), the p̄i belong to the disk D(c, r + 2δ). Therefore, Dc, D1, …, Dl form a congruent packing of the disk . Now, according to the hypotheses of the theorem, we have:
Hence, by a classical result on congruent packings of disks [27, 33], there are at most seven disks of radius packed in . The fact that Dc is one of them implies that l ≤ 6, which proves the claim in the case where r ≥ ε.
-
If r < ε, then c and the p̄i are centers of pairwise-disjoint open disks of radius . Let Dc, D1, …, Dl denote these disks. Since the belong to B(c, r + 2δ), Dc, D1, …, Dl are included in . Now, B(c, r) is a Delaunay ball, hence its bounding sphere contains at least two points of L, which implies that . Moreover, the hypotheses of the theorem state that , which is at most . Therefore, Dc, D1, …, Dl form a congruent packing of a disk of radius
It follows, by the same result as above on congruent packings of disks, that l ≤ 6, which proves the claim in the case where r < ε.
The claim implies that the vertices of σ are among the six nearest neighbors of w. Since this is true for any edge or triangle of (L), and since the vertices of (L) belong to contains all the edges and triangles of (L). This ends the proof of the theorem.
The next theorem guarantees that the simplices of are not too large as far as the νi remain bounded. It follows that the size of is linear in |L|, since L is sparse. This property can be generalized to higher dimensions, at the price of an exponential growth of the constant factor. This motivates the use of the witness complex instead of the Delaunay triangulation.
Theorem 3.8
Assume that δ, ε satisfy . Then, for any point w ∈ W, the distance between w and its sixth nearest neighbor among the points of L is at most . As a consequence, for any sequence ν of integers such that ν1 ≤ 6, the total number of simplices of is at most , which is linear with respect to |L| as far as θ is fixed and δ is within a constant factor of ε.
Proof
Let w ∈ W, and let w̄ be a point of S closest to w. Since W is a δ-noisy sample of S, we have d(w, w̄) ≤ δ. We call p1, …, pl the points of L that lie in , and p̄1, …, p̄l their orthogonal projections onto the plane Tk(w̄). We will prove that l ≥ 6.
Since L is a (δ + ε)-sample of S, the balls Bi = B(pi, δ + ε) cover (observe that, among the balls of radius δ + ε centered at the points of L, only the Bi intersect ). It follows that, inside Tk(w̄), the disks Di = D(p̄i, δ + ε) cover the orthogonal projection of . Now, according to the hypothesis of the lemma, we have . Thus, by Lemma 2.7, is a topological disk whose orthogonal projection onto Tk(w̄) contains the projection D of the intersection of with the cone of apex w̄, of axis aligned with nk(w̄), and of half-angle . Therefore, the Di cover D, which is a disk of center w̄ and radius . Thus, the number of disks Di is at least
It follows that the number of points of L that lie in is at least 6. As a result, the distance from w to its sixth nearest landmark is at most .
Let us now bound the size of . Let p be a point of L. From the above paragraph we deduce that the edges of incident to p are included in balls of radii at most . Hence, all edges belong to a common ball of center p and radius , which is equal to . The neighboring vertices q1, …, ql of p in belong to B(p, r) as well. Now, since the points of L are farther than ε from one another, the qi are centers of pairwise-disjoint balls of radius , hence their number l is at most . Since every simplex of incident to p is uniquely defined as a subset of {q1, …, ql}, the number of simplices of incident to p is at most 2l, which gives the result.
3.2.2 Manifold Extraction
It follows from Theorem 3.7 that contains (L), but Fig. 4 (center)4 shows that is not restricted to (L) and contains additional simplices that are small enough to be ν-witnessed. Nevertheless, it is possible to extract from a simplicial surface Ŝ isotopic to S and at Hausdorff distance O(ε + δ) of S. The extraction procedure takes a number ϱ as parameter and proceeds as follows:
-
Since the goal is to extract a 2-manifold, only the 2-skeleton of is considered. Since it may not be an embedded complex, we intersect it with (L). The result is a pure 2-dimensional subcomplex of (L).
To guarantee that the output simplicial surface has no skinny triangle, we delete from all the triangles whose radius-edge ratios are greater than ϱ.
-
We greedily remove from all the triangles incident to sharp edges. An edge is sharp if all its incident triangles in lie in a small wedge of angle at most . This definition applies in particular to edges that are incident to one single triangle.
By a depth-first walk in the dual graph of the remaining part of , we extract the outer boundary of .
Observe that steps 3 and 4 correspond to the manifold extraction procedure of [1–3]. As argued in these papers, the outcome is a simplicial complex Ŝ whose dihedral angles are greater than . Moreover, thanks to step 2, the radius-edge ratios of the facets of Ŝ are at most ϱ. However, two issues arise: first, by greedily removing non-Delaunay triangles or triangles with sharp edges or large radius-edge ratios from , steps 1 through 3 might end up with an empty complex . As a result, Ŝ may be empty. Second, the outer boundary of might not be an embedded surface, since it may contain multiple vertices or edges. By proceeding with a depth-first search on the dual graph of , step 4 duplicates multiple vertices and edges, so that the resulting complex Ŝ is a simplicial surface whose immersion in ℝ3 coincides with the outer boundary of .
Theorem 3.9
Let . Assume that and that . If ε satisfies , then, for any sequence ν of integers such that ν0 ≥ 1 and ν1 = ν2 = 6, the simplicial complex Ŝ extracted from with parameter ϱ is an embedded surface isotopic to S and at Hausdorff distance at most from S.
The proof of the theorem follows roughly the same scheme as in [8] and it uses material that comes mainly from that paper. Here is a short overview:
First, we show that the triangles of (L) are not skinny and make large dihedral angles. This fact, combined with Theorem 3.7, implies that complex contains (L) after step 3 above. We deduce that Ŝ is not empty, since (L) is a manifold without boundary, by Theorem 2.6.
Second, we use Theorem 3.3(ii) of [8] to show that Ŝ is a Lipschitz surface, which implies in particular that it is an embedded surface.
Third, we use Proposition 6.4 of [8] to bound the Hausdorff distance (Ŝ, S) between Ŝ and S. We show that (Ŝ, S) is small compared to the Lipschitz radii of Ŝ and S.
Finally, we apply Theorem 6.2 of [11] to show that Ŝ and S are isotopic.
The rest of Sect. 3.2 is devoted to the details of the proof of Theorem 3.9 and it can therefore be skipped in a first reading. The following results from [8] will be useful:
Lemma 3.10 (Triangle Normal)
Let S be a k-Lipschitz surface, and θ = arctan k. For any p ∈ S and for any triangle f = (u, v, w) such that u, v, w ∈ S ∩ B(p, lrk (S)) and that the radius-edge ratio of f is at most ϱ, the angle between nk (p) and the line orthogonal to the plane aff(u, v, w) is at most arcsin(2ϱ sin θ).
Lemma 3.11 (Normal Variation)
Let S be a k-Lipschitz surface, and θ = arctan k. ∀p, q ∈ S s.t. d(p, q) < lrk (p), (nk (p), nk (q)) ≤ 2 θ.
Moreover, the hypotheses of Theorem 3.9 imply that the following conditions are satisfied:
Ŝ is not Empty
Lemma 3.12
(L) is a 2-manifold with obtuse dihedral angles, isotopic to S, at Hausdorff distance δ + ε from S, and whose triangles have radius-edge ratios of at most ϱ.
Proof
Recall that L is a (δ + ε)-sample of S with , by C2. Therefore, hypothesis H1 of Theorem 2.6 is satisfied with ε replaced by δ + ε. Let now f be a triangle of (L), and let B(c, r) be a surface Delaunay ball that circumscribes f. Since L is a (δ + ε)-sample of S, we have r ≤ δ + ε, which implies that the circumradius of f is bounded by δ + ε. Moreover, since L is ε-sparse, the length of the shortest edge of f is at least ε. Therefore, the radius-edge ratio of f is at most , which by C1 is less than . This property holds for every triangle f of (L). Since in addition we assumed that , we have , and thus hypothesis H2 of Theorem 2.6 is satisfied as well. It follows then from Theorem 2.6 that (L) is a 2-manifold isotopic to S and at Hausdorff distance δ + ε of S. Moreover, the oriented normals of (L) approximate the k-Lipschitz normals of S within an angle of arcsin(2ϱ sin θ). This means that, for any triangles f1 and f2 of (L) that share an edge, for any common vertex v, the normals n(f1) and n(f2) make angles of at most arcsin(2ϱ sin θ) with the k-Lipschitz normal nk (v). Since , arcsin(2ϱ sin θ) is less than , hence the dihedral angle between f1 and f2 is greater than .
Let us now prove that the closed 2-manifold (L) is included in complex upon termination of step 3 of the extraction process. This will imply that Ŝ is not empty, since it coincides with the outer boundary of , which encloses (L). According to Theorem 3.7, (L) is included in initially. By definition, (L) is a subcomplex of (L), and by Lemma 3.12 it is a 2-manifold (and thus a pure 2-dimensional complex). Thus, (L) is included in upon termination of step 1 of the extraction process. Still by Lemma 3.12, the radius-edge ratios of the triangles of (L) are at most ϱ, and (L) has obtuse dihedral angles. As a consequence, (L) remains in throughout steps 2 and 3.
Ŝ is a Lipschitz Surface
As argued in Sect. 3.2.2, the subcomplex Ŝ extracted from is a combinatorial surface, but its immersion in ℝ3 may not be an embedding. However, it coincides with the outer boundary of complex , thus, by moving the vertices of Ŝ slightly in ℝ3, one can easily turn the immersion into an embedding. Therefore, up to an infinitesimal perturbation of the vertices of Ŝ, we consider from now on that Ŝ is an embedded surface. This is needed for the sake of our proofs, but we will see after Lemma 3.15 that actually no perturbation is needed to embed Ŝ.
C2 and Theorem 3.8 imply that any triangle f of is included in a ball of radius . Since the radius-edge ratio of f is at most ϱ, a quick computation shows that the circumradius of f is at most , which by C2 is less than .
Orientation Convention 3.13
We orient every triangle f of Ŝ such that n(f) · nk (v) ≥ 0 for each vertex v of f.
The existence of such an orientation follows from C2 and Lemmas 3.10 and 3.11. We will now prove that this convention induces a valid orientation of Ŝ.
Lemma 3.14
The Orientation Convention 3.13 induces a valid orientation of Ŝ.
Proof
It suffices to prove that the orientation of the triangles of Ŝ is consistent across the edges of Ŝ, i.e., that the orientations of any two adjacent triangles of Ŝ induce opposite orientations of their common edge. Let f and f′ be two triangles of Ŝ with a common edge e. Let v be a vertex of e. We call fv and the respective orthogonal projections of f and f′ onto the plane Tk (v). Inside Tk (v), we endow triangles fv and with the same orientations as f and f′ respectively. The Orientation Convention 3.13 states that n(f ) · nk (v) and n(f′) · nk (v) are both positive, hence so are n(fv ) · nk (v) and . Now, by the triangle normal Lemma 3.10, the planes aff(f ) and aff(f′) make angles of at most with Tk (v). Since the dihedral angle between f and f′ is at least , fv and lie on either sides of the projection of e onto Tk (v). It follows that the orientations of fv and induce opposite orientations of their common edge. Similarly, the orientations of f and f′ induce opposite orientations of e. Since this is true for any two triangles of Ŝ with a common edge, Ŝ is consistently oriented by the orientation convention.
Lemma 3.15
Ŝ is a k′-Lipschitz surface with .
Proof
Let . For any point p ∈ Ŝ and any triangle f of Ŝ intersecting B(p, lrk (S) − 3d), the circumradius of f is at most d, hence f is included in B(p, lrk (S) − d). Let fp be a triangle of Ŝ containing p, and let v be a vertex of fp closest to p. We have d(p, v) ≤ d, hence f is included in B(v, lrk (S)). Since the radius-edge ratio of f is at most ϱ, the triangle normal Lemma 3.10 states that (n(f ), nk (v)) ≤ arcsin(2ϱ sin θ). Since this is true for any point p ∈ Ŝ and any triangle f ∈ Ŝ intersecting B(p, lrk (S) − 3d), Theorem 3.3(ii) of [8] states that Ŝ is a k′-Lipschitz surface with k′ = tan(arcsin(2ϱ sin θ)) and lrk′(Ŝ) ≥ lrk (S) − 3d.
The fact that Ŝ is a Lipschitz surface implies that any infinitesimal perturbation of its vertices yields another Lipschitz (and thus embedded) surface. As a consequence, no perturbation of the vertices of Ŝ is in fact needed to embed Ŝ.
Hausdorff Distance (Ŝ, S)
Let . To apply Proposition 6.4 of [8] and bound (Ŝ, S), we need to check that the following conditions are satisfied:
The vertices of Ŝ lie on S: this is true, since Ŝ is a subcomplex of and since L ⊂ S, by assumption.
The circumradii of the triangles of Ŝ are at most d with : this is ensured by C2 and Theorem 3.8.
For any triangle f of Ŝ and any vertex v of f, the angle between n(f ) and nk (v) is less than : this is ensured by the triangle normal Lemma 3.10 and by the fact that .
Ŝ has vertices on all the connected components of S: this is true because Ŝ encloses complex , which contains the closed surface (L) that has vertices on all the connected components of S (by Lemma 3.12), and because the triangles of are too small to connect distinct connected components of S.
It follows then from Proposition 6.4 of [8] that
(1) |
Ŝ is isotopic to S
By (1), we have , where . By C2, this quantity is less than , which, by Lemma 3.15, is at most . As a consequence, (Ŝ, S) is less than half the so-called weak feature sizes of ℝ3\Ŝ and of ℝ3\S, by Theorem 3.8 of [8]. This implies that Ŝ and S are isotopic, by Theorem 6.2 of [11].
3.3 Dealing with Noisy Data
Our previous results hold as far as the set L of landmarks lies on the surface S. This property can be ensured by assuming that the set W of witnesses, which contains L, is noise-free. However, Theorem 3.16 below shows that the property can still be ensured when W, L are noisy samples of S. In the sequel, λ0 ≈ 0.078 denotes the smallest positive root of the polynomial 64λ6 + 832λ5 + 1008λ4 − 160λ3 − 4λ2 − 12λ + 1. Moreover, given any , λ (θ) denotes the smallest positive root of 16 (4 sin2 θ − 1)λ6 + 32λ5 − 12(2 + 3 sin2 θ)λ4 + 8λ3 + (4 sin2 θ + 63)λ2 + 64λ − 16.
Theorem 3.16
Let S be a k-Lipschitz surface and L a δ-noisy ε-sparse (δ + ε)-sample of S. Assume that δ, ε satisfy the following conditions, where θ = arctan k:
Then, there exists a k′-Lipschitz surface S′, passing through the points of L, isotopic to S, and at Hausdorff distance of S at most ε + 3δ, such that:
If the set W of witnesses is a δ-noisy δ-sample of a k-Lipschitz surface S for some sufficiently small δ (as compared to lrk (S)), then Theorem 3.16 ensures that there exists an interval of values of ε such that any ε-sparse ε-sample L of W lies on a k′-Lipschitz surface S′ with and lrk (S′) = Ω(lrk (S)). Theorem 3.9 can then be applied to S′, W, L, provided that k, ε, and are small enough to meet its hypothesis. Then, because S′ is isotopic to S and close to it for the Hausdorff distance, the conclusion of Theorem 3.9 holds for S, W, L as well, with a slightly worse bound on the Hausdorff distance. There also exists a version of Theorem 3.16 for Lipschitz curves, which can be combined with the structural results of Sect. 3.1. The proof is roughly the same.
The rest of Sect. 3.3 is devoted to the proof of Theorem 3.16, which builds an isotopy φ: [0, 1] × S → ℝ3 such that S′ = φ(1, S) is a k′-Lipschitz surface passing through the points of L with and lrk′(S′) = Ω(lrk (S)). Intuitively, since the points of L lie ε away from one another, with ε large compared to the amplitude δ of the noise, the surface S can be snapped onto the points of L without changing its normals too much. This can be easily seen on simple examples, such as for instance when S is the x-axis in ℝ2 (in this case, the snapped curve is the polygonal chain connecting the points of L in the order of their abscissae).
To build the isotopy φ, we first map the points of L to their nearest neighbors on S. If some point p ∈ L has two or more nearest neighbors on S, then we choose either of them. We get a new point set L̃ ⊂ S, together with a surjective map μ: L → L̃. The restricted Delaunay triangulation of L̃, (L̃), will play a prominent role in our construction.
Lemma 3.17
Under the hypotheses of Theorem 3.16, for any distinct points p, q of L, d(μ(p), μ(q)) ≥ ε − 2δ > 0.
Proof
Since L is δ-noisy, we have d(p, μ(p)) = d(p, S) ≤ δ and d(q, μ(q)) = d(q, S) ≤ δ. Moreover, since L is ε-sparse, we have d(p, q) ≥ ε. It follows by the triangle inequality that d(μ(p), μ(q)) ≥ ε − 2δ, which is positive, by N1.
It follows from this lemma that μ is one-to-one and hence bijective. Therefore, we can define a function φ̃: [0, 1] × L̃ → ℝ3 as follows:
We can then extend φ̃ to [0, 1] × (L̃) by linearity:
where λu, λv, λw are the barycentric coordinates of p in any triangle (u, v, w) of (L̃) containing p. If p belongs to several triangles, then φ̃(t, p) does not depend on the choice of the triangle, since (L̃) is an embedded simplicial complex. Moreover, φ̃ is a continuous function in variables (t, p).
Since L is a δ-noisy (ε + δ)-sample of S, L̃ is a noise-free (ε + 2δ)-sample of S with , by N2. Therefore, hypothesis H1 of Theorem 2.6 is satisfied. Moreover, by Lemma 3.17, L̃ is (ε − 2δ)-sparse, hence the radius-edge ratios of the triangles of (L̃) are at most , which by N1 is less than . It follows that hypothesis H2 is also satisfied, which implies that (L̃) is isotopic to S, by Theorem 2.6. This means that there is an isotopy I: [0, 1] × S → ℝ3 such that I (1, S) = (L̃). We define φ by applying I and φ̃ successively, at double speed:
This is the standard way of composing isotopies. In particular, φ is well defined, since I (1, p) ∈ (L̃) for all p ∈ S. To prove that φ is an isotopy, it suffices to show that φ̃ itself is an isotopy, which boils down to showing that φ̃(t, .) is one-to-one as a function of p for all t ∈ [0, 1], since we already know that φ̃ is continuous and since (L̃) is compact. We will use an intermediate result:
Lemma 3.18
Under the hypotheses of Theorem 3.16, the following assertions hold:
For any two vertices u, v of (L̃), d(u, v) ≥ ε − 2δ.
For any vertex v and any non-incident simplex (edge or triangle) σ of (L̃), the distance between v and σ is at least .
For any two disjoint edges e, e′ of (L̃), the distance between e and e′ is bounded from below by .
Proof
(i) is a direct consequence of the fact that L̃ is (ε − 2δ)-sparse.
Concerning (ii), it is proved in [8, Lemma 5.8] that, since assumptions H1–H2 of Theorem 2.6 are satisfied, (L̃) is a k̃-Lipschitz surface with k̃ = tan(arcsin(2ϱ̃ sin θ)) and lrk̃ ((L̃)) ≥ lrk (S) − 3(ε + 2δ). Let v be a vertex of (L̃), and σ a simplex (edge or triangle) of (L̃) that is not incident to v. If σ does not intersect B(v, lrk̃((L̃))), then its distance to v is at least lrk̃ ((L̃)) ≥ lrk (S) − 3(ε + 2δ), which by N2 is greater than . Otherwise, the point p ∈ σ closest to v lies inside the ball B(v, lrk̃ ((L̃))). Since (L̃) ∩ B(v, lrk̃ ((L̃))) coincides with the graph of a bivariate function defined over the k̃-Lipschitz support plane of (L̃) at v (called Tk̃(v), for short), the orthogonal projection p̄ of p onto Tk̃(v) lies outside Ū(v), the orthogonal projection of the umbrella U(v) of triangles of (L̃) incident to v. Since v lies in the interior of Ū(v), the line segment [v, p̄] intersects the boundary of Ū(v). Let q̄ be a point of intersection, and q the point of the boundary of U (v) that projects onto q̄. Inside the plane that contains v, p and p̄ (and hence also q and q̄), (L̃) ∩ B(v, lrk̃((L̃))) coincides with the graph of a k̃-Lipschitz univariate function defined over the line (v, p̄). Since5 k̃ < 1, the fact that q̄ ∈ [v, p̄] implies that d(v, q) ≤ d(v, p). Hence, d(v, p) is at least the distance between v and the boundary of U(v), which we must now bound from below. For any triangle (u, v, w) of (L̃) incident to v, the distance h from v to line (u, w), also known as the height of triangle (u, v, w), is given by , and it is a lower bound on the distance between v and edge [u, w]. According to (i), we have d(v, u) ≥ ε − 2δ. Moreover, since the radius-edge ratios of the triangles are at most , every inner angle of (u, v, w) is at least . Therefore, we have and . Since this is true for any triangle of (L̃) incident to v, the distance between v and the boundary of U(v) is at least , which proves (ii).
By the same argument, for any disjoint edges e, e′ of (L), and for any point p ∈ e, the distance from p to e′ is at least the distance from p to the boundary of U(e) = U(u) ∪ U(v), where u, v are the vertices of e. Therefore, the proof of (iii) reduces to finding a lower bound on the distance between e and the points of ∂U (e). Let q be the point of ∂U (e) whose orthogonal projection q̄ onto the k̃-Lipschitz support plane Tk̃(v) minimizes the distance to the orthogonal projection ē = [ū, v] of e. The distance from any point p ∈ ∂U (e) to e is at least the distance from its orthogonal projection p̄ to ē, which is bounded from below by d(q̄, ē). Moreover, we have d(q̄, ē) ≥ d(q, e) cos(arctan k̃), since U (e) ⊂ (L̃) ∩ B(v, lrk̃((L̃))), which coincides with the graph of a k̃-Lipschitz bivariate function defined over Tk̃(v). Therefore, the distance of any point of ∂U (e) to e is at least . We must find a lower bound on d(q, e). Let Σ ⊂ Tk̃(v) be the strip whose boundaries are the lines orthogonal to ē passing through ū and v. For any point p̄ ∉ Σ, the nearest neighbor of p̄ on ē is either ū or v. Hence, if q̄ ∉ Σ, then , by (ii). For any point p̄ ∈ Σ, the nearest neighbor of p̄ on ē is also its nearest neighbor on the line aff(ē). Hence, if q̄ ∈ Σ, then q̄ is either a vertex of ∂Ū (e) (meaning that q is a vertex of ∂U (e)) or a point of ∂Σ (meaning that the nearest neighbor of q̄ on ē is either ū or v). In both cases, we have , by (ii). This proves (iii).
Let t ∈ [0, 1]. Observe that, since L is a δ-noisy sample of S, φ̃(t, .) moves the points of L̃ by at most δ. It follows, by convexity,6 that every point of (L̃) is moved by at most δ. Using Lemma 3.18, we can prove that φ̃(t, .) is one-to-one:
For any simplex (vertex, edge, or triangle) σ of (L̃), the restriction of φ̃(t, .) to σ is one-to-one. Indeed, since φ̃(t, .) is linear on σ, its restriction to σ is one-to-one, provided that φ̃(t, σ ) has the same dimension as σ. This is clearly the case if σ is a vertex. If σ is an edge [u, v], then, since by N1 we have 2δ < ε − 2δ, φ̃(t, u) and φ̃(t, v) are distinct, by Lemma 3.18(i). If σ is a triangle (u, v, w), then we must show that φ̃(t, u), φ̃(t, v), and φ̃(t, w) are not collinear. Since every vertex of the triangle moves by at most δ, vertices u and v move by at most 2δ relative to w. Thus, each of them reduces the angle by at most , since the vertices are at least ε − 2δ away from one another initially. Recall that the radius-edge ratio of (u, v, w) is at most , hence angle is at least initially. It follows that does not vanish as u, v, w are moved by φ̃, since by N17 we have . Since this is true for any inner angle of (u, v, w), φ̃(t, (u, v, w)) is a nondegenerate triangle.
Since the restriction of φ̃(t, .) to any simplex of (L̃) is one-to-one, φ̃(t, .) itself is one-to-one provided that the images of any two disjoint simplices of (L̃) (which are simplices of same dimensions) are disjoint, and that the images of any two non-disjoint simplices of (L̃) have disjoint relative interiors. Assume for a contradiction that two disjoint (resp. non-disjoint) simplices σ1, σ2 of (L̃) have non-disjoint images (resp. images with non-disjoint relative interiors) through φ̃(t, .). Since σ1 ∩ σ2 = ∅ (resp. int(σ1) ∩ int(σ2) = ∅), and since φ̃ moves the points of (L̃) continuously at some time t′ ∈ [0, t], either φ̃(t′, v1) ∈ φ̃(t′, σ2) for some vertex v1 of σ1 non-incident to σ2, or φ̃(t′, v2) ∈ φ̃(t′, σ1) for some vertex v2 of σ2 non-incident to σ1, or φ̃(t′, e1) ∩ φ̃(t′, e2) ≠ ∅ for two disjoint edges e1 ∈ σ1 and e2 ∈ σ2. In all three cases, the two simplices involved (namely, v1 and σ2, or v2 and σ1, or e1 and e2) lie at most 2δ away from each other in (L̃), since φ̃(t, .) does not move the points of (L̃) by more than δ. This contradicts Lemma 3.18, since by N18 we have . Therefore, disjoint simplices of (L̃) have disjoint images through φ̃(t, .), and non-disjoint simplices of (L̃) have images through φ̃(t, .) with disjoint relative interiors, which implies that φ̃(t, .) is one-to-one.
It follows that φ̃ is an isotopy from (L̃) to S′ = φ̃(1, (L̃)). As a consequence, φ is an isotopy from S to S′. In addition, since L̃ is a noise-free (ε + 2δ)-sample of S, we have (S, (L̃)) ≤ ε + 2δ, by Theorem 5.4 of [8]. Moreover, since φ̃(1, .) moves the points of (L̃) by at most δ, we have ((L̃), S′) ≤ δ. As a result, the Hausdorff distance between S and S′ is at most ε + 3δ. For each oriented simplex σ = [v0, …, vl ] of (L̃), we set the orientation of simplex φ̃(1, σ ) to [φ̃(1, v0), …, φ̃(1, vl)]. Since (L̃) is an oriented surface and φ̃ is an isotopy from (L̃) to S′, we get a valid orientation of S′. We conclude the proof of Theorem 3.16 with the following lemma:
Lemma 3.19
Under the hypotheses of Theorem 3.16, S′ is a k′-Lipschitz surface, with and lrk′(S′) ≥ lrk (S) − (2ε + 7δ).
Proof
The proof is roughly the same as for Lemma 5.8 of [8]. Let f′ be a triangle of S′, and f̃ the triangle of (L̃) such that f′ = φ̃(1, f̃). Since L̃ is an (ε + 2δ)-sample of S, f̃ is circumscribed by a ball of radius at most ε + 2δ. And since φ̃(1, .) does not move the vertices of f by more than δ, f′ is included in a ball of radius at most ε + 3δ, although its circumradius might be much larger. Moreover, as shown above in the proof of isotopy, the radius-edge ratio of f′ is at most .
Let p′ be a point of S′, and p a point of S closest to p′. Since (S, (L̃)) ≤ ε + 2δ and ((L̃), S′) ≤ δ, we have d(p, p′) ≤ ε + 3δ. Let r = lrk (S) − (2ε + 7δ). For any triangle f′ = (u′, v′, w′) of S′ that intersects B(p′, r), f′ intersects B(p, r + ε + 3δ) and is therefore included in B(p, r + 2ε + 6δ). Let f̃ = (ũ, ṽ, w̃) be the triangle of (L̃) such that f′ = φ̃(1, f̃). Since φ̃(1, .) does not move the vertices of f̃ by more than δ, f̃ is included in B(p, r + 2ε + 7δ) = B(p, lrk (S)). Therefore, lines (ũ, ṽ), (ṽ, w̃), and (w̃, ũ) make angles of at least with the k-Lipschitz normal nk (p) of S at p. As a consequence,
Since L̃ is an (ε + 2δ)-sample of S, we have ||w̃ − ṽ|| ≤ 2ε + 4δ. Moreover, since L is ε-sparse, we have ||w′ − v′|| ≥ ε. It follows that the angle between nk (p) and line (v′, w′) is:
The same relation holds for lines (u′, v′) and (u′, w′) as well. Since the radius-edge ratio of f′ is at most ϱ′, the triangle normal Lemma 3.10 states that the angle between nk (p) and the oriented normal n(f′) of f′ is at most . Since this is true for any triangle of S′ that intersects B(p, r), Theorem 3.3(ii) of [8] states that S′ is a k′-Lipschitz surface with and lrk′(S′) ≥ r = lrk (S) − (2ε + 7δ).
4 Application to Reconstruction from Point Samples
4.1 Algorithm
The algorithm works in any metric space. It takes as input a finite point set W, identified as the set of witnesses, and an optional countable sequence ν of integers, whose default value is νi = i + 1 ∀i (which corresponds to ). The algorithm constructs a set L ⊆ W of landmarks iteratively, starting with L = ∅, and in the mean-time it maintains . At each iteration, the witness lying furthest away from L is inserted in L, and is updated as described below. The process stops when L = W. The output of the algorithm is either the one-parameter family of complexes built throughout the process, or simply the diagram of their Betti numbers computed on the fly using the persistence algorithm9 of [37]. With this diagram at hand, the user can determine the scale at which to process the data: it is then easy to generate the corresponding subset of landmarks (the points of W have been sorted according to their order of insertion in L) and to rebuild its witness complex.
4.2 Update of
Our strategy to update relies on the following observation: when a witness p is inserted in L, every simplex that appears in is incident to p, whereas every simplex that disappears from has a face that is no longer ν-witnessed because of the insertion of p in the set of landmarks. It follows that the ν-witnesses of all these simplices belong to the reverse κ-nearest witnesses10 of p, where κ = min{|L|, maxi νi }. Hence, can be updated, first by searching for the reverse κ-nearest witnesses of p, and then, for each witness w in the outcome, by searching for the κ nearest landmarks of w, to determine which simplices to insert or delete from . A number of dynamic data structures exist that can perform these queries efficiently—see [18] for a survey. Note however that κ can be as large as |W|, a case in which the above queries take linear time. Moreover, when νi ≥ |L| ∀i, coincides with the complete hypergraph of L and hence has an exponential size. Nevertheless, in Euclidean space ℝn, κ is more likely to be a constant depending (exponentially) on n, which reduces the size of to O(|L|), by Theorem 3.8. The total time spent by the algorithm to maintain is then O(|W|2), since any newly-created landmark has Θ(|W|) reverse κ-nearest witnesses (these can be detected naively by an exhaustive search on the set W), each of which witnesses a constant number of simplices (these can be found by maintaining the list of κ nearest landmarks of each witness). We conjecture that it should be possible to reduce the time complexity to O(|W| log |W|), under some sparseness condition on W.
4.3 2d and 3d Cases
We take ν = (1, 2, 3) in 2d and ν = (1, 6, 6, 4) in 3d, as prescribed by the theory. Moreover, we replace by its intersection with (L), noted . This makes sense because, (L) being a subset of (L), Theorems 3.1 and 3.9 hold the same if is replaced by . The advantage is that can be stored as a subcomplex of (L), which allows to speed-up the (reverse) nearest neighbors queries in practice. Another thing in 3d is that we also maintain the subcomplex Ŝ extracted from by the procedure of Sect. 3.2.2.
4.4 Theoretical Guarantees
Let L(i) denote the set L at the end of the ith iteration of the algorithm. We call ε(i) the minimum number such that L(i) is an ε(i)-sample of W. Since L(i) grows with i, ε(i) is a decreasing function of i. Moreover, we have the following:
Lemma 4.1
At any iteration i, L(i) is an ε(i)-sparse ε(i)-sample of W.
Proof
At each iteration j ≤ i of the algorithm, the witness p(j ) farthest from L(j − 1) is inserted in L(j − 1). Right before this insertion, L(j − 1) is an ε(j − 1)-sample of W. This means that the distance from p(j ) to L(j − 1) is ε(j − 1). Since L keeps growing during the process, we have ε(j ) ≥ ε(j + 1) ∀ j ≤ i. Therefore, every point inserted in L before or at iteration i is at least ε(i) away from L at the time of its insertion. This implies that L(i) is an ε(i)-sparse point sample.
Combining this lemma with the structural results of Sects. 2 and 3, we obtain a guarantee on the stability of the topological type of the witness complex during the course of the algorithm:
Theorem 4.2
Assume that the input W is a δ-noisy δ-sample of some k-Lipschitz curve (resp. surface) S in ℝ2 (resp. ℝ3). Then, (resp. Ŝ(i)) is isotopic to S and close to S for the Hausdorff distance whenever L(i) satisfies the hypotheses of Theorems 2.9, 3.1, and 3.16 (resp. 3.9 and 3.16), which eventually happens if δ and k are small enough.
Under mild assumptions on the input, the theorem guarantees that the topological type of (resp. Ŝ(i)) stabilizes for some time during the course of the algorithm and therefore that a plateau appears in the diagram of the Betti numbers of (resp. Ŝ(i)), showing the correct values. In practice, the user does not know exactly where the plateau should be located in the diagram, because δ, k, and lrk (S) are unknown. Nevertheless, our structural results give a lower bound on the length of the plateau, which is of order of (alrk (S) − bδ), where a, b are two constants. As a consequence, for sufficiently small δ, the plateau is long enough to be detected by the user or any statistical analysis performed in a post-processing step. In the case where W samples several manifolds (such as in the example of Fig. 1), Theorem 4.2 guarantees11 that several plateaus appear in the diagram of Betti numbers, each one showing a plausible reconstruction, depending on the scale at which the input data set W is processed. Once again, these guarantees hold as long as the input point set W is sufficiently dense compared to lrk (S). In particular, no sparseness condition on W is required, although S can be non-smooth and W can be noisy. This makes our reconstruction method more practical than previous work in this context [8, 24].
4.5 Experimental Results and Discussion
Figures 5 and 6 show the evolution of the Betti numbers of Ŝ(i) throughout the course of the algorithm on two different input point sets. The abscissa represents , which is an increasing function of i and gives an idea of the scale at which the input data is being processed. The first point set was generated using Chew’s algorithm on an algebraic surface commonly known as the tanglecube. The second point set is courtesy of the Stanford shape repository and was obtained from a 3d scanner.
Figure 5 shows three phases in the evolution of the Betti numbers. At first, their behavior is erratic, which means that the topology of Ŝ(i) keeps changing because ε(i) is not yet small enough compared to lrk (S). The top picture in the right column shows Ŝ(i) at some point during this phase. Then, ε(i) satisfies the hypothesis of Theorem 3.9 for a while, which implies that the Betti numbers stabilize to the right value and a plateau appears in the diagram—here, the surface is connected, of genus five, and without boundary, hence β0 = β2 = 1 and β1 = 10. The size of the plateau depends on the value of δ compared to lrk (S). The two middle pictures in the right column show Ŝ(i) at two different times during this phase. Finally, ε(i) becomes too small, and does not contain (L(i)) any longer. As a result, some holes appear in the complex, and Ŝ(i) is simply the boundary of a myriad of randomly agglomerated tetrahedra. An example is shown in the bottom-right corner of the image.
The same kind of phenomenon occurs in Fig. 6, where the plateau is smaller due to the fairly high value of δ. The top-right picture shows Ŝ(i) at some point on the plateau. Interestingly enough, the value of β1 on the plateau (β1 = 12) means that the genus of Ŝ(i) is six, which coincides with the genus of the scanned physical model but not with that of the mesh provided by the repository, which contains extra handles such as the one shown at the center of Fig. 6. The reason is that, due to the presence of noise and holes in the input point cloud, standard reconstruction algorithms fail at retrieving the topology of the original object because they consider the data at full scale only. In contrast, our algorithm performs reconstructions at various scales and generates plateaus whenever the topological type of the reconstruction is stable, which corresponds to plausible topological types of the original object. As an illustration, observe that a new plateau starts on the right-hand side of the main plateau, right before the data structure becomes unstable. This new plateau shows β1 = 14, which indicates that a new handle has been detected, as illustrated in the bottom-right corner of Fig. 6. Another example is shown in Fig. 1, where the diagram has two well-separated plateaus corresponding to two plausible reconstructions: a torus, and a simple closed curve drawn on that torus. To handle the change in dimension (shown on the right-hand side of the figure), we maintained for both ν = (1, 2, 3, 4) and ν = (1, 6, 6, 4) simultaneously and determined at each step the complex to keep according to their Betti number β2.
The definitive choice of the scale(s) at which to deal with the data is highly dependent on the application, and therefore it should be made by the user. We expect that statistical analysis on our diagrams would allow our algorithm to detect the plateaus and to suggest reasonable choices. Note however that not all the plateaus are guaranteed to be meaningful. Indeed, the fact that the homotopy type of the complex remains stable over a period of time does not imply that the complex itself is stable combinatorially. In the example of Fig. 7 for instance, the insertion of a new landmark creates a loop but at the same time destroys another loop in the complex, thereby keeping its Betti numbers unchanged, whereas the sets of generators of the homology groups of the complex do differ. Such events leading to fake plateaus in the diagram are likely to be rare and short, since they correspond to highly unstable phases of the course of the algorithm, where the sampling conditions are not satisfied. Nevertheless, according to the example of Fig. 7, they can occur, and the question of whether they can be detected and discarded automatically is still open.
5 Conclusion
We have introduced a new reconstruction method based on the use of the witness complex. This method uses inter-sample distances alone and can therefore be used in any metric space. Moreover, it stands in sharp contrast with previous work in the area, since it is multiscale and gives some insights on the various plausible topological types of the original object. We believe that this approach to manifold reconstruction is highly practical and has a number of potential applications, such as for instance topological noise removal or mesh compression. As a side product, in order to prove our algorithm correct on Lipschitz curves and surfaces, we have worked out interesting relationships between the witness complex and the restricted Delaunay triangulation in 2d and 3d. Our structural results assume that the set L of landmarks is an ε-sparse ε-sample of the set W of witnesses. This hypothesis is stringent but not unrealistic in practice, since L is generated by the algorithm. In contrast, our assumption on the input W is fairly mild.
Let us mention that our structural results still hold in the somewhat more general setting where W is an adaptive δ-sample of S in the sense of [1] and where L is an (ε, κ)-sample of W in the sense of [24]. The proofs are roughly the same, with an additional twist which slightly degrades the constants.
A number of theoretical questions are left open by this work, including:
Is it possible to devise automatic procedures for discriminating the fake plateaus from the meaningful plateaus in the diagram of Betti numbers? One possible approach, suggested by the example of Fig. 7, would be to keep track of the generators of the homology groups of the complex throughout the course of the algorithm, similarly to what is done in persistent homology [37]. The difficulty here is that our family of complexes is not a filtration, the complex at iteration i being neither a subset nor a superset of the complex at iteration i + 1.
Can the time complexity of the algorithm be reduced to O(|W| log |W|)? Reverse nearest neighbors queries can take linear time in the worst case, because a landmark can be among the nearest landmarks of a linear number of witnesses. As a consequence, reducing the time complexity requires to control the sizes of the lists of reverse nearest witnesses, which can probably be done under some sparseness condition on W. However, can it be done under weaker conditions?
The behavior of our reconstruction algorithm depends highly on the order in which the witnesses are inserted in L—in some sense, the algorithm is parameterized by this order. In the present paper, we use one possible ordering of the witnesses, prescribed by the furthest-point criterion. However, many other orderings could be considered, some of which might be relevant in different contexts. One appealing example is the problem of reconstructing curves and surfaces in the presence of background noise, where the furthest-witness strategy applied in this paper fails for obvious reasons.
Can our structural results be extended to manifolds of higher dimensions? Since the publication of the conference version of this paper, significant steps have been made in this direction: de Silva has extended the Weak Witness Theorem to the case of point clouds lying on Riemannian manifolds of constant sectional curvature [21]. Unfortunately, focusing on the Euclidean case, we have seen that the Weak Witness Theorem does not hold for general smooth submanifolds of ℝn [32]. Nevertheless, Cheng, Dey, and Ramos had proved that restricted Delaunay triangulations of dense point samples enjoy similar properties in higher dimensions as they do in ℝ3, provided that the standard Delaunay test is replaced by a weighted Delaunay test [15]. Building on their work, we have extended the results of this paper to the general case of smooth submanifolds of ℝn, with the Euclidean metric replaced by a weighted metric [6]. Combined with recent advances on the front of topological persistence, these results have led to a new class of reconstruction algorithms, inspired from this work and based on the use of the witness complex, whose space and time complexities scale up with the intrinsic dimension of the point cloud data, as opposed to the dimension of the ambient space [14].
Acknowledgments
The authors wish to thank V. de Silva, G. Carlsson, and the anonymous referees for their insightful comments. They also thank A. Zomorodian for providing them with his implementation of the persistence algorithm. This work was supported by DARPA grant 32905—Topological Data Analysis, NSF grants FRG-0354543 and ITR-0205671, and NIH grant GM-072970.
Footnotes
Elementary means that γ does not contain any point of L other than u and v.
In particular, we have ε > 6δ.
Any such line must pass through c.
Thanks to a bug in Geomview, we can see some hidden triangles in the vicinity of slivers, such as in green areas.
By N1, we have , which implies that .
∀p ∈ (L̃), (φ̃(t, p) − p) is indeed a convex combination of the {(φ̃(t, q) − q), q ∈ L̃}.
More precisely, by the fact that δ < λ0ε.
More precisely, by the fact that δ < λ(θ)ε.
The filtration used in [37] is rebuilt at each iteration, since some simplices are deleted from our complex .
These are the witnesses that have p among their κ nearest landmarks.
In the example of Fig. 1, the two plausible reconstructions are the helical curve and the torus in ℝ3. Strictly speaking, our theoretical statements do not consider curves in ℝn with n ≥ 3. However, as in the smooth setting, our proofs can be extended to arbitrary values of n, provided that a suitable definition of Lipschitz curve is used.
Contributor Information
Leonidas J. Guibas, Email: guibas@cs.stanford.edu, Dept. Computer Science, Stanford University, Stanford, CA 94305, USA
Steve Y. Oudot, Email: steve.oudot@stanford.edu, Dept. Computer Science, Stanford University, Stanford, CA 94305, USA
References
- 1.Amenta N, Bern M. Surface reconstruction by Voronoi filtering. Discrete Comput Geom. 1999;22(4):481–504. [Google Scholar]
- 2.Amenta N, Choi S. One-pass Delaunay filtering for homeomorphic 3D surface reconstruction. 1999. Manuscript. [Google Scholar]
- 3.Amenta N, Choi S, Dey TK, Leekha N. A simple algorithm for homeomorphic surface reconstruction. Int J Comput Geom Appl. 2002;12:125–141. [Google Scholar]
- 4.Attali D, Edelsbrunner H, Mileyko Y. Weak witnesses for Delaunay triangulations of submanifolds. Proc. ACM Symp. on Solid and Physical Modeling; 2007. pp. 143–150. [Google Scholar]
- 5.Boissonnat JD, Cazals F. Natural neighbor coordinates of points on a surface. Comput Geom: Theory Appl. 2001;19:155–173. [Google Scholar]
- 6.Boissonnat J-D, Guibas LJ, Oudot SY. Manifold reconstruction in arbitrary dimensions using witness complexes. Proc. 23rd Symp. on Comput. Geom; 2007. pp. 194–203. [Google Scholar]
- 7.Boissonnat JD, Oudot S. Provably good sampling and meshing of surfaces. Graph Models. 2005;67(5):405–451. [Google Scholar]
- 8.Boissonnat J-D, Oudot S. Provably good sampling and meshing of Lipschitz surfaces. Proc. 22nd Annu. Symp. Comput. Geom; 2006. pp. 337–346. [Google Scholar]
- 9.Cazals F, Giesen J. Delaunay triangulation based surface reconstruction. In: Boissonnat JD, Teillaud M, editors. Effective Computational Geometry for Curves and Surfaces. Springer; Berlin: 2006. pp. 231–273. [Google Scholar]
- 10.Chazal F, Cohen-Steiner D, Lieutier A. A sampling theory for compact sets in Euclidean space. Proc. 22nd Annu. Symp. Comput. Geom; 2006. pp. 319–326. [Google Scholar]
- 11.Chazal F, Lieutier A. Technical Report. Vol. 378. Institut de Mathématiques de Bourgogne; 2004. Weak feature size and persistent homology: Computing homology of solids in ℝn from noisy data samples. [Google Scholar]; Partially published in Proc. 21st Annu. ACM Symp. on Comput. Geom; 2005. pp. 255–262. [Google Scholar]
- 12.Chazal F, Lieutier A. The λ-medial axis. Graph Models. 2005;67(4):304–331. [Google Scholar]
- 13.Chazal F, Lieutier A. Topology guaranteeing manifold reconstruction using distance function to noisy data. Proc. 22nd Annu. Symp. on Comput. Geom; 2006. pp. 112–118. [Google Scholar]
- 14.Chazal F, Oudot SY. Towards persistence-based reconstruction in Euclidean spaces. Proc. 24th ACM Symp. Comput. Geom; 2008. pp. 232–241. [Google Scholar]
- 15.Cheng S-W, Dey TK, Ramos EA. Manifold reconstruction from point samples. Proc. 16th Symp. Discrete Algorithms; 2005. pp. 1018–1027. [Google Scholar]
- 16.Cheng SW, Funke S, Golin M, Kumar P, Poon SH, Ramos E. Curve reconstruction from noisy samples. Comput Geom: Theory Appl. 2005;31(1–2):63–100. [Google Scholar]
- 17.Chew LP. Guaranteed-quality mesh generation for curved surfaces. Proc. 9th Annu. ACM Symp. Comput. Geom; 1993. pp. 274–280. [Google Scholar]
- 18.Clarkson KL. Nearest-neighbor searching and metric space dimensions. In: Shakhnarovich G, Darrell T, Indyk P, editors. Nearest-Neighbor Methods for Learning and Vision: Theory and Practice. MIT Press; Cambridge: 2006. pp. 15–59. [Google Scholar]
- 19.Cohen-Steiner D, Edelsbrunner H, Harer J. Stability of persistence diagrams. Proc. 21st ACM Symp. Comput. Geom; 2005. pp. 263–271. [Google Scholar]
- 20.de Silva V. Technical report. Stanford University; Oct, 2003. A weak definition of Delaunay triangulation. [Google Scholar]
- 21.de Silva V. A weak characterisation of the Delaunay triangulation. Geom Dedicata. 2008 doi: 10.2007/s10711-008-9261-1. Online First. [DOI] [Google Scholar]
- 22.de Silva V, Carlsson G. Topological estimation using witness complexes. Proc. Symp. Point-Based Graphics; 2004. pp. 157–166. [Google Scholar]
- 23.Dey TK, Giesen J, Goswami S, Zhao W. Shape dimension and approximation from samples. Discrete Comput Geom. 2003;29:419–434. [Google Scholar]
- 24.Dey TK, Goswami S. Provable surface reconstruction from noisy samples. Comput Geom: Theory Appl. 2006;35(1–2):124–141. [Google Scholar]
- 25.Edelsbrunner H, Letscher D, Zomorodian A. Topological persistence and simplification. Proc. 41st Annu. IEEE Symp. Found. Comput. Sci; 2000. pp. 454–463. [Google Scholar]
- 26.Federer H. Curvature measures. Trans Am Math Soc. 1959;93:418–491. [Google Scholar]
- 27.Graham RL. Sets of points with given minimum separation (solution to Problem E1921) Am Math Mon. 1968;75:192–193. [Google Scholar]
- 28.Kolluri R. Provably good moving least squares. Proc. 16th ACM-SIAM Symposium on Discrete Algorithms; 2005. pp. 1008–1017. [Google Scholar]
- 29.Mederos B, Amenta N, Velho L, de Figueiredo LH. Surface reconstruction for noisy point clouds. Proc. 3rd Symp. on Geometry Processing; 2005. pp. 53–62. [Google Scholar]
- 30.Niyogi P, Smale S, Weinberger S. Finding the homology of submanifolds with high confidence from random samples. Discrete Comput Geom. 2008;39(1):419–441. [Google Scholar]
- 31.Oudot S, Rineau L, Yvinec M. Meshing volumes with curved boundaries. Eng Comput. 2008 to appear. Special issue IMR 2005. [Google Scholar]
- 32.Oudot SY. Technical report. Stanford University; Nov, 2006. On the topology of the restricted Delaunay triangulation and witness complex in higher dimensions. LANL arXiv:0803.1296v1 [cs.CG], http://arxiv.org/abs/0803.1296. [Google Scholar]
- 33.Pirl U. Der Mindestabstand von n in der Einheitskreisscheibe gelegenen Punkten. Math Nachr. 1969;40:111–124. [Google Scholar]
- 34.Roweis ST, Saul LK. Nonlinear dimensionality reduction by locally linear embedding. Science. 2000;290(5500):2323–2326. doi: 10.1126/science.290.5500.2323. [DOI] [PubMed] [Google Scholar]
- 35.Shewchuk JR. What is a good linear element?. Interpolation, conditioning, and quality measures; Proc. 11th Int. Meshing Roundtable; 2002. pp. 115–126. [Google Scholar]
- 36.Tenenbaum JB, de Silva V, Langford JC. A global geometric framework for nonlinear dimensionality reduction. Science. 2000;290:2319–2323. doi: 10.1126/science.290.5500.2319. [DOI] [PubMed] [Google Scholar]
- 37.Zomorodian A, Carlsson G. Computing persistent homology. Discrete Comput Geom. 2005;33(2):249–274. [Google Scholar]