Regional Adaptive Metropolis Light Transport
Hisanari Otsu, Killian Herveau, Johannes Hanika, Derek Nowrouzezahrai, Carsten Dachsbacher
TL;DR
This work tackles the sensitivity of MCMC rendering performance to kernel parameters by introducing regional adaptive path perturbations for Metropolis Light Transport. By partitioning the path space into low-dimensional regions in a canonical space and updating per-region mutation sizes, the method achieves state-dependent proposals via lens and multi-chain perturbations, with adaptive quadtree refinement to focus updates where needed. The approach outperforms fixed and globally adaptive kernels on several scenes, demonstrating reduced sampling correlation and better detail capture. Its plug-in nature and reliance on information from the sampling process make it a practically impactful enhancement for existing MLT renderers.
Abstract
The design of the proposal distributions, and most notably the kernel parameters, are crucial for the performance of Markov chain Monte Carlo (MCMC) rendering. A poor selection of parameters can increase the correlation of the Markov chain and result in bad rendering performance. We approach this problem by a novel path perturbation strategy for online-learning of state-dependent kernel parameters. We base our approach on the theoretical framework of regional adaptive MCMC which enables the adaptation of parameters depending on the region of the state space which contains the current sample, and on information collected from previous samples. For this, we define a partitioning of the path space on a low-dimensional canonical space to capture the characteristics of paths, with a focus on path segments closer to the sensor. Fast convergence is achieved by adaptive refinement of the partitions. Exemplarily, we present two novel regional adaptive path perturbation techniques akin to lens and multi-chain perturbations. Our approach can easily be used on top of existing path space MLT methods to improve rendering efficiency, while being agnostic to the initial choice of kernel parameters.
