jan novák

An Unbiased Ray-marching Transmittance Estimator

Markus Kettunen, Eugene d'Eon, Jacopo Pantaleoni, Jan Novák

Transaction on Graphics (Proceedings of SIGGRAPH 2021), vol. 40, no. 4

An Unbiased Ray-marching Transmittance Estimator - teaser

We propose a new unbiased Monte Carlo estimator for volumetric transmittance based on a power series expansion. The zeroth-order term in our estimator corresponds to a variant of ray marching. The higher-order terms ensure a bias-free estimate and are evaluated infrequently. The result can have multiple orders of magnitude less variance than previous work with a similar number of density evaluations.


We present an in-depth analysis of the sources of variance in state-of-the-art unbiased volumetric transmittance estimators, and propose several new methods for improving their efficiency. These combine to produce a single estimator that is universally optimal relative to prior work, with up to several orders of magnitude lower variance at the same cost, and has zero variance for any ray with non-varying extinction. We first reduce the variance of truncated power-series estimators using a novel efficient application of U-statistics. We then greatly reduce the average expansion order of the power series and redistribute density evaluations to filter the optical depth estimates with an equidistant sampling comb. Combined with the use of an online control variate built from a sampled mean density estimate, the resulting estimator effectively performs ray marching most of the time while using rarely-sampled higher-order terms to correct the bias.






    author = {Kettunen, Markus and d'Eon, Eugene and Pantaleoni, Jacopo and Nov\'{a}k, Jan},
    title = {An Unbiased Ray-marching Transmittance Estimator},
    journal = {ACM Trans. Graph.},
    issue_date = {August 2021},
    volume = {40},
    number = {4},
    month = aug,
    year = {2021},
    articleno = {137},
    url = {https://doi.org/10.1145/3450626.3459937},
    doi = {10.1145/3450626.3459937},
    publisher = {ACM},
    address = {New York, NY, USA},
    keywords = {transmittance, Poisson estimator, U-statistics, comb filter, power series}