Abstract
Although many adaptive sampling and reconstruction techniques for Monte Carlo (MC) rendering have been proposed in the last few years, the case for which one should be used for a specific scene is still to be made. Moreover, developing a new technique has required selecting a particular rendering system, which makes the technique tightly coupled to the chosen renderer and limits the amount of scenes it can be tested on to those available for that renderer. In this paper, we propose a renderer-agnostic framework for testing and benchmarking sampling and denoising techniques for MC rendering, which allows an algorithm to be easily deployed to multiple rendering systems and tested on a wide variety of scenes. Our system achieves this by decoupling the techniques from the rendering systems, hiding the renderer details behind an API. This improves productivity and allows for direct comparisons among techniques originally developed for different rendering systems. We demonstrate the effectiveness of our API by using it to instrument four rendering systems and then using them to benchmark several state-of-the-art MC denoising techniques and sampling strategies.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Anderson, L., Li, T.-M., Lehtinen, J., Durand, F.: Aether: An embedded domain specific sampling language for Monte Carlo rendering. ACM Trans. Graph. 36(4), 99:1–99:16 (2017). https://doi.org/10.1145/3072959.3073704
Baker, S., Scharstein, D., Lewis, J., Roth, S., Black, M., Szeliski, R.: Middlebury Flow Accuracy and Interpolation Evaluation. http://vision.middlebury.edu/flow/eval/ (2011). Accessed 4 Mar 2018
Baker, S., Scharstein, D., Lewis, J.P., Roth, S., Black, M.J., Szeliski, R.: A database and evaluation methodology for optical flow. IJCV 92(1), 1–31 (2011)
Bako, S., Vogels, T., Mcwilliams, B., Meyer, M., Novák, J., Harvill, A., Sen, P., Derose, T., Rousselle, F.: Kernel-predicting convolutional networks for denoising Monte Carlo renderings. ACM Trans. Graph. 36(4), 97:1–97:14 (2017)
Barron, J.L., Fleet, D.J., Beauchemin, S.S.: Performance of optical flow techniques. IJCV 12(1), 43–77 (1994)
Bauszat, P., Eisemann, M., Eisemann, E., Magnor, M.: General and robust error estimation and reconstruction for Monte Carlo rendering. Comput. Graph. Forum 34(2), 597–608 (2015)
Bitterli, B., Rousselle, F., Moon, B., Iglesias-Guitián, J.A., Adler, D., Mitchell, K., Jarosz, W., Novák, J.: Nonlinearly weighted first-order regression for denoising Monte Carlo renderings. Comput. Graph. Forum 35(4), 107–117 (2016)
Buck, I., Foley, T., Horn, D., Sugerman, J., Fatahalian, K., Houston, M., Hanrahan, P.: Brook for GPUs: stream computing on graphics hardware. ACM Trans. Graph. 23(3), 777–786 (2004)
Chaitanya, C.R.A., Kaplanyan, A.S., Schied, C., Salvi, M., Lefohn, A., Nowrouzezahrai, D., Aila, T.: Interactive reconstruction of Monte Carlo image sequences using a recurrent denoising autoencoder. ACM Trans. Graph. 36(4), 98:1–98:12 (2017)
Cook, R.L., Porter, T., Carpenter, L.: Distributed ray tracing. In: Proceedings of SIGGRAPH ’84, pp. 137–145
Delbracio, M., Musé, P., Buades, A., Chauvier, J., Phelps, N., Morel, J.M.: Boosting Monte Carlo rendering by ray histogram fusion. ACM Trans. Graph. 33(1), 8:1–8:15 (2014)
Erofeev, M., Gitman, Y., Vatolin, D., Fedorov, A., Wang, J.: Videomatting. http://videomatting.com/ (2014). Accessed 4 Mar 2018
Erofeev, M., Gitman, Y., Vatolin, D., Fedorov, A., Wang, J.: Perceptually motivated benchmark for video matting. In: Xie, X., Jones, M.W., Tam, G.K.L. (eds.) BMVA Press Proceedings, pp. 99.1–99.12 (2015)
Hachisuka, T., Jarosz, W., Weistroffer, R.P., Dale, K., Humphreys, G., Zwicker, M., Jensen, H.W.: Multidimensional adaptive sampling and reconstruction for ray tracing. ACM TOG 27(212), 1 (2008)
Heck, D., Schlömer, T., Deussen, O.: Blue noise sampling with controlled aliasing. ACM Trans. Graph. 32(3), 25:1–25:12 (2013)
Jakob, W.: Mitsuba renderer. http://www.mitsuba-renderer.org (2010). Accessed 4 Mar 2018
Kajiya, J.T.: The rendering equation. SIGGRAPH’86 20(4), 143–150 (1986)
Kalantari, N.K., Bako, S., Sen, P.: A machine learning approach for filtering Monte Carlo noise. ACM Trans. Graph. 34(4), 122:1–122:12 (2015)
Kalantari, N.K., Sen, P.: Removing the noise in Monte Carlo rendering with general image denoising algorithms. Comput. Graph. Forum 32(2pt1), 93–102 (2013)
Lee, M.E., Redner, R.A.: Filtering: a note on the use of nonlinear filtering in computer graphics. IEEE Comput. Graph. Appl. 10(3), 23–29 (1990)
Li, T.M., Wu, Yt, Chuang, Yy: SURE-based optimization for adaptive sampling and reconstruction. ACM Trans. Graph. 31, 1 (2012)
Mark, W.R., Glanville, R.S., Akeley, K., Kilgard, M.J.: Cg: a system for programming graphics hardware in a c-like language. ACM Trans. Graph. 22(3), 896–907 (2003)
Moon, B., Carr, N., Yoon, S.E.: Adaptive rendering based on weighted local regression. ACM Trans. Graph. 33(5), 170:1–170:14 (2014)
Mullapudi, R.T., Adams, A., Sharlet, D., Ragan-Kelley, J., Fatahalian, K.: Automatically scheduling halide image processing pipelines. ACM Trans. Graph. 35(4), 83:1–83:11 (2016)
Pharr, M., Humphreys, G.: Physically Based Rendering, from Theory to Implementation, 2nd edn. Morgan Kaufmann, Los Altos (2010)
Pharr, M., Jakob, W., Humphreys, G.: Physically Based Rendering, from Theory to Implementation, 3rd edn. Morgan Kaufmann, Los Altos (2016)
Ragan-Kelley, J., Adams, A., Paris, S., Levoy, M., Amarasinghe, S., Durand, F.: Decoupling algorithms from schedules for easy optimization of image processing pipelines. ACM Trans. Graph. 31(4), 32:1–32:12 (2012)
Ren, P., Wang, J., Gong, M., Lin, S., Tong, X., Guo, B.: Global illumination with radiance regression functions. ACM Trans. Graph. 32, 1 (2013)
Rhemann, C., Rother, C., Wang, J., Gelautz, M., Kohli, P., Rott, P.: Alpha matting evaluation website. http://www.alphamatting.com/eval_25.php (2009). Accessed 4 Mar 2018
Rhemann, C., Rother, C., Wang, J., Gelautz, M., Kohli, P., Rott, P.: A perceptually motivated online benchmark for image matting. In: CVPR, pp. 1826–1833 (2009)
Rousselle, F., Knaus, C., Zwicker, M.: Adaptive sampling and reconstruction using greedy error minimization. ACM Trans. Graph. 30(6), 159:1–159:12 (2011)
Rousselle, F., Knaus, C., Zwicker, M.: Adaptive rendering with non-local means filtering. ACM Trans. Graph. 31(6), 195:1–195:11 (2012)
Rousselle, F., Manzi, M., Zwicker, M.: Robust denoising using feature and color information. Comput. Graph. Forum 32(7), 121–130 (2013)
Rushmeier, H.E., Ward, G.J.: Energy preserving non-linear filters. In: Proceedings of SIGGRAPH ’94, pp. 131–138 (1994)
Samet, H.: Sorting in space: multidimensional, spatial, and metric data structures for computer graphics applications. In: ACM SIGGRAPH ASIA 2010 Courses, SA ’10, pp. 3:1–3:52 (2010)
Scharstein, D., Szeliski, R.: A taxonomy and evaluation of dense two-frame stereo correspondence algorithms. IJCV 47(1–3), 7–42 (2002)
Scharstein, D., Szeliski, R., Hirschmüller, H.: Middlebury Stereo Vision Page. http://vision.middlebury.edu/stereo/ (2002). Accessed 4 Mar 2018
Sen, P., Darabi, S.: Implementation of Random Parameter Filtering. Tech. Rep. EECE-TR-11-0004, University of New Mexico (2011)
Sen, P., Darabi, S.: On filtering the noise from the random parameters in Monte Carlo rendering. ACM Trans. Graph. 31(3), 1–15 (2012)
Stein, C.M.: Estimation of the mean of a multivariate normal distribution. Ann. Stat. 9(6), 1135–1151 (1981)
Veach, E., Guibas, L.J.: Metropolis light transport. In: Proceedings of SIGGRAPH ’97, pp. 65–76 (1997)
Zwicker, M., Jarosz, W., Lehtinen, J., Moon, B., Ramamoorthi, R., Rousselle, F., Sen, P., Soler, C., Yoon, S.E.: Recent advances in adaptive sampling and reconstruction for Monte Carlo rendering. Comput. Graph. Forum 34(2), 667–681 (2015)
Acknowledgements
The authors thank Matt Pharr, Greg Humphreys, and Wenzel Jakob for making the source code of PBRT-v2, PBRT-v3, and Mitsuba publicly available. We also thank the authors of the following techniques for kindly providing their source code: LBF, RHF, LWR, RDFC, RPF, SBF, NLM, GEM. The following individuals and institutions provided the scenes used in the paper: Martin Lubich (Crown), Cem Yuksel (Curly Hair), Jesper Lloyd (Toy Gyro), Wojciech Jarosz (Chess), Andrew Kensler (Toasters), Bernhard Vogl and Stanford CG Lab (Furry Bunny), Mareck (Bathroom), aXel (Glass of Water), Jay-Artist (Country Kitchen), Beeple (Measure One), Anat Grynberg and GregWard (Conference), Duc Nguyen, Ron Fedkiw, and Nolan Goodnight (Smoke).
Funding
This work was funded by CAPES and CNPq-Brazil (fellowships and Grants 306196/2014-0 and 423673/2016-5), and US National Science Foundation Grants IIS-1321168 and IIS-1619376.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors Jonas Deyson B. Santos, Pradeep Sen, and Manuel M. Oliveira declare they have no conflict of interest.
Additional information
This work was sponsored by CAPES and CNPq-Brazil (fellowships and Grants 306196/2014-0 and 423673/2016-5), as well as US National Science Foundation Grants IIS-1321168 and IIS-1619376.
Rights and permissions
About this article
Cite this article
dos Santos, J.D.B., Sen, P. & Oliveira, M.M. A framework for developing and benchmarking sampling and denoising algorithms for Monte Carlo rendering. Vis Comput 34, 765–778 (2018). https://doi.org/10.1007/s00371-018-1521-y
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00371-018-1521-y