Since the 1980s, when Monte Carlo sampling and integration techniques were adopted by the graphics community, they have become the cornerstone of most modern rendering algorithms. Originally introduced to combat the effect of aliasing when estimating pixel values, Monte Carlo has since become a more general tool for solving complex, multi-dimensional integration problems in rendering. In this context, Monte Carolo integration involves sampling a function at various stochastically placed points to approximate an integral (the radiance through a pixel integrated across the multi-dimensional space of possible light transport paths). Unfortunately, this estimation is error-prone, and the visual manifestation of this error depends critically on the properties of the integrand, placement of the stochastic sample points used, and the type of problem (integration vs. reconstruction) that is being solved with these samples.
Fourier analysis, along with the Nyquist theorem, has long been used in graphics to motivate more intelligent sampling strategies that try to minimize errors due to noise and aliasing in the pixel reconstruction problem. Only more recently, however, has the community started to apply these same Fourier tools to analyze errors in the Monte Carlo integration problem. Loosely speaking, in the context of rendering a 2D image, these two problems are concerned with errors introduced across pixels (reconstruction) vs. the errors introduced within any individual pixel (integration).
This course focuses on the latter and surveys the recent developments and insights that Fourier analyses have provided about the magnitude and convergence rate of Monte Carlo integration error. It provides a historical perspective of Monte Carlo in graphics, reviews the necessary mathematical background, summarizes the most recent developments, discusses the practical implications of these analyses on the design of Monte Carlo rendering algorithms, and identifies important remaining research problems.
|Conference||SIGGRAPH '16 ACM SIGGRAPH 2016 Courses|
|Period||24/07/16 → 28/07/16|