jan novák

Practical Path Guiding for Efficient Light-Transport Simulation

Thomas Müller, Markus Gross, and Jan Novák

Computer Graphics Forum (Proceedings of EGSR 2017), vol. 36, no. 4

Best Paper Award

Our method allows efficient guiding of path-tracing algorithms as demonstrated in the TORUS scene. We compare renderings of our method (left, right) to the current state-of-the-art [VKv∗14,VK16] (middle). In the left image, we render with an equal sample count as the middle image. In the right image, our total time budget is the rendering time used by Vorba et al. (5.1 min) and our algorithm automatically estimates how much training is optimal, given the budget.

abstract

We present a robust, unbiased technique for intelligent light-path construction in path-tracing algorithms. Inspired by existing path-guiding algorithms, our method learns an approximate representation of the scene’s spatio-directional radiance field in an unbiased and iterative manner. To that end, we propose an adaptive spatio-directional hybrid data structure, referred to as SD-tree, for storing and sampling incident radiance. The SD-tree consists of an upper part—a binary tree that partitions the 3D spatial domain of the light field—and a lower part—a quadtree that partitions the 2D directional domain. We further present a principled way to automatically budget training and rendering computations to minimize the variance of the final image. Our method does not require tuning hyperparameters, although we allow limiting the memory footprint of the SD-tree. The aforementioned properties, its ease of implementation, and its stable performance make our method compatible with production environments. We demonstrate the merits of our method on scenes with difficult visibility, detailed geometry, and complex specular-glossy light transport, achieving better performance than previous state-of-the-art algorithms.

erratum

In the original publication, which is available in the Wiley Online Library, the comparison against the method of Vorba et al. [2014] was inaccurate. We used the authors' publicly available code that was not designed to handle two-sided BRDFs. This limitation surfaced in the KITCHEN scene introducing bias, which we incorrectly attributed to the instability of expectation-maximization used to fit GMMs. Furthermore, the implementation did not parallelize well up to the amount of threads we used in our comparisons (48). After discovering these issues, we worked closely with Sebastian Herholz and Jiri Vorba on fixing them. Unfortunately, the training component of their method still does not scale well beyond 8 threads; the training timings could thus be in theory up to 6 times faster. We updated the results in the authors' version of our paper and supplementary materials and adjusted the wording to emphasize that the differences between the two methods are smaller than reported in the original publications. We also removed the claim of the method by Dahm and Keller [2017] being biased. The authors' version contains all these improvements and is available here alongside the original publication.

downloads

publication

supplementals

code

video

presentation

citation

video

bibtex

@article{Mueller2017PathGuide,
    author    = {M\"uller, Thomas and Gross, Markus and Nov\'ak, Jan},
    title     = {Practical Path Guiding for Efficient Light-Transport Simulation},
    journal   = {Computer Graphics Forum (Proceedings of EGSR)},
    volume    = {36},
    number    = {4},
    year      = {2017},
    month     = jun,
    pages     = {91--100},
    doi       = {10.1111/cgf.13227},
    publisher = {The Eurographs Association \& John Wiley \& Sons, Ltd.},
    address   = {Chichester, UK},
}