Source-linked AI summary
Robust Watertight Manifold Surface Generation Method for ShapeNet Models
Jingwei Huang, Hao Su, Leonidas Guibas
TL;DR
The paper addresses robust 2-Manifold generation from triangle meshes, including ShapeNet models with holes and thin structures. It builds an octree, extracts an isosurface, resolves extraction ambiguities, and projects vertices onto the original mesh. Applied to all ShapeNet models, the conversions were topologically 2-Manifolds, while about 5% contained face flips.
Problem
The paper addresses generating 2-Manifold surfaces from triangle meshes, including models with holes and thin structures.
Method
The method adaptively represents the mesh with an octree, extracts faces between positive and occupied cubes, resolves ambiguities by splitting vertices or edges, and projects vertices onto the original mesh.
Results
All converted ShapeNet models were topologically 2-Manifolds, and about 5% contained face flips, mostly caused by thin face structures in the original mesh.
Takeaways & Limitations
The method supports conversion of all tested ShapeNet models to topologically 2-Manifold surfaces while retaining a reported face-flip check.
Takeaways & Limitations
The method does not eliminate face flips in every model: about 5% contain them, mostly because of thin face structures.
Abstract
from arXiv · showhide
In this paper, we describe a robust algorithm for 2-Manifold generation of various kinds of ShapeNet Models. The input of our pipeline is a triangle mesh, with a set of vertices and triangular faces. The output of our pipeline is a 2-Manifold with vertices roughly uniformly distributed on the geometry surface. Our algorithm uses an octree to represent the original mesh, and construct the surface by isosurface extraction. Finally, we project the vertices to the original mesh to achieve high precision. As a result, our method can be adopted efficiently to all ShapeNet models with the guarantee of correct 2-Manifold topology.
1 Data Presentation
The method converts a normalized input triangle mesh into a signed distance representation, using a uniform grid or an octree to focus resolution near the zero-isosurface. The target resolution is chosen for meshes expected to contain more than 10k triangles.
- The input mesh is translated and uniformly scaled so its center is at the origin and its maximum bounding-box dimension ranges from -1 to 1.
- The signed distance representation records distance information around the zero-isosurface, where the extracted surface is located.
- 0.01 is used as the uniform-grid unit-cube length because the target mesh is expected to contain more than 10k triangles.
- An octree replaces the uniform grid, retaining fine resolution near zero distance and coarser resolution elsewhere.
2 Volume Computation
The volume-computation stage builds an adaptive octree over the normalized mesh and recursively connects neighboring nodes to support later surface extraction. Occupied regions reach the finest resolution, while empty regions remain un subdivided.
- 2.1 Build Octree: The octree starts with a root bounding box ranging from -1.1 to 1.1 in every dimension and stores all triangles in the normalized mesh.
- 2.1 Build Octree: A node is occupied when its stored triangle set is non-empty.
- 2.1 Build Octree: Each octree node stores its effective bounding box and the triangles that the box contains or intersects.
- 2.1 Build Octree: Occupied nodes are subdivided into eight children until they reach the finest resolution of 0.01, while empty nodes are not subdivided.
- 2.2 Build Connection: Connections are needed between neighboring occupied and empty nodes, including multiple-to-multiple cases caused by unequal node sizes.
- 2.2 Build Connection: Connections are built recursively across neighboring child pairs, skipping empty-empty pairs and refining occupied or unequal-size interfaces.
3 Manifold Surface Extraction
The method extracts faces between occupied and positive cubes after classifying exterior space with boundary initialization and BFS. It resolves non-manifold ambiguities by splitting vertices or edges, while the initial extraction alone is not guaranteed to be a 2-Manifold.
- Positive cubes are defined as unoccupied cubes connected to the boundary by a path containing no triangle, and BFS expands this classification from boundary cubes.
- The isosurface consists of faces between positive cubes and occupied cubes, found by recursively visiting occupied nodes and their neighbors.
- The initial generation is not guaranteed to form a 2-Manifold.
- A vertex-touching configuration creates ambiguity about volume connectivity, while an edge-sharing configuration connects four faces.
- The method removes these ambiguities by splitting a vertex into three or an edge into two, assuming volumes are always connected.
4 Projection
The projection stage improves geometric precision by moving extracted vertices toward their nearest input triangles and smoothing after each step to prevent face flips.
- Extracted vertices are projected onto the input mesh because cube-face vertices do not always lie on the original triangle mesh.
- The nearest triangle is found efficiently using the previously built relation between occupied cubes and their contained triangles.
- Vertices move iteratively toward their nearest triangles along the direction parallel to their normals with a fixed small step.
- A Laplacian smooth is applied after each step to prevent face flips.
5 Results
Across all tested ShapeNet models, the conversions produced topologically 2-Manifold surfaces, including models with holes and thin structures. About 5% contained face flips, mostly associated with thin face structures in the original mesh.
- All ShapeNet conversions were topologically 2-Manifolds, including models containing holes and thin structures.
- About 5% of models contained face flips.These flips were mostly caused by thin face structures in the original mesh.