A Divide-and-Conquer Approach for Global Orientation of Non-Watertight Scene-Level Point Clouds Using 0-1 Integer Optimization
Zhuodong Li, Fei Hou, Wencheng Wang, Xuequan Lu, Ying He
TL;DR
This work tackles the challenging problem of globally orienting normals in large-scale, non-watertight scene-level point clouds. It introduces DACPO, a divide-and-conquer framework that orients each block with a randomized dipole-like initialization and an adapted iPSR using Neumann boundary conditions, followed by a global 0-1 optimization on a block adjacency graph to enforce cross-block consistency. A key novelty is the Visibile Connected Region (VCR) concept, which provides a visibility-based criterion for measuring orientation consistency between neighboring blocks across multiple viewpoints. The method demonstrates strong robustness to noise, sparsity, and weak connections on ScanNet v2 and SceneNN datasets, and shows favorable performance against propagation-based, graph-based, GWN-based, and learning-based baselines, with a scalable runtime thanks to limiting the number of blocks and efficient optimization. The provided code enables replication and further exploration of global orientation for open-scene point clouds in practical reconstruction pipelines.
Abstract
Orienting point clouds is a fundamental problem in computer graphics and 3D vision, with applications in reconstruction, segmentation, and analysis. While significant progress has been made, existing approaches mainly focus on watertight, object-level 3D models. The orientation of large-scale, non-watertight 3D scenes remains an underexplored challenge. To address this gap, we propose DACPO (Divide-And-Conquer Point Orientation), a novel framework that leverages a divide-and-conquer strategy for scalable and robust point cloud orientation. Rather than attempting to orient an unbounded scene at once, DACPO segments the input point cloud into smaller, manageable blocks, processes each block independently, and integrates the results through a global optimization stage. For each block, we introduce a two-step process: estimating initial normal orientations by a randomized greedy method and refining them by an adapted iterative Poisson surface reconstruction. To achieve consistency across blocks, we model inter-block relationships using an an undirected graph, where nodes represent blocks and edges connect spatially adjacent blocks. To reliably evaluate orientation consistency between adjacent blocks, we introduce the concept of the visible connected region, which defines the region over which visibility-based assessments are performed. The global integration is then formulated as a 0-1 integer-constrained optimization problem, with block flip states as binary variables. Despite the combinatorial nature of the problem, DACPO remains scalable by limiting the number of blocks (typically a few hundred for 3D scenes) involved in the optimization. Experiments on benchmark datasets demonstrate DACPO's strong performance, particularly in challenging large-scale, non-watertight scenarios where existing methods often fail. The source code is available at https://github.com/zd-lee/DACPO.
