Occupancy-Based Dual Contouring
Jisung Hwang, Minhyuk Sung
TL;DR
This work addresses the challenge of converting neural occupancy functions into high-fidelity meshes. It introduces Occupancy-Based Dual Contouring (ODC), a learning-free method that replaces distance-based MDC components with GPU-accelerated 1D, 2D, and 3D point searches and an auxiliary 2D-point plane estimation, enabling accurate surface extraction from occupancy fields. By combining a robust line-binary search, local flat-plane modeling via 2D points, and quad-splitting polygonization, ODC achieves state-of-the-art fidelity, manifold meshes, and low self-intersection rates across multiple occupanc y models (e.g., SALAD, 3DShape2VecSet, Michelangelo, IM-NET) and a Myles mesh dataset, typically within a few seconds on modern GPUs. The approach demonstrates strong generalization to varied occupancy nets and SDF-based inputs while maintaining efficient parallelizable computation, highlighting its practical impact for 3D reconstruction and generation from implicit representations.
Abstract
We introduce a dual contouring method that provides state-of-the-art performance for occupancy functions while achieving computation times of a few seconds. Our method is learning-free and carefully designed to maximize the use of GPU parallelization. The recent surge of implicit neural representations has led to significant attention to occupancy fields, resulting in a wide range of 3D reconstruction and generation methods based on them. However, the outputs of such methods have been underestimated due to the bottleneck in converting the resulting occupancy function to a mesh. Marching Cubes tends to produce staircase-like artifacts, and most subsequent works focusing on exploiting signed distance functions as input also yield suboptimal results for occupancy functions. Based on Manifold Dual Contouring (MDC), we propose Occupancy-Based Dual Contouring (ODC), which mainly modifies the computation of grid edge points (1D points) and grid cell points (3D points) to not use any distance information. We introduce auxiliary 2D points that are used to compute local surface normals along with the 1D points, helping identify 3D points via the quadric error function. To search the 1D, 2D, and 3D points, we develop fast algorithms that are parallelizable across all grid edges, faces, and cells. Our experiments with several 3D neural generative models and a 3D mesh dataset demonstrate that our method achieves the best fidelity compared to prior works.
