Towards Fast and Scalable Normal Integration using Continuous Components
Francesco Milano, Jen Jen Chung, Lionel Ott, Roland Siegwart
TL;DR
This work addresses the scalability bottleneck of surface normal integration by recasting the problem as estimating relative scales across continuous surface components. Each component is independently reconstructed, and a global, inter-component optimization aligns these patches through relative scales, with an optional merging step to further reduce problem size. The approach yields state-of-the-art accuracy on standard benchmarks like DiLiGenT and demonstrates orders-of-magnitude speedups on high-resolution normal maps, while preserving discontinuities. The method combines a simple, effective component-formation heuristic with robust relative-scale optimization and outlier reweighting, offering a practical pathway to scalable, discontinuity-preserving normal integration. The authors also provide open-source code to encourage adoption and further research.
Abstract
Surface normal integration is a fundamental problem in computer vision, dealing with the objective of reconstructing a surface from its corresponding normal map. Existing approaches require an iterative global optimization to jointly estimate the depth of each pixel, which scales poorly to larger normal maps. In this paper, we address this problem by recasting normal integration as the estimation of relative scales of continuous components. By constraining pixels belonging to the same component to jointly vary their scale, we drastically reduce the number of optimization variables. Our framework includes a heuristic to accurately estimate continuous components from the start, a strategy to rebalance optimization terms, and a technique to iteratively merge components to further reduce the size of the problem. Our method achieves state-of-the-art results on the standard normal integration benchmark in as little as a few seconds and achieves one-order-of-magnitude speedup over pixel-level approaches on large-resolution normal maps.
