“…Other, more complicated, visibility constraints are also used and found to be necessary in practice: for example, a surface patch that partially occludes another one, without occluding an actual 3D point, is rejected. Such visibility constraints were used in [7], were a surface mesh is built incrementally, starting with a mesh obtained by a Delaunay triangulation in one view, and then rejecting and adding triangles based on visibility constraints of one additional view after the other. We proceed differently, by iteratively adding new triangles to manually or automatically selected seed triangles, and thus by letting a mesh grow, directly ensuring all available visibility constraints (and other constraints, see below).…”