Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2011 Jun 1.
Published in final edited form as: Discrete Comput Geom. 2008 Oct 1;40(3):325–356. doi: 10.1007/s00454-008-9094-6

Reconstruction Using Witness Complexes

Leonidas J Guibas 1,, Steve Y Oudot 2
PMCID: PMC3105630  NIHMSID: NIHMS197032  PMID: 21643440

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].

Fig. 1.

Fig. 1

Helical curve drawn on a torus (left). From a uniform sampling of the curve, our algorithm builds a one-parameter family of complexes (right) and maintains their Betti numbers (left)

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 Inline graphic(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 Inline graphic(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 Inline graphic(L) is a subcomplex of Inline graphic(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 Inline graphic(L) is equal to Inline graphic(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 Inline graphic(L) is then closely related to the restricted Delaunay triangulation Inline graphic(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 Inline graphic(L), and then how to extract a subcomplex that approximates Inline graphic(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 Inline graphic(L) and Inline graphic(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 Inline graphic(L) to contain Inline graphic(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 Inline graphic(L) the Delaunay triangulation of L.

Definition 2.2

The Delaunay triangulation of L restricted to S, or Inline graphic(L) for short, is the subcomplex of Inline graphic(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 wW 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,
    i{0,,l},qL\{p0,,pl},d(w,pi)d(w,q).
  • The witness complex of L relative to W, or Inline graphic(L) for short, is the maximum abstract simplicial complex with vertices in L, whose faces are witnessed by points of W.

The fact that Inline graphic(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 Inline graphic(L) ⊆ Inline graphic(L), which implies that Inline graphic(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 Inline graphic of ℝ2 (resp. ℝ3). Given a point pS, the k-Lipschitz radius of S at p, or lrk(p) for short, is the maximum radius r such that Inline graphicB(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, f(p)f(q)||pq||k. 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 pS 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 pS, 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 Inline graphicB(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 ε<17lrk(S),

  • H2

    the triangles of Inline graphic(L) have radius-edge ratios of at most ϱ with ϱ<cos2θ2sinθ and θ = arctan k.

Then, Inline graphic(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, SB(p, r) is a collection of pairwise-disjoint simple arcs, whose endpoints lie on the circle ∂B(p, r). Proving that SB(p, r) is a topological arc reduces then to showing that |S∂B(p, r)| ≤ 2.

Since r ≤ lrk(p), SB(p, r) is the graph of some k-Lipschitz univariate function f defined over Tk(p) with k < 1. This implies that SB(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 π2θ 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 π2θ>θ 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 SB(p, r) coincides with the graph of f would be contradicted. As a result, SB(p, r) is a topological arc, whose endpoints are precisely the two points u, v of S∂B(p, r).

Since SB(p, r) coincides with the graph of f, the orthogonal projection of SB(p, r) is one-to-one, and thus it maps the arc SB(p, r) to a segment whose vertices are the orthogonal projections of the endpoints of SB(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 Inline graphic(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 LInline graphic(L). Conversely, every point of Inline graphic(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 Inline graphic(L) is farther than ε from S. This proves that Inline graphic(S, Inline graphic(L)) ≤ ε.

Let us now show that S and Inline graphic(L) are homeomorphic. Let [u, v] be an edge of Inline graphic(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, SB(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 Inline graphic(L). Otherwise, ∂B(c, r) passes through some other point tL. Since u and v are consecutive along S, t does not belong to γ. Hence, SB(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, SB(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 Inline graphic(L).

It follows from the last two paragraphs that there is a bijection between the elementary arcs of S and the edges of Inline graphic(L). For any edge e = [u, v] of Inline graphic(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: ∀pInline graphic(L), h(p) = he(p), where e is any edge of Inline graphic(L) containing p. Since the edges of Inline graphic(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 Inline graphic(L) that contains p. It follows that h is a well-defined and continuous function from Inline graphic(L) to S. Moreover, since the he are bijective, and since there is a bijection between the edges of Inline graphic(L) and the elementary arcs of S, h is bijective. In addition, the inverse of h is continuous, since Inline graphic(L) is compact. It follows that h is a homeomorphism fromInline graphic(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 LW 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 θ<arcsin187.2deg and that δ<min{18sinθ12,3cosθ24(9cosθ+6)}lrk(S). If ε satisfies max{12sinθ18sinθ,63cosθ2}δ<ε<18lrk(S)32δ, then Inline graphic(L) coincides with Inline graphic(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 Inline graphic(L) to be witnessed. An illustration is given in Fig. 2, which shows that Inline graphic(L) contains Inline graphic(L) when L is sparse (left picture), whereas when L = W (ε = 0), Inline graphic(L) coincides with the nearest neighbor graph of L, which has nothing to do with Inline graphic(L) (right picture). The upper bound on ε ensures that the set L of landmarks is sufficiently dense, so that the nice properties of Inline graphic(L) stated in Sect. 2 hold and that classical local arguments can be applied to show that Inline graphic(L) is included in Inline graphic(L).

Fig. 2.

Fig. 2

(Color online) A set of witnesses sampling a smooth closed curve with noise, and two different subsets of landmarks (in green) together with their witness complexes

To prove the theorem, we will need the following technical result:

Lemma 3.2

Assume that θ<π6. Then, every Voronoi vertex lies at least min{12lrk(S),ε2sinθ} away from L.

Proof

Let c be a Voronoi vertex, and let (u, v, w) be its dual Delaunay triangle. Since LS, the points u, v, w belong to S. Let r = d(c, u). Assume for a contradiction that r<min{12lrk(S),ε2sinθ}. 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 θ<π6, the larger inner angle of the triangle is at least π − 2θ, hence the radius-edge ratio of (u, v, w) is at least 12sinθ. As a consequence, we have rε2sinθ, since the lengths of the edges of (u, v, w) are at least ε (recall that L is ε-sparse). This contradicts the assumption that r<min{12lrk(S),ε2sinθ} and thereby concludes the proof of the lemma.

We will now prove Theorem 3.1 in two steps: first, we will show that Inline graphic(L) is included in Inline graphic(L) (Lemma 3.3), then we will show that Inline graphic(L) is included in Inline graphic(L) (Lemma 3.4).

Lemma 3.3

Assume that θ<π6 and that δ<min{12sinθ2,3cosθ22(3cosθ+4)}lrk(S). If ε satisfies max{2sinθ12sinθ,63cosθ2}δ<ε<12lrk(S)δ, then Inline graphic(L) is included in Inline graphic(L) and has no simplex of dimension two or more.

Proof

Let e = [u, v] be an edge of Inline graphic(L). By the definition of Inline graphic(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 wW 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 pB(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 SB(c, r) is a topological arc whose endpoints are u, v and whose orthogonal projection onto Tk(c) is the line segment [ū, ], where ū, 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 pL\{u, v}, SB(c, r) contains c but not p. Therefore, (the orthogonal projection of p onto Tk(c)) does not belong to [ū, ], because the projection from SB(c, lrk(S)) to Tk(c) is one-to-one. As a consequence, d(c, p) is at least d(c, ) ≥ d(c, {ū, }) + d(, {ū, }). Since L is ε-sparse, we have d(p, u) ≥ ε, d(p, v) ≥ ε, and d(c,u)=d(c,v)d(u,v)2ε2. Moreover, since SB(c, lrk(S)) is the graph of a k-Lipschitz univariate function defined over Tk(c), we have d(, ū) ≥ d(p, u) cos θ, d(, ) ≥ d(p, v) cos θ, d(c, ū) ≥ d(c, u) cos θ, and d(c, ) ≥ d(c, v) cos θ. As a result,

d(c,p)d(c,p¯)d(c,{u¯,v¯})+d(p¯,{u¯,v¯})ε2cosθ+εcosθ=32εcosθ.

This expression is greater than ε + 3δ, since ε>6δ3cosθ2, 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 Inline graphic(L) is witnessed by some point of W. Since LW, the vertices of Inline graphic(L) witness themselves, hence the 1-skeleton of Inline graphic(L) is included in Inline graphic(L).

Let us now focus on higher-dimensional simplices. Since L is a (δ + ε)-sample of S with δ+ε<min{12lrk(S),ε2sinθ} by hypothesis, all the points of S lie within distance min{12lrk(S),ε2sinθ} of L. Therefore, S cannot contain any Voronoi vertex, by Lemma 3.2. This means that Inline graphic(L) has no triangle. As a consequence, Inline graphic(L) has no simplex of dimension two or more, and therefore it is equal to its 1-skeleton, which is included in Inline graphic(L).

Lemma 3.4

Assume that θ<arcsin18 and that δ<18sinθ12lrk(S). If ε satisfies 12sinθ18sinθδ<ε<18lrk(S)32δ, then Inline graphic(L) is included in Inline graphic(L) and has no simplex of dimension two or more.

Proof

Let v be a vertex of Inline graphic(L). By assumption, we have vLS, therefore the Voronoi cell of v intersects S, which implies that v is a vertex of Inline graphic(L). Let now [u, v] be an edge of Inline graphic(L), and let wW 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 be a point of S closest to w. Since W is a δ-noisy sample of S, we have d(w, ) ≤ δ. It follows that d(, u) ≤ δ + ε < lrk(S). Since SB(, lrk(S)) is the graph of a k-Lipschitz univariate function defined over Tk(), u belongs to the double wedge K of apex , of axis Tk(), and of half-angle θ. Let Ku be the wedge of K that contains u (if u = , then take either wedge of K for Ku). Since θ<π4, for any point pK\Ku, the point of Ku closest to p is . In particular, given any r ∈]δ + ε, lrk(S)[, every point p of S∂B(, r)\Ku satisfies d(p, u) ≥ d(p, ) = r. If v does not belong to B(, 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(, 2(δ + ε)), which implies that d(w, v) ≤ 3δ + 2ε, since d(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, BB(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 min{14lrk(S),ε4sinθ}. Hence, d(c,L)<min{14lrk(S),ε4sinθ}.

Claim 3.4.2

If a Voronoi edge contains a point closer to L than min{14lrk(S),ε4sinθ}, then this edge intersects S.

Proof

Let e be a Voronoi edge containing a point c closer to L than r=min{14lrk(S),ε4sinθ}. 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), SB(u, 2r) is the graph of a k-Lipschitz univariate function defined over Tk(u). As a consequence, SB(u, 2r) lies outside the double wedge K(u) of apex u, of axis aligned with nk(u), and of half-angle π2θ. Moreover, by Lemma 2.8, SB(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 SB(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, lB(u, 2r) = eB(u, 2r), and therefore e intersects S.

It follows from this claim that e intersects S. Therefore, [u, v] is an edge of Inline graphic(L). As a result, the 1-skeleton of Inline graphic(L) is included in Inline graphic(L). Let us now show that Inline graphic(L) has no simplex of dimension two or more. Recall that a simplex σ belongs to Inline graphic(L) only if all its faces belong to Inline graphic(L). Therefore, it suffices to prove that Inline graphic(L) has no triangle.

Claim 3.4.3

For any triangle t of Inline graphic(L), at least one edge of t does not belong to Inline graphic(L).

Proof

Let (u, v, w) be a triangle of Inline graphic(L). Assume for a contradiction that edges [u, v], [v, w], and [u, w] belong to Inline graphic(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 d(c,L)min{12lrk(S),ε2sinθ}, 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 Inline graphic(L), which contradicts our assumption.

Since Inline graphic(L) is included in Inline graphic(L), and since its edges belong to Inline graphic(L), any triangle of Inline graphic(L) is a Delaunay triangle whose edges belong to Inline graphic(L). Hence, by Claim 3.4.3, Inline graphic(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 Inline graphic(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).

Fig. 3.

Fig. 3

Order-two Voronoi diagrams of two sets of points in the plane

Fig. 4.

Fig. 4

Witness complex, ν-witness complex, and extracted manifold

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 Inline graphic(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 wW, 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), qL}.

Observe that, in the case where ml, 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 wW 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 CνW(L) 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 CνW(L) 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 Inline graphic(L) and CνW(L): if νii + 1 ∀i, then CνW(L) contains Inline graphic(L); in contrast, if νii + 1 ∀i, then CνW(L) is included in Inline graphic(L); thus, CW(L)=CνW(L) whenever νi = i + 1 ∀i. In addition, if νi = 0 for some i, then the i-skeleton of CνW(L) is empty, since a simplex cannot be 0-witnessed, and the dimension of CνW(L) is then at most i − 1.

Theorem 3.7

Assume that θ<arccos(2sinπ7)29.7deg and that δ<cosθ2sinπ73cosθ+2sinπ7·lrk(S). If ε satisfies 8sinπ7cosθ2sinπ7δ<ε<lrk(S)3δ, then, for any sequence ν of integers such that ν0 ≥ 1, ν1 ≥ 6, and ν2 ≥ 6, Inline graphic(L) is included in CνW(L).

Proof

Since the vertices of Inline graphic(L) belong to L, which is included in W, they witness themselves and thus belong to CνW(L). In addition, Inline graphic(L) contains no tetrahedron generically.

Let σ be a simplex (edge or triangle) of Inline graphic(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 wW 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 SB(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 LB(c, r + 2δ). We call 1, …, 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 SB(c, lrk(S)), which is the graph of a k-Lipschitz bivariate function defined over the plane Tk(c), their projections 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 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 i are centers of pairwise-disjoint open disks of radius ε2cosθ. Let Dc, D1, …, Dl denote these disks. Since the pi belong to B(c, r + 2δ), the i belong to the disk D(c, r + 2δ). Therefore, Dc, D1, …, Dl form a congruent packing of the disk D(c,r+2δ+ε2cosθ). Now, according to the hypotheses of the theorem, we have:
    r+2δ+ε2cosθε+3δ+ε2cosθ<ε2cosθ(1sinπ7+1).

    Hence, by a classical result on congruent packings of disks [27, 33], there are at most seven disks of radius ε2cosθ packed in D(c,r+2δ+ε2cosθ). 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 i are centers of pairwise-disjoint open disks of radius r2cosθ. Let Dc, D1, …, Dl denote these disks. Since the belong to B(c, r + 2δ), Dc, D1, …, Dl are included in D(c,r+2δ+r2cosθ). Now, B(c, r) is a Delaunay ball, hence its bounding sphere contains at least two points of L, which implies that rε2. Moreover, the hypotheses of the theorem state that δ<ε4(cosθ2sinπ71), which is at most r2(cosθ2sinπ71). Therefore, Dc, D1, …, Dl form a congruent packing of a disk of radius
    r+2δ+r2cosθ<r+r(cosθ2sinπ71)+r2cosθ=r2cosθ(1sinπ7+1).

    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 Inline graphic(L), and since the vertices of Inline graphic(L) belong to CνW(L),CνW(L) contains all the edges and triangles of Inline graphic(L). This ends the proof of the theorem.

The next theorem guarantees that the simplices of CνW(L) are not too large as far as the νi remain bounded. It follows that the size of CνW(L) 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 δ+ε<cosθ6lrk(S). Then, for any point w ∈ W, the distance between w and its sixth nearest neighbor among the points of L is at most δ+(6cosθ+1)(δ+ε). As a consequence, for any sequence ν of integers such that ν1 ≤ 6, the total number of simplices of CνW(L) is at most 2O((δ+εεcosθ)3)L, which is linear with respect to |L| as far as θ is fixed and δ is within a constant factor of ε.

Proof

Let wW, and let be a point of S closest to w. Since W is a δ-noisy sample of S, we have d(w, ) ≤ δ. We call p1, …, pl the points of L that lie in B(w¯,(6cosθ+1)(δ+ε)), and 1, …, l their orthogonal projections onto the plane Tk(). We will prove that l ≥ 6.

Since L is a (δ + ε)-sample of S, the balls Bi = B(pi, δ + ε) cover SB(w¯,(δ+ε)6cosθ) (observe that, among the balls of radius δ + ε centered at the points of L, only the Bi intersect B(w¯,(δ+ε)6cosθ)). It follows that, inside Tk(), the disks Di = D(i, δ + ε) cover the orthogonal projection of SB(w¯,(δ+ε)6cosθ). Now, according to the hypothesis of the lemma, we have (δ+ε)6cosθ<lrk(S). Thus, by Lemma 2.7, SB(w¯,(δ+ε)6cosθ) is a topological disk whose orthogonal projection onto Tk() contains the projection D of the intersection of B(w¯,(δ+ε)6cosθ) with the cone of apex , of axis aligned with nk(), and of half-angle π2θ. Therefore, the Di cover D, which is a disk of center and radius (δ+ε)6. Thus, the number of disks Di is at least

Area(D)Area(Di)=6π(δ+ε)2π(δ+ε)2=6.

It follows that the number of points of L that lie in B(w¯,(6cosθ+1)(δ+ε)) is at least 6. As a result, the distance from w to its sixth nearest landmark is at most d(w,w¯)+(6cosθ+1)(δ+ε)δ+(6cosθ+1)(δ+ε).

Let us now bound the size of CνW(L). Let p be a point of L. From the above paragraph we deduce that the edges of CνW(L) incident to p are included in balls of radii at most δ+(6cosθ+1)(δ+ε). Hence, all edges belong to a common ball of center p and radius r2δ+2(6cosθ+1)(δ+ε), which is equal to 2ε(1+6cosθ+(6cosθ+2)δε). The neighboring vertices q1, …, ql of p in CνW(L) 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 ε2, hence their number l is at most Vol(B(p,r))Vol(B(p,ε2))64(1+6cosθ+(6cosθ+2)δε)3=O(1cos3θ(1+δε)3). Since every simplex of CνW(L) incident to p is uniquely defined as a subset of {q1, …, ql}, the number of simplices of CνW(L) incident to p is at most 2l, which gives the result.

3.2.2 Manifold Extraction

It follows from Theorem 3.7 that CνW(L) contains Inline graphic(L), but Fig. 4 (center)4 shows that CνW(L) is not restricted to Inline graphic(L) and contains additional simplices that are small enough to be ν-witnessed. Nevertheless, it is possible to extract from CνW(L) 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:

  1. Since the goal is to extract a 2-manifold, only the 2-skeleton of CνW(L) is considered. Since it may not be an embedded complex, we intersect it with Inline graphic(L). The result is a pure 2-dimensional subcomplex Inline graphic of Inline graphic(L).

    To guarantee that the output simplicial surface has no skinny triangle, we delete from Inline graphic all the triangles whose radius-edge ratios are greater than ϱ.

  2. We greedily remove from Inline graphic all the triangles incident to sharp edges. An edge is sharp if all its incident triangles in Inline graphic lie in a small wedge of angle at most π2. 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 Inline graphic, we extract the outer boundary of Inline graphic.

Observe that steps 3 and 4 correspond to the manifold extraction procedure of [13]. As argued in these papers, the outcome is a simplicial complex Ŝ whose dihedral angles are greater than π2. 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 CνW(L), steps 1 through 3 might end up with an empty complex Inline graphic. As a result, Ŝ may be empty. Second, the outer boundary of Inline graphic 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 Inline graphic, 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 Inline graphic.

Theorem 3.9

Let ϱ=1+12sinπ78sinπ71.038. Assume that θ<arctan31+4ϱ18.6deg and that δ<cos4θ(cosθ2sinπ7)(2cos2θ+6cosθ+4cosθsinπ726sinπ7)(cosθ+6)(4+3cos2θ)ϱ3lrk(S). If ε satisfies 8sinπ7cosθ2sinπ7δ<ε<cos3θ(cosθ+6)(4+3cos2θ)ϱ3lrk(S)2cosθ+6cosθδ, then, for any sequence ν of integers such that ν0 ≥ 1 and ν1 = ν2 = 6, the simplicial complex Ŝ extracted from CνW(L) with parameter ϱ is an embedded surface isotopic to S and at Hausdorff distance at most (δ+(6cosθ+1)(δ+ε))ϱ3cos2θ 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 Inline graphic(L) are not skinny and make large dihedral angles. This fact, combined with Theorem 3.7, implies that complex Inline graphic contains Inline graphic(L) after step 3 above. We deduce that Ŝ is not empty, since Inline graphic(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 Inline graphic(Ŝ, S) between Ŝ and S. We show that Inline graphic(Ŝ, 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:

C1δ<cosθ2sinπ78sinπ7ε.C2δ+(6cosθ+1)(δ+ε)<cos2θ(4+3cos2θ)ϱ3lrk(S).

Ŝ is not Empty

Lemma 3.12

Inline graphic(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 δ+ε<17lrk(S), by C2. Therefore, hypothesis H1 of Theorem 2.6 is satisfied with ε replaced by δ + ε. Let now f be a triangle of Inline graphic(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 1+δε, which by C1 is less than 1+cosθ2sinπ78sinπ7ϱ. This property holds for every triangle f of Inline graphic(L). Since in addition we assumed that θ<arctan31+4ϱ, we have 2ϱsinθ<cos(θ+π6)<cos(2θ), and thus hypothesis H2 of Theorem 2.6 is satisfied as well. It follows then from Theorem 2.6 that Inline graphic(L) is a 2-manifold isotopic to S and at Hausdorff distance δ + ε of S. Moreover, the oriented normals of Inline graphic(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 Inline graphic(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 θ<arctan31+4ϱ, arcsin(2ϱ sin θ) is less than π4, hence the dihedral angle between f1 and f2 is greater than π2.

Let us now prove that the closed 2-manifold Inline graphic(L) is included in complex Inline graphic upon termination of step 3 of the extraction process. This will imply that Ŝ is not empty, since it coincides with the outer boundary of Inline graphic, which encloses Inline graphic(L). According to Theorem 3.7, Inline graphic(L) is included in CνW(L) initially. By definition, Inline graphic(L) is a subcomplex of Inline graphic(L), and by Lemma 3.12 it is a 2-manifold (and thus a pure 2-dimensional complex). Thus, Inline graphic(L) is included in Inline graphic upon termination of step 1 of the extraction process. Still by Lemma 3.12, the radius-edge ratios of the triangles of Inline graphic(L) are at most ϱ, and Inline graphic(L) has obtuse dihedral angles. As a consequence, Inline graphic(L) remains in Inline graphic throughout steps 2 and 3.

Ŝ is a Lipschitz Surface

As argued in Sect. 3.2.2, the subcomplex Ŝ extracted from CνW(L) is a combinatorial surface, but its immersion in ℝ3 may not be an embedding. However, it coincides with the outer boundary of complex Inline graphic, 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 CνW(L) is included in a ball of radius δ+(6cosθ+1)(δ+ε). Since the radius-edge ratio of f is at most ϱ, a quick computation shows that the circumradius of f is at most (δ+(6cosθ+1)(δ+ε))ϱ3, which by C2 is less than cos2θ4+3cos2θlrk(S)<17lrk(S).

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 fv the respective orthogonal projections of f and f′ onto the plane Tk (v). Inside Tk (v), we endow triangles fv and fv 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 n(fv)·nk(v). Now, by the triangle normal Lemma 3.10, the planes aff(f ) and aff(f′) make angles of at most arcsin(2ϱsinθ)<π4 with Tk (v). Since the dihedral angle between f and f′ is at least π2, fv and fv lie on either sides of the projection of e onto Tk (v). It follows that the orientations of fv and fv 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 lrk(S^)lrk(S)3ϱ3(δ+(6cosθ+1)×(δ+ε)).

Proof

Let d=(δ+(6cosθ+1)(δ+ε))ϱ3. 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 Inline graphic(Ŝ, S)

Let d=(δ+(6cosθ+1)(δ+ε))ϱ3. To apply Proposition 6.4 of [8] and bound Inline graphic(Ŝ, 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 CνW(L) and since LS, by assumption.

  • The circumradii of the triangles of Ŝ are at most d with d<17lrk(S): 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 π3θ: this is ensured by the triangle normal Lemma 3.10 and by the fact that θ<arctan31+4ϱ.

  • Ŝ has vertices on all the connected components of S: this is true because Ŝ encloses complex Inline graphic, which contains the closed surface Inline graphic(L) that has vertices on all the connected components of S (by Lemma 3.12), and because the triangles of Inline graphic are too small to connect distinct connected components of S.

It follows then from Proposition 6.4 of [8] that

dH(S,S^)dcos2θ=(δ+(6cosθ+1)(δ+ε))ϱ3cos2θ. (1)

Ŝ is isotopic to S

By (1), we have dH(S^,S)dcos2θ, where d=(δ+(6cosθ+1)(δ+ε))ϱ3. By C2, this quantity is less than 14(lrk(S)3d), which, by Lemma 3.15, is at most 14min{lrk(S),lrk(S^)}. As a consequence, Inline graphic(Ŝ, 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 θ[0,π2], λ (θ) 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:

N1δ<min{14,24sinθ2(2+4sinθ),cos(2θ)2sinθ2(cos(2θ)+2sinθ),λ0,λ(θ)}ε.N2δ<min{114lrk(S)12ε,16lrk(S)712ε}.

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:

{k=tan(arcsin(4((1+2sinθ)δε+sinθ)2sin(arcsin12δε2(1+2δε)2arcsin2δε12δε)))=O(k+δε),lrk(S)lrk(S)(2ε+7δ)>12lrk(S).

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 k=O(k+δε) 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 k=O(k+δε) 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 pL has two or more nearest neighbors on S, then we choose either of them. We get a new point set S, together with a surjective map μ: L. The restricted Delaunay triangulation of , Inline graphic(), 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] × → ℝ3 as follows:

t[0,1],pL,φ(t,p)=(1t)p+tμ1(p).

We can then extend φ̃ to [0, 1] × Inline graphic() by linearity:

t[0,1],pDS(L),φ(t,p)=λuφ(t,u)+λvφ(t,v)+λwφ(t,w),

where λu, λv, λw are the barycentric coordinates of p in any triangle (u, v, w) of Inline graphic() containing p. If p belongs to several triangles, then φ̃(t, p) does not depend on the choice of the triangle, since Inline graphic() is an embedded simplicial complex. Moreover, φ̃ is a continuous function in variables (t, p).

Since L is a δ-noisy (ε + δ)-sample of S, is a noise-free (ε + 2δ)-sample of S with ε+2δ<17lrk(S), by N2. Therefore, hypothesis H1 of Theorem 2.6 is satisfied. Moreover, by Lemma 3.17, is (ε − 2δ)-sparse, hence the radius-edge ratios of the triangles of Inline graphic() are at most ϱ=ε+2δε2δ, which by N1 is less than cos(2θ)2sinθ. It follows that hypothesis H2 is also satisfied, which implies that Inline graphic() 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) = Inline graphic(). We define φ by applying I and φ̃ successively, at double speed:

{t[0,12],pS,φ(t,p)=I(2t,p),t[12,1],pS,φ(t,p)=φ(2t1,I(1p)).

This is the standard way of composing isotopies. In particular, φ is well defined, since I (1, p) ∈ Inline graphic() for all pS. 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 Inline graphic() is compact. We will use an intermediate result:

Lemma 3.18

Under the hypotheses of Theorem 3.16, the following assertions hold:

  1. For any two vertices u, v of Inline graphic(L̃), d(u, v) ≥ ε − 2δ.

  2. For any vertex v and any non-incident simplex (edge or triangle) σ of Inline graphic(L̃), the distance between v and σ is at least ε(12δε)22(1+2δε).

  3. For any two disjoint edges e, e′ of Inline graphic(L̃), the distance between e and e′ is bounded from below by ε(12δε)22(1+2δε)14(1+2δε)22(12δε)2sin2θ.

Proof

(i) is a direct consequence of the fact that is (ε − 2δ)-sparse.

Concerning (ii), it is proved in [8, Lemma 5.8] that, since assumptions H1–H2 of Theorem 2.6 are satisfied, Inline graphic() is a -Lipschitz surface with = tan(arcsin(2ϱ̃ sin θ)) and lr (Inline graphic()) ≥ lrk (S) − 3(ε + 2δ). Let v be a vertex of Inline graphic(), and σ a simplex (edge or triangle) of Inline graphic() that is not incident to v. If σ does not intersect B(v, lr(Inline graphic())), then its distance to v is at least lr (Inline graphic()) ≥ lrk (S) − 3(ε + 2δ), which by N2 is greater than ε2ε(12δε)22(1+2δε). Otherwise, the point pσ closest to v lies inside the ball B(v, lr (Inline graphic())). Since Inline graphic() ∩ B(v, lr (Inline graphic())) coincides with the graph of a bivariate function defined over the -Lipschitz support plane of Inline graphic() at v (called T(v), for short), the orthogonal projection of p onto T(v) lies outside Ū(v), the orthogonal projection of the umbrella U(v) of triangles of Inline graphic() incident to v. Since v lies in the interior of Ū(v), the line segment [v, ] intersects the boundary of Ū(v). Let be a point of intersection, and q the point of the boundary of U (v) that projects onto . Inside the plane that contains v, p and (and hence also q and ), Inline graphic() ∩ B(v, lr(Inline graphic())) coincides with the graph of a -Lipschitz univariate function defined over the line (v, ). Since5 < 1, the fact that ∈ [v, ] 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 Inline graphic() 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 d(v,u)sinvuw^, 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 ϱ=ε+2δε2δ, every inner angle of (u, v, w) is at least arcsinε2δ2(ε+2δ). Therefore, we have vuw^arcsinε2δ2(ε+2δ) and h(ε2δ)22(ε+2δ)=ε(12δε)22(1+2δε). Since this is true for any triangle of Inline graphic() incident to v, the distance between v and the boundary of U(v) is at least ε(12δε)22(1+2δε), which proves (ii).

By the same argument, for any disjoint edges e, e′ of Inline graphic(L), and for any point pe, 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 onto the -Lipschitz support plane T(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 to ē, which is bounded from below by d(, ē). Moreover, we have d(, ē) ≥ d(q, e) cos(arctan ), since U (e) ⊂ Inline graphic() ∩ B(v, lr(Inline graphic())), which coincides with the graph of a -Lipschitz bivariate function defined over T(v). Therefore, the distance of any point of ∂U (e) to e is at least d(q,e)cos(arctank)=d(q,e)14(1+2δε)2(12δε)2sin2θ. We must find a lower bound on d(q, e). Let Σ ⊂ T(v) be the strip whose boundaries are the lines orthogonal to ē passing through ū and v. For any point ∉ Σ, the nearest neighbor of on ē is either ū or v. Hence, if ∉ Σ, then d(q,e)ε(12δε)22(1+2δε), by (ii). For any point ∈ Σ, the nearest neighbor of on ē is also its nearest neighbor on the line aff(ē). Hence, if ∈ Σ, then 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 on ē is either ū or v). In both cases, we have d(q,e)ε(12δε)22(1+2δε), by (ii). This proves (iii).

Let t ∈ [0, 1]. Observe that, since L is a δ-noisy sample of S, φ̃(t, .) moves the points of by at most δ. It follows, by convexity,6 that every point of Inline graphic() 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 Inline graphic(), 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 uwv^ by at most arcsin2δε2δ, 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 ϱ=2+2δε2δ, hence angle uwv^ is at least arcsin12ϱ=arcsinε2δ2(ε+2δ) initially. It follows that uwv^ does not vanish as u, v, w are moved by φ̃, since by N17 we have 2arcsin2δε2δ<arcsinε2δ2(ε+2δ). 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 Inline graphic() is one-to-one, φ̃(t, .) itself is one-to-one provided that the images of any two disjoint simplices of Inline graphic() (which are simplices of same dimensions) are disjoint, and that the images of any two non-disjoint simplices of Inline graphic() have disjoint relative interiors. Assume for a contradiction that two disjoint (resp. non-disjoint) simplices σ1, σ2 of Inline graphic() 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 Inline graphic() 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 Inline graphic(), since φ̃(t, .) does not move the points of Inline graphic() by more than δ. This contradicts Lemma 3.18, since by N18 we have δ<ε2(12δε)22(1+2δε)14(12δε)2(12δε)2sin2θ. Therefore, disjoint simplices of Inline graphic() have disjoint images through φ̃(t, .), and non-disjoint simplices of Inline graphic() have images through φ̃(t, .) with disjoint relative interiors, which implies that φ̃(t, .) is one-to-one.

It follows that φ̃ is an isotopy from Inline graphic() to S′ = φ̃(1, Inline graphic()). As a consequence, φ is an isotopy from S to S′. In addition, since is a noise-free (ε + 2δ)-sample of S, we have Inline graphic(S, Inline graphic()) ≤ ε + 2δ, by Theorem 5.4 of [8]. Moreover, since φ̃(1, .) moves the points of Inline graphic() by at most δ, we have Inline graphic(Inline graphic(), S′) ≤ δ. As a result, the Hausdorff distance between S and S′ is at most ε + 3δ. For each oriented simplex σ = [v0, …, vl ] of Inline graphic(), we set the orientation of simplex φ̃(1, σ ) to [φ̃(1, v0), …, φ̃(1, vl)]. Since Inline graphic() is an oriented surface and φ̃ is an isotopy from Inline graphic() 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 k=tan(arcsin(4((1+2sinθ)δε+sinθ)2sin(arcsin12δε2(1+2δε)2arcsin2δε12δε))) 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 the triangle of Inline graphic() such that f′ = φ̃(1, ). Since is an (ε + 2δ)-sample of S, 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 ϱ=12sin(arcsinε2δ2(ε+2δ))2arcsin2δε2δ).

Let p′ be a point of S′, and p a point of S closest to p′. Since Inline graphic(S, Inline graphic()) ≤ ε + 2δ and Inline graphic(Inline graphic(), 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 = (ũ, , ) be the triangle of Inline graphic() such that f′ = φ̃(1, ). Since φ̃(1, .) does not move the vertices of by more than δ, is included in B(p, r + 2ε + 7δ) = B(p, lrk (S)). Therefore, lines (ũ, ), (, ), and (, ũ) make angles of at least π2θ with the k-Lipschitz normal nk (p) of S at p. As a consequence,

(wv)·nk(p)(ww)·nk(p)+(wv)·nk(p)+(vv)·nk(p)δ+||wv||sinθ+δ.

Since is an (ε + 2δ)-sample of S, we have |||| ≤ 2ε + 4δ. Moreover, since L is ε-sparse, we have ||w′ − v′|| ≥ ε. It follows that the angle between nk (p) and line (v′, w′) is:

arccos(wv)·nk(p)||wv||arccos2δ+(2ε+4δ)sinθε=π2arcsin(2(1+2sinθ)δε+2sinθ).

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 arcsin(4ϱ((1+2sinθ)δε+sinθ)). 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 k=tan(arcsin(4ϱ((1+2sinθ)δε+sinθ))) 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 CνW=CW). The algorithm constructs a set LW of landmarks iteratively, starting with L = ∅, and in the mean-time it maintains CνW(L). At each iteration, the witness lying furthest away from L is inserted in L, and CνW(L) is updated as described below. The process stops when L = W. The output of the algorithm is either the one-parameter family of complexes CνW(L) 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 CνW(L)

Our strategy to update CνW(L) relies on the following observation: when a witness p is inserted in L, every simplex that appears in CνW(L) is incident to p, whereas every simplex that disappears from CνW(L) 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, CνW(L) 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 CνW(L). 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, CνW(L) 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 CνW(L) to O(|L|), by Theorem 3.8. The total time spent by the algorithm to maintain CνW(L) 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 CνW(L) by its intersection with Inline graphic(L), noted (CνWD)(L). This makes sense because, Inline graphic(L) being a subset of Inline graphic(L), Theorems 3.1 and 3.9 hold the same if CνW(L) is replaced by (CνWD)(L). The advantage is that (CνWD)(L) can be stored as a subcomplex of Inline graphic(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 (CνWD)(L) 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 ji 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) ∀ ji. 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, (CνWD)(L(i)) (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 (CνWD)(L(i)) (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 (CνWD)(L(i)) (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) − ), 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 1ε(i), 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.

Fig. 5.

Fig. 5

Diagram of Betti numbers of Ŝ for the Tanglecube point set

Fig. 6.

Fig. 6

Diagram of Betti numbers of Ŝ for the Happy Buddha point set

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 (CνWD)(L(i)) does not contain Inline graphic(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 CνW(L(i)) 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.

Fig. 7.

Fig. 7

(Color online) A set W of witnesses (in black) sampling a smooth curve in the plane, and a sparse subset L of landmarks. The witness complex of L relative to W is shown in green, while the edges of the order-two Voronoi diagram of L are shown in grey. Note how the insertion of aW in L creates a new loop but at the same time removes edge [b, c] from the complex, thereby destroying the former loop. The homotopy type of the complex remains unchanged

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

1

Elementary means that γ does not contain any point of L other than u and v.

2

In particular, we have ε > 6δ.

3

Any such line must pass through c.

4

Thanks to a bug in Geomview, we can see some hidden triangles in the vicinity of slivers, such as in green areas.

5

By N1, we have ε+2δε2δ<24sinθ, which implies that arcsin(2ϱsinθ)=arcsin(2ε+2δε2δsinθ)<π4.

6

pInline graphic(), (φ̃(t, p) − p) is indeed a convex combination of the {(φ̃(t, q) − q), q}.

7

More precisely, by the fact that δ < λ0ε.

8

More precisely, by the fact that δ < λ(θ)ε.

9

The filtration used in [37] is rebuilt at each iteration, since some simplices are deleted from our complex CνW(L).

10

These are the witnesses that have p among their κ nearest landmarks.

11

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]

RESOURCES