We have introduced a new class of non-linear filters that reduces sampling noise while preserving energy and important image features. In two example applications we have shown that such a filter may be used to clean up unconverged sections of a Monte Carlo image, or reduce artifacts in a hybrid deterministic and stochastic ray tracing system.
The new filtering technique has particular significance for physically-based rendering, where image accuracy is a key goal. Its energy preserving nature means none of the calculations are thrown away, and the filter's non-linear response is critical in a floating-point domain where sample values may differ by several orders of magnitude. Also, the characteristic of minimal disruption guarantees that converged pixels will not be adversely affected.
The key underlying theme in this paper is choosing between what is correct and what is acceptable in a physically-based rendering. The eye's relative sensitivity to high frequency noise tends to undermine the application of Monte Carlo techniques, since reducing variance in some parts of an image can be extremely expensive. Instead, we can recognize these areas as being inadequately sampled, and use a variable-width kernel to reconstruct them in a way that maintains overall accuracy without offending the eye. Our goal is to be as correct as possible and still be acceptable to the viewer. Since acceptability is such a subjective measure, it is difficult to say when and whether an optimal kernel has been found, but the general approach of scaling kernel width to target a specific variance seems to work quite well.
It is our hope that this new class of filters will help broaden the practical applications of Monte Carlo techniques in rendering by removing one of its principal drawbacks: image noise.