## Abstract

This is a companion paper of a previous work on the surface reconstruction from a sparse cloud of points, which are estimated by Structure-from-Motion. The surface is a 2-manifold sub-complex of the 3D Delaunay triangulation of the points. It is computed as the boundary of a list of tetrahedra, which grows in the set of Delaunay tetrahedra. Here we detail the proofs for the 2-manifold tests that are used during the growing: we show that the tetrahedron-based test and the test for adding (or subtracting) one tetrahedron to (or from) the list are equivalent to standard tests based on triangles.

### Similar content being viewed by others

## References

Boissonnat, J.D., Devillers, O., Pion, S., Teillaud, M., Yvinec, M.: Triangulations in CGAL. Comput. Geom.

**22**, 5 (2002)Boissonnat, J.D.: Geometric structures for three-dimensional shape representation. ACM Trans. Graph.

**3**(4), 266–286 (1984)Diestel R.: Graph theory. Springer Verlag (graduated texts in mathematics 173) (2010).

Gezahegne A.: Surface reconstruction with constrained sculpting. Master of Science Thesis. University of California Davis (2005).

Giblin, P.: Graphs, surfaces and homology, 3rd edn. Cambridge University Press, Cambridge (2010)

Goodman J., Rourke J.O. (eds): Handbook of discrete and computational geometry, CRC. Press (2004).

Lhuillier, M., Yu, S.: Manifold surface reconstruction of an environment from sparse Structure-from-Motion data. CVIU

**117**(11), 1628–1644 (2013)Litvinov V., Lhuillier M.: Incremental solid modeling from sparse and omnidirectional structure-from-motion data. BMVC 2013.

Sakai, K.: Simplicial Homology, a Short Course. University of Tsukuba, Institute of Mathematics (2010)

Vegter, G.: Computational Topology. In: Goodman, J., Rourke, J.O. (eds.) Handbook of discrete and computational geometry. CRC. Press, (2004)

Yu S., Lhuillier M.: Incremental reconstruction of manifold surface from sparse visual mapping. 3DIMPVT 2012.

Zomorodian, A.J.: Topology for computing. Cambridge University Press, Cambridge (2005)

## Author information

### Authors and Affiliations

### Corresponding author

## Electronic supplementary material

Below is the link to the electronic supplementary material.

## Appendices

### Appendix 1: Proofs of Prerequisites for Theorem 4

We remember that \(O\subset T^\infty ,\; \partial O\subset c(T)\) and \(\varDelta \in T\setminus O\).

### 1.1 Appendix 1.1: Proof of Lemma 1

Since \(c(O)\) and \(c(\varDelta )\) are abstract simplicial complexes included in abstract simplicial complex \(c(T^\infty )\), \(c(O)\cap c(\varDelta )\) is an abstract simplicial complex included in \(c(T^\infty )\). Since \(\varDelta \in T\), \(c(\varDelta )\) is also a simplicial complex and \(c(O)\cap c(\varDelta )\) has a realization included in simplicial complex \(c(\varDelta )\). We use the same notation for \(c(O)\cap c(\varDelta )\) and its realization in \(\mathbb {R}^3\).

We have \(c(\partial O)\cap c(\partial \varDelta )\subseteq c(O)\cap c(\varDelta )\) since \(\partial O\subset c(O)\) and \(\partial \varDelta \subset c(\varDelta )\). Conversely, let \(\sigma \) be an arbitrarily chosen simplex from \(c(O)\cap c(\varDelta )\) and show \(\sigma \in c(\partial O)\cap c(\partial \varDelta )\). First we study the case where \(\sigma \) is a triangle. Since \(\varDelta \notin O,\; \sigma \) is included in \(\varDelta \) and in another tetrahedron which is in \(O\). Thus \(\sigma \in \partial \varDelta \cap \partial O\subset c(\partial O)\cap c(\partial \varDelta )\). Now we study the case where \(\sigma \) is a vertex or an edge. Since \(\sigma \in c(O)\), \(O_\sigma \ne \emptyset \). Furthermore \(g_\sigma \) is a connected graph. Therefore, there is a series \(\varDelta _0\varDelta _1\ldots \varDelta _n\) of adjacent tetrahedra where \(\varDelta _0=\varDelta ,\; \varDelta _n\in O_\sigma \) and \(\forall i\in \{1,\ldots n-1\}, \varDelta _i\in T^\infty _\sigma \setminus ( O\cup \{\varDelta \})\). Note that \(\varDelta \notin O\) implies \(n>0\) and triangle \(\varDelta _0\cap \varDelta _1\in \partial \varDelta \) and triangle \(\varDelta _{n-1}\cap \varDelta _n\in \partial O\). Since \(\sigma \) is included in all the \(\varDelta _i\) above, \(\sigma \subseteq \varDelta _0\cap \varDelta _1\) and \(\sigma \subseteq \varDelta _{n-1}\cap \varDelta _n\). Thus \(\sigma \in c(\partial \varDelta )\) and \(\sigma \in c(\partial O)\).

### 1.2 Appendix 1.2: Proof of Lemma 2

Note that \(|\partial O|\) is well defined since \(\partial O\subset c(T)\). Point \(\mathbf{p}\in |\partial \varDelta |\cap |\partial O|\) iff there are geometric triangles \(t\) and \(t'\) such that \(\mathbf{p}\in t\in \partial \varDelta \) and \(\mathbf{p}\in t'\in \partial O\). If \(\mathbf{p}\in |\partial \varDelta |\cap |\partial O|\), \(\mathbf{p}\in t\cap t' \in c(\partial \varDelta )\cap c(\partial O)\) and we obtain \(\mathbf{p}\in |c(\partial \varDelta )\cap c(\partial O)|\). If \(\mathbf{p}\in |c(\partial \varDelta )\cap c(\partial O)|\), there is a geometric simplex \(\sigma \) such that \(\mathbf{p}\in \sigma \in c(\partial \varDelta )\cap c(\partial O)\). Thus there are triangles \(t\) and \(t'\) such that \(\sigma \subseteq t\cap t'\) and \(t\in \partial \varDelta \) and \(t'\in \partial O\). We obtain \(\mathbf{p}\in |\partial \varDelta |\cap |\partial O|\).

Thanks to Lemma 1, \(|\partial O|\cap |\partial \varDelta |= |c(\partial O)\cap c(\partial \varDelta )|= |c(O)\cap c(\varDelta )|\) and the triangles of \(c(O)\cap c(\varDelta )\) are \(\partial O\cap \partial \varDelta \). Thus \(|\partial O|\cap |\partial \varDelta |= |\partial O\cap \partial \varDelta |\) if \(c(O)\cap c(\varDelta )\) is 2D pure.

### 1.3 Appendix 1.3: Proof of Lemma 3

Since \(\varDelta \notin O\), triangle \(t\) is in \(\partial O\cap \partial \varDelta \) iff the two tetrahedra including \(t\) are \(\varDelta \) and another one in \(O\). Thus, \(t\in (\partial O\cup \partial \varDelta ) \setminus (\partial O\cap \partial \varDelta )\) iff triangle \(t\) is a face of exactly one tetrahedron of \(O\cup \{\varDelta \}\), i.e. iff \(t\in \partial (O\cup \{\varDelta \})\).

### Appendix 2: Alternative Proof for Lemma 6 (\(f\in \{1,2,3\}\))

Here we find homeomorphism \(\varphi \) such that \(\varphi (|\partial O|)= |\partial (O\cup \{\varDelta \})|\). \(\varphi \) is defined by its values on vertices and linear interpolation on \(\partial O\) triangles (or their subdivisions) as follows. For every vertex \(\mathbf{v}\) in \(c(\partial O)\), we set \(\varphi (\mathbf{v})= \mathbf{v}\). We use notation \(\varDelta =\mathbf{a}\mathbf{b}\mathbf{c}\mathbf{d}\).

If \(f=1,\; |\partial O\cap \partial \varDelta |= \mathbf{a}\mathbf{b}\mathbf{c}\), we split \(\mathbf{a}\mathbf{b}\mathbf{c}\) into triangles \(\mathbf{a}\mathbf{b}\mathbf{e},\; \mathbf{b}\mathbf{c}\mathbf{e},\; \mathbf{c}\mathbf{a}\mathbf{e}\) where \(\mathbf{e}= (\mathbf{a}+\mathbf{b}+\mathbf{c})/3\), and set \(\varphi (\mathbf{e})= \mathbf{d}\). We obtain \(\varphi (\mathbf{abc})= \mathbf{abd}\cup \mathbf{bcd}\cup \mathbf{cad}\).

If \(f=2,\; |\partial O\cap \partial \varDelta |= \mathbf{a}\mathbf{b}\mathbf{c}\cup \mathbf{b}\mathbf{c}\mathbf{d}\), we split \(\mathbf{b}\mathbf{c}\) into edges \(\mathbf{b}\mathbf{e}\) and \(\mathbf{e}\mathbf{c}\) where \(\mathbf{e}= (\mathbf{b}+\mathbf{c})/2\), we split \(\mathbf{a}\mathbf{d}\) into edges \(\mathbf{a}\mathbf{g}\) and \(\mathbf{g}\mathbf{d}\) where \(\mathbf{g}= (\mathbf{a}+\mathbf{d})/2\), and set \(\varphi (\mathbf{e})= \mathbf{g}\). Note that this scheme also splits every \(\varDelta \) triangle into two other triangles. We obtain \(\varphi (\mathbf{abc}\cup \mathbf{bcd})= \mathbf{adb}\cup \mathbf{adc}\).

If \(f=3,\; |\partial O\cap \partial \varDelta |=\mathbf{d}\mathbf{a}\mathbf{b}\cup \mathbf{d}\mathbf{b}\mathbf{c}\cup \mathbf{d}\mathbf{c}\mathbf{a}\), we split \(\mathbf{a}\mathbf{b}\mathbf{c}\) into \(\mathbf{a}\mathbf{b}\mathbf{e},\; \mathbf{b}\mathbf{c}\mathbf{e},\;\mathbf{c}\mathbf{a}\mathbf{e}\) where \(\mathbf{e}= (\mathbf{a}+\mathbf{b}+\mathbf{c})/3\), and reset \(\varphi (\mathbf{d})= \mathbf{e}\). We obtain \(\varphi (\mathbf{d}\mathbf{a}\mathbf{b}\cup \mathbf{d}\mathbf{b}\mathbf{c}\cup \mathbf{d}\mathbf{c}\mathbf{a})= \mathbf{abc}\).

In all cases, \(\varphi (|\partial O\cap \partial \varDelta |)=|\partial \varDelta \setminus \partial O|\) and \(\varphi \) is the identity in \(|\partial O\setminus \partial \varDelta |\). Since \(\partial (O\cup \{\varDelta \})= (\partial O\setminus \partial \varDelta )\cup (\partial \varDelta \setminus \partial O)\) (Lemma 3), \(\varphi (|\partial O|)= |\partial (O\cup \{\varDelta \})|\). Lastly, \(\varphi \) is a homeomorphism between \(|\partial O|\) and \(|\partial (O\cup \{\varDelta \})|\) since [9] it maps the \(|\partial O|\) vertices to distinct points (\(\varphi \) is a simplicial map).

### Appendix 3: Proof for Lemma 8

Here we show the following assertion: if \(K\) is a 3D pure simplicial complex in \(\mathbb {R}^3\) and \(\mathbf{x}\in |K|\setminus |\partial K|\), there exists a 3-ball \(B\) centered at \(\mathbf{x}\) such that \(B\subseteq |K|\).

First we study a special case: \(K=c(\{\varDelta ,\varDelta '\})\) where \(\varDelta \) and \(\varDelta '\) are two tetrahedra sharing a triangle \(t\) and \(\mathbf{x}\in t\setminus |\partial t|\). Let \(h_0, h'_0, h_1, h_2 \ldots h_6\) be the half-spaces such that \(\varDelta = h_0\cap h_1\cap h_2\cap h_3\) and \(\varDelta '= h'_0\cap h_4\cap h_5\cap h_6\) and \(h_0\cup h'_0=\mathbb {R}^3\). Let \(r= \min _{1\le i\le 6} d(\mathbf{x}, h_i)\) where \(d(\mathbf{x}, h_i)\) is the Euclidean distance between \(\mathbf{x}\) and the border plane of \(h_i\). We have \(0< r\) (otherwise \(\varDelta \) or \(\varDelta '\) is degenerate). Let \(B\) be the 3-ball centered at \(\mathbf{x}\) with radius \(r\). Since \(1\le i\le 6\) implies \(B\subseteq h_i\), we have \(B\cap h_0\subseteq \varDelta \) and \(B\cap h'_0\subseteq \varDelta '\). Thus \(B\subseteq \varDelta \cup \varDelta '= |K|\).

Then we study the general case. Since \(K\) is 3D pure, there is a tetrahedron \(\varDelta _0\in K\) such that \(\mathbf{x}\in \varDelta _0\). Since \(|\partial K|\) is closed (indeed, it is a finite union of geometric simplices), \(\mathbb {R}^3\setminus |\partial K|\) is open. Thus there is a 3-ball \(B\) centered at \(\mathbf{x}\) such that \(B\cap |\partial K|=\emptyset \). Now we show that \(B\subseteq |K|\).

Assume (reductio ad absurdum) that there is \(\mathbf{y}\in B\setminus |K|\). Let \(\mathbf{z}\in B\cap \varDelta _0\) such that line segment \(\mathbf{z}\mathbf{y}\) does not intersect the \(K\) edges. Let \(\mathbf{z}_\alpha = (1-\alpha )\mathbf{z}+\alpha \mathbf{y}\) where \(\alpha \in [0,1]\). Let \(\beta = \sup _{\mathbf{z}_\alpha \in |K|} \alpha \). Since \(\mathbf{z}_0\in |K|,\; \beta \in [0,1]\). Since \(|K|\) is closed, \(\mathbf{z}_\beta \in |K|\). There is a tetrahedron \(\varDelta \) in \(K\) such that \(\mathbf{z}_\beta \in \varDelta \). Now \(\mathbf{z}_\beta \in \varDelta \) and \(\mathbf{z}_1\notin \varDelta \) imply that there is \(\gamma \in [\beta ,1[\) such that \(\mathbf{z}_\gamma \in |\partial \varDelta |\). Since \(|\partial \varDelta |\subset |K|\), \(\gamma \le \beta \). Thus \(\gamma =\beta \) and \(\mathbf{z}_\beta \) is in a triangle \(t\) of \(\partial \varDelta \). Figure 5 shows \(B\), \(|\partial K|,\; \varDelta _0,\; \varDelta ,\; \mathbf{x},\; \mathbf{y},\;\mathbf{z}\) and \(\mathbf{z}_\beta \). Now there are two cases.

If \(t\notin \partial K,\; t=\varDelta \cap \varDelta '\) where \(\varDelta '\) is a tetrahedron in \(K\setminus \{ \varDelta \}\). Since \(\mathbf{z}_\beta \) is not in the \(K\) edges, we use the special case above and obtain a 3-ball \(B'\) centered at \(\mathbf{z}_\beta \) and included in \(|K|\). Now there is \(\alpha \in ]\beta ,1]\) such that \(\mathbf{z}_\alpha \in B'\subseteq |K|\) (impossible).

If \(t\in \partial K,\; \mathbf{z}_\beta \in t\) and \(B\cap |\partial K|=\emptyset \) imply \(\mathbf{z}_\beta \notin B\). However, \(B\) is convex and \(\{ \mathbf{z}, \mathbf{y}\}\subset B\) and \(\mathbf{z}_\beta \in \mathbf{z}\mathbf{y}\) imply \(\mathbf{z}_\beta \in B\) (impossible).

## Rights and permissions

## About this article

### Cite this article

Lhuillier, M. 2-Manifold Tests for 3D Delaunay Triangulation-Based Surface Reconstruction.
*J Math Imaging Vis* **51**, 98–105 (2015). https://doi.org/10.1007/s10851-014-0508-1

Received:

Accepted:

Published:

Issue Date:

DOI: https://doi.org/10.1007/s10851-014-0508-1