Christian Lessig, Mathieu Desbrun, Eugene Fiume
ACM Trans. Graph. (Proceedings SIGGRAPH 2014), vol. 33, no. 4, pp. 1–14, Jul. 2014.
Lighting in a Villa interior obtained from a photon map. For each shading point in the scene, the incoming light energy density is approximated using 64 hemispherical samples. The left image is computed using classical final gathering using a low-discrepancy sequence. For the right image the same samples were employed but with an integration rule derived using our theory of sampling, providing substantially reduced visual noise and lower numerical error rates.
Sampling a scene by tracing rays and reconstructing an image from such pointwise samples is fundamental to computer graphics. To improve the efficacy of these computations, we propose an alternative theory of sampling. In contrast to traditional formulations for image synthesis, which appeal to nonconstructive Dirac deltas, our theory employs constructive reproducing kernels for the correspondence between continuous functions and pointwise samples. Conceptually, this allows us to obtain a common mathematical formulation of almost all existing numerical techniques for image synthesis. Practically, it enables novel sampling based numerical techniques designed for light transport that provide considerably improved performance per sample. We exemplify the practical benefits of our formulation with three applications: pointwise transport of color spectra, projection of the light energy density into spherical harmonics, and approximation of the shading equation from a photon map. Experimental results verify the utility of our sampling formulation, with lower numerical error rates and enhanced visual quality compared to existing techniques.
We thank Tyler de Witt and George Drettakis for helpful discussions and the anonymous reviewers for their constructive criticism. Shuoran Yang (now ETH Zürich) helped with implementing the application in Sec. 4.1 and Eric Yao (now UC Berkeley) explored the use of reproducing kernel bases for wavelet space discussed in Sec. 4 in the supplementary material. Raymond Lei wrote the python version of the tutorial code. Support by NSERC, GRAND National Centres of Excellence, and by NSF grant CCF-1011944 is gratefully acknowledged. The first author would also like to thank the computer graphics group at TU Berlin for their hospitality.