Many-Worlds Inverse Rendering
Ziyi Zhang, Nicolas Roussel, Wenzel Jakob
TL;DR
This work introduces a many-worlds inverse rendering framework that mitigates discontinuous visibility during geometry reconstruction by differentiating a volumetric perturbation of a surface rather than a local surface change. The method defines an extended parameter space with an occupancy field $\alpha(\mathbf{x})$ and an orientation field $\beta(\mathbf{x})$, centered on a background surface $\bar{S}$ and a perturbation distribution $S$, and derives a many-worlds derivative transport that aggregates derivatives from all hypothetical surface patches along a ray. By formulating a primal rendering that averages perturbation contributions with a scaling factor $1/s$, the approach achieves simpler implementation and faster convergence compared to silhouette-sampling or volumetric methods, while yielding a final mesh ready for relighting. The framework unifies shading and occlusion derivatives in the extended domain and demonstrates strong performance on multi-view object reconstructions, including challenging specular and obstacle-rich scenes, while acknowledging limitations like exterior-only perturbations and opportunities for richer directional perturbations in future work.
Abstract
Discontinuous visibility changes remain a major bottleneck when optimizing surfaces within a physically-based inverse renderer. Many previous works have proposed sophisticated algorithms and data structures to sample visibility silhouettes more efficiently. Our work presents another solution: instead of differentiating a tentative surface locally, we differentiate a volumetric perturbation of a surface. We refer this as a many-worlds representation because it models a non-interacting superposition of conflicting explanations (worlds) of the input dataset. Each world is optically isolated from others, leading to a new transport law that distinguishes our method from prior work based on exponential random media. The resulting Monte Carlo algorithm is simpler and more efficient than prior methods. We demonstrate that our method promotes rapid convergence, both in terms of the total iteration count and the cost per iteration.
