,
, Calculer la partition des pixels
, Évaluer les statistiques d'échantillons de chaque cluster par path tracing
, Comparer les statistiques avec le cache
, Appliquer un filtrage bayésien sur les clusters
, Interpoler les clusters pour obtenir l'image d'irradiance indirecte
, En effet, on effectue quatre tris (parallélisés sur GPU) sur l'ensemble des pixels. Le coût de cette étape commence à être conséquent (de l'ordre de 100 ms) en résolution 4K, même si on reste dans des temps interactifs. Si l'on vise de très fortes résolutions, de l'antialiasing, ou l'emploi de cartes graphiques moins performantes
, Ceci est dû à notre partition des pixels, qui se base sur les valeurs de G-buffer qui sont fondamentalement des données victimes d'aliasing. Une solution simple à ce problème consiste à augmenter la résolution de rendu puis à le sous-échantillonner par une moyenne finale. Cela est rendu possible par le fait que l'on décorrèle la résolution de l'éclairage indirect de celle du rendu final, mais il faut toutefois prendre garde à ce que l, Notre algorithme ne gère pas naturellement l'anti-aliasing (comme on peut l'observer par exemple dans les textures de la figure 5.1)
, mouvement ne sont pas non plus gérés naturellement. L'utilisateur intéressé devra se contenter des méthodes approchées (fondées sur le G-buffer) appliquées en post-traitement, telles que celles utilisées dans les jeux vidéo d'aujourd'hui
, En effet, plus le matériau est spéculaire, plus la radiance gagne en fréquence spatiale et directionnelle. Les clusters se doivent alors d'être de plus en plus petits, si bien que l'on en vient à perdre tout l'intérêt de la méthode
,
, Si on laisse évoluer un rendu où rien ne bouge, celui-ci a tendance à fluctuer plutôt qu'à converger. À chaque nouvelle image, une partie des clusters semble trouver que la valeur d'éclai-rage calculée est trop éloignée des valeurs en cache et invalident en trop grande partie celles-ci. Nous avons essayé de limiter artificiellement cet effet en appliquant à ?(T ) (mesure de l'erreur, cf. section 5.4.5) une transformation affine transformant son ensemble de valeurs possibles, Au point où en sont nos recherches, celui-ci ne fonctionne pas aussi bien que ce que nous espé-rions
, Cela permet d'assurer une meilleure convergence (et donc une meilleure qualité d'image) au prix d'un temps de réaction aux changements dans la scène plus important (latence). C'est une astuce proche de celles qui sont couramment employées dans les méthodes de rendu interactif pour assurer artificiellement un minimum de cohérence temporelle, Cela permet par exemple d'imposer qu'un minimum de 35 % du poids des valeurs en cache est réutilisé pour la frame suivante, si l'on choisit ? = 0.65
, Nous ne cherchons pas à converger vers une solution parfaite non biaisée, mais plutôt à donner au plus vite un aperçu relativement fidèle à la vérité terrain, visuellement convaincant, et Nous nous sommes reposés sur le théorème central limite pour émettre une hypothèse de distribution gaussienne de la moyenne des échantillons, s'ils sont en nombre suffisant. La plupart du temps, nous avons donc pris en compte la donnée des échantillons par le biais de moyennes et de matrices de covariance empiriques, qui nous servaient d'estimateurs des paramètres des lois gaussiennes. Une exception à cela a été l'emploi d'histogrammes des échantillons pour comparer des patchs. Ceux-ci ne sont rien d'autre que des représentations discrètes de la loi des échantillons (et non pas de la moyenne des échantillons), que nous avons supposées plus représentatives de la nature, Discussion et travaux futurs Notre méthode a pour objectif une prévisualisation interactive de l'éclairage indirect de scènes dynamiques
, On peut alors penser à les remplacer par d'autres modèles tels que les Fourier histogram descriptors, Les histogrammes présentent des inconvénients, du fait de leur caractère discret et un peu trop rigide
, Dans les cas les plus difficiles, on peut très bien imaginer que même en moyennant beaucoup d'échantillons, on n'atteigne pas facilement la convergence vers une loi gaussienne. Dans cette situation intermédiaire, la loi de la moyenne est peut-être modéli-sable par un mélange de gaussiennes, Il est possible que les lois des échantillons soient trop complexes pour être représentables efficacement par des modèles plus simples
, on pourrait s'affranchir des contraintes de temps et d'occupation mémoire en considérant l'intégralité des échantillons récoltés dans les calculs de débruitage, sans les réduire à des covariances, des histogrammes ou d'autres modèles. Même s'il y a un risque d'obtenir un algorithme beaucoup plus lent et même s'il ne passe pas à l'échelle vis-à-vis du nombre d'échantillons, ce type d'expérimentation pourrait être très, Pour voir jusqu'à quel point on peut pousser les résultats obtenus en ne se fondant que sur les échantillons
, Par exemple, les Radiance regression functions [RWG + 13] permettent, après une phase d'apprentissage sur la scène, de visualiser en temps réel l'éclairage global d'une géométrie statique, avec des lumières et un contrôle de la caméra dynamiques, par l'intermédiaire de réseaux de neurones. La méthode Learning-based filtering [KBS15] avec laquelle nous nous comparons dans le chapitre 4 se fonde elle aussi sur un apprentissage statistique en pré-calcul pour filtrer des rendus de Monte-Carlo, ce qui lui permet d'obtenir de très bons résultats même avec un très, Apprentissage statistique L'apprentissage statistique (machine learning en anglais) est à l'heure actuelle un domaine de recherche très actif, et qui peut fournir des outils très intéressants à appliquer au rendu
il est de même possible d'employer des outils d'apprentissage statistique sans utiliser le G-buffer, en ne se fondant que sur les échantillons. Par exemple, la loi de probabilité complexe des échantillons, ou du moins certaines de ses caractéristiques, pourraient être apprises. On pourrait aussi décider si deux pixels ou patchs sont de même nature par une forme de classification binaire ,
, Le sous-domaine de l'apprentissage par renforcement a précisément pour objet la constitution de modèles et leur évolution à mesure que des données sont récoltées ; certaines de ses théories ou outils pourraient s'avérer utiles pour des techniques de mise en cache ou pour de l'échantillonnage adaptatif, par exemple. A RÉSULTATS ADDITIONNELS POUR Bayesian Collaborative Denoising Méthodes comparées Pour chaque scène
, Robust Denoising using Feature and Color Information
Weighted Local Regression ,
Learning Based Filtering ,
, Ray Histogram Fusion
,
, Scènes Les rendus sont effectués sur les scènes suivantes : ? SANMIGUELDOF (256spp) Scène relativement complexe avec de la profondeur de champ
Scène assez sombre, avec une unique source de lumière directionnelle, et qui nécessite la prise en compte de multiples rebonds ,
, ? TEAPOTMETAL (64spp) Scène simple avec des matériaux spéculaires
Scène contenant plusieurs caustiques, rendue par Photon Mapping (toutes les autres scènes sont rendues par un simple path tracing) ,
Scène identique à SPONZADIR, mais avec un modèle doré additionnel, qui engendre des caustiques et de nombreux pics lumineux ,
, SIBENIKCAR (256spp) Scène avec des matériaux hautement spéculaires (voiture et sol)
Identique à SIBENIKCAR, mais avec un flou de mouvement sur la voiture ,
, Toutes les images ont une résolution 1024 × 1024
Fast high-dimensional filtering using the permutohedral lattice, Computer Graphics Forum, vol.29, issue.2, pp.753-762, 2010. ,
Gaussian kdtrees for fast high-dimensional filtering, ACM Trans. Graph, vol.28, issue.3, 2009. ,
Quantized point-based global illumination, Comput. Graph. Forum, vol.31, issue.4, pp.1399-1405, 2012. ,
URL : https://hal.archives-ouvertes.fr/hal-02286387
A non-local algorithm for image denoising, Proc CVPR, pp.60-65, 2005. ,
General and robust error estimation and reconstruction for monte carlo rendering, Comput. Graph. Forum, vol.34, issue.2, pp.597-608, 2015. ,
Sample-based manifold filtering for interactive global illumination and depth of field, Comput. Graph. Forum, vol.34, issue.1, pp.265-276, 2015. ,
Guided image filtering for interactive high-quality global illumination, Proceedings of the Twenty-second Eurographics Conference on Rendering, EGSR '11, pp.1361-1368, 2011. ,
Blender -a 3D modelling and rendering package. Blender Foundation ,
Nonlinearly weighted first-order regression for denoising monte carlo renderings, Computer Graphics Forum (Proceedings of EGSR), vol.35, issue.4, 2016. ,
Point-based approximate color bleeding, Pixar, 2004. ,
The path to path-traced movies. Foundations and Trends R in Computer Graphics and Vision, vol.10, pp.103-175, 2016. ,
CloudLight : A system for amortizing indirect lighting in real-time rendering, Journal of Computer Graphics Techniques (JCGT), vol.4, issue.4, pp.1-27, 2015. ,
Interactive indirect illumination using voxel cone tracing. Computer Graphics Forum (Proceedings of Pacific Graphics, p.30, 2011. ,
URL : https://hal.archives-ouvertes.fr/hal-00650173
Real-time edge-aware image processing with the bilateral grid, ACM Trans. Graph, vol.26, issue.3, 2007. ,
Fast bilateral filtering for the display of highdynamic-range images, ACM Trans. Graph, vol.21, issue.3, pp.257-266, 2002. ,
Instant caching for interactive global illumination, Computer Graphics Forum, vol.28, issue.8, pp.2216-2228, 2009. ,
Recursively implementating the Gaussian and its derivatives, INRIA, 1993. ,
URL : https://hal.archives-ouvertes.fr/inria-00074778
Image denoising with block-matching and 3d filtering, Proc. SPIE, vol.6064, 2006. ,
Scalable realistic rendering with many-light methods, Comput. Graph. Forum, vol.33, issue.1, pp.88-104, 2014. ,
Progressive light transport simulation on the gpu : Survey and improvements, ACM Trans. Graph, vol.33, issue.3, 2014. ,
Boosting monte carlo rendering by ray histogram fusion, ACM Trans. Graph, vol.33, issue.1, 2014. ,
Reflective shadow maps, Proceedings of the 2005 Symposium on Interactive 3D Graphics and Games, I3D '05, pp.203-231, 2005. ,
Edge-avoiding À-trous wavelet transform for fast global illumination filtering, Proc. HPG, pp.67-75, 2010. ,
Flash photography enhancement via intrinsic relighting, ACM Trans. Graph, vol.23, issue.3, pp.673-678, 2004. ,
URL : https://hal.archives-ouvertes.fr/inria-00510164
Dachsbacher c. : Octahedron environment maps, Proc. of Vision, Modelling and Visualization, pp.383-388, 2008. ,
Temporal radiance caching, ACM SIGGRAPH 2008 Classes, SIGGRAPH '08, vol.68, pp.1-68, 2008. ,
URL : https://hal.archives-ouvertes.fr/inria-00461493
Nikolaus Binder, and Ken Dahm. Path space similarity determined by fourier histogram descriptors, ACM SIGGRAPH 2014 Talks, SIGGRAPH '14, vol.39, pp.1-39, 2014. ,
Light transport simulation with vertex connection and merging, ACM Trans. Graph, vol.31, issue.6, pp.1-192, 2012. ,
Adaptive manifolds for real-time high-dimensional filtering, ACM Trans. Graph, vol.31, issue.4, pp.1-33, 2012. ,
Progressive photon mapping, ACM Trans. Graph, vol.27, issue.5, 2008. ,
Manylods : Parallel many-view level-of-detail selection for real-time global illumination, Computer Graphics Forum (Proc. EGSR, vol.30, issue.4, pp.1233-1240, 2011. ,
Guided image filtering, Proceedings of the 11th European Conference on Computer Vision : Part I, ECCV'10, pp.1-14, 2010. ,
Global illumination using photon maps, Proc. EGSR, pp.21-30, 1996. ,
Parallel multiple-bounce irradiance caching, Computer Graphics Forum, vol.35, issue.4, pp.57-66, 2016. ,
The rendering equation, Proc. SIGGRAPH, vol.20, pp.143-150, 1986. ,
A machine learning approach for filtering monte carlo noise, ACM Trans. Graph, vol.34, issue.4, 2015. ,
Joint bilateral upsampling, ACM Trans. Graph, vol.26, issue.3, 2007. ,
Instant radiosity, Proceedings of the 24th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH '97, pp.49-56, 1997. ,
Radiance caching for efficient global illumination computation, IEEE Transactions on Visualization and Computer Graphics, vol.11, issue.5, pp.550-561, 2005. ,
URL : https://hal.archives-ouvertes.fr/inria-00461512
Gradient-domain path tracing, ACM Trans. Graph, vol.34, issue.4, 2015. ,
Removing the noise in Monte Carlo rendering with general image denoising algorithms, Computer Graphics Forum, vol.32, issue.2, 2013. ,
A nonlocal bayesian image denoising algorithm, SIAM Journal on Imaging Sciences, vol.6, issue.3, pp.1665-1688, 2013. ,
Secrets of image denoising cuisine, Acta Numerica, vol.21, pp.475-576, 2012. ,
Forward light cuts : A scalable approach to real-time global illumination, Compurer Graphics Forum (Proc. EGSR 2016), vol.35, pp.79-88, 2016. ,
Gradient-domain metropolis light transport, ACM Trans. Graph, vol.32, issue.4, 2013. ,
Bi-directional path tracing, Proc. SIG-GRAPH, pp.145-153, 1993. ,
Sure-based optimization for adaptive sampling and reconstruction, ACM Trans. Graph, vol.31, issue.6, pp.1-194, 2012. ,
Adaptive rendering based on weighted local regression, ACM Trans. Graph, vol.33, issue.5, 2014. ,
Petrik Clarberg, Magnus Andersson, and Tomas Akenine-Möller. Texture space caching and reconstruction for ray tracing, ACM Transactions on Graphics, vol.35, issue.6, 2016. ,
Adaptive rendering with linear predictions, ACM Trans. Graph, vol.34, issue.4, 2015. ,
Toward practical real-time photon mapping : Efficient gpu density estimation, Proceedings of the ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games, I3D '13, pp.71-78, 2013. ,
Adaptive polynomial rendering, ACM Trans. Graph, vol.35, issue.4, 2016. ,
Improved sampling for gradient-domain metropolis light transport, ACM Trans. Graph, vol.33, issue.6, 2014. ,
Photon splatting using a view-sample cluster hierarchy, Proceedings of High Performance Graphics, HPG '16, pp.75-85, 2016. ,
Clustered deferred and forward shading, Proceedings of the Fourth ACM SIGGRAPH / Eurographics Conference on High-Performance Graphics, EGGH-HPG'12, pp.87-96, 2012. ,
, BIBLIOGRAPHIE, vol.133
Optix : A general purpose ray tracing engine, ACM Transactions on Graphics, 2010. ,
A fast approximation of the bilateral filter using a signal processing approach, Int. J. Comput. Vision, vol.81, issue.1, pp.24-52, 2009. ,
Physically Based Rendering, Second Edition : From Theory To Implementation, 2010. ,
, Cuckoo hashing. J. Algorithms, vol.51, issue.2, pp.122-144, 2004.
Digital photography with flash and no-flash image pairs, ACM Trans. Graph, vol.23, issue.3, pp.664-672, 2004. ,
DOI : 10.1145/1015706.1015777
URL : http://www.cs.toronto.edu/~zemel/Courses/CS2541/Papers/petschnigg.pdf
Whitted ray-tracing for dynamic scenes using a ray-space hierarchy on the gpu, Proceedings of the 18th Eurographics Conference on Rendering Techniques, EGSR'07, pp.99-110, 2007. ,
URL : https://hal.archives-ouvertes.fr/hal-00171587
The state of the art in interactive global illumination, Comput. Graph. Forum, vol.31, issue.1, pp.160-188, 2012. ,
Adaptive sampling and reconstruction using greedy error minimization, ACM Trans. Graph, vol.30, issue.6, 2011. ,
DOI : 10.1145/2070752.2024193
Adaptive rendering with non-local means filtering, ACM Trans. Graph, vol.31, issue.6, 2012. ,
DOI : 10.1145/2366145.2366214
Global illumination with radiance regression functions, Computer Graphics Forum, vol.32, issue.7, pp.121-130, 2013. ,
Clustered pre-convolved radiance caching, Proceedings of the 14th Eurographics Symposium on Parallel Graphics and Visualization, PGV '14, pp.25-32, 2014. ,
On filtering the noise from the random parameters in monte carlo rendering, ACM Trans. Graph, vol.31, issue.3, 2012. ,
Preconvolved radiance caching, Comput. Graph. Forum, vol.31, issue.4, pp.1391-1397, 2012. ,
DOI : 10.1111/j.1467-8659.2012.03134.x
Sung-Eui Yoon, and Nima Khademi Kalantari. Denoising your monte carlo renders : Recent advances in imagespace adaptive sampling and reconstruction, ACM SIGGRAPH 2015 Courses, SIGGRAPH '15, vol.11, pp.1-11, 2015. ,
Bilateral filtering for gray and color images, Proc. ICCV, pp.839-846, 1998. ,
DOI : 10.1109/iccv.1998.710815
Metropolis light transport, Proc. SIGGRAPH, Proc. SIGGRAPH, pp.65-76, 1997. ,
DOI : 10.1145/258734.258775
Image quality assessment : from error visibility to structural similarity, IEEE Transactions on, vol.13, issue.4, pp.600-612, 2004. ,
Lightcuts : A scalable approach to illumination, ACM Trans. Graph, vol.24, issue.3, pp.1098-1107, 2005. ,
Factorized point-based global illumination, Computer Graphics Forum (Special Issue on EGSR, vol.32, issue.4, pp.117-123, 2013. ,
DOI : 10.1111/cgf.12157
URL : https://hal.archives-ouvertes.fr/hal-01117124
Wavelet point-based global illumination, Proceedings of the 26th Eurographics Symposium on Rendering, EGSR '15, pp.143-153, 2015. ,
DOI : 10.1111/cgf.12686
URL : https://hal.archives-ouvertes.fr/hal-01253664
Microfacet models for refraction through rough surfaces, Proceedings of the 18th ,
, Eurographics Conference on Rendering Techniques, EGSR'07, pp.195-206, 2007.
A ray tracing solution for diffuse interreflection, SIGGRAPH Comput. Graph, vol.22, issue.4, pp.85-92, 1988. ,
Interactive rendering with coherent ray tracing, Computer Graphics Forum, vol.20, issue.3, pp.153-165, 2001. ,
Embree : A kernel framework for efficient cpu ray tracing, ACM Trans. Graph, vol.33, issue.4, pp.1-143, 2014. ,
A novel monte carlo noise reduction operator, IEEE Comput. Graph. Appl, vol.25, issue.2, pp.31-35, 2005. ,
Fast 4d sheared filtering for interactive rendering of distribution effects, ACM Transactions on Graphics, vol.35, issue.1, p.7, 2015. ,
A perceptual metric for production testing, ACM SIGGRAPH 2004 Sketches, SIGGRAPH '04, p.121, 2004. ,
Real-time o(1) bilateral filtering, Computer Vision and Pattern Recognition, pp.557-564, 2009. ,
Pradeep Sen, Cyril Soler, and Sung-Eui Yoon. Recent advances in adaptive sampling and reconstruction for monte carlo rendering, Computer Graphics Forum (Proceedings of Eurographics), vol.34, pp.667-681, 2015. ,
,
, Rendus photo-réaliste et non-photo-réaliste
,
,
,
, , vol.18
,
,
, Notations employées dans l'équation du rendu
, Exemples de filtres sur une image bruitée
, , p.54
, Caractérisation de la nature des pixels par leurs distributions d'échantillons, p.59
Vue d'ensemble de Bayesian Collaborative Denoising (diagramme), p.63 ,
, , p.65
, Résultats et comparaison à Ray Histogram Fusion
, Exemple de filtrage avec notre algorithme Bayesian Collaborative Denoising, p.77
Influence du paramètre principal ? sur la qualité du débruitage, p.78 ,
Comparaison avec d'autres méthodes sur une scène spéculaire, p.79 ,
, Résultat sur une scène avec un milieu participant
,
,
, , p.82
, Lien entre qualité du débruitage et nombre d'échantillons par pixel, p.83
, Exemple de résultat obtenu avec notre algorithme Dynamic Bayesian Caching, p.85
, Vue d'ensemble de notre algorithme Interactive Monte Carlo Ray Tracing Upsampling (diagramme)
, Vue d'ensemble de notre algorithme Dynamic Bayesian Caching (diagramme), p.96
,
, Les quatre partitions de pixels effectuées dans notre algorithme, p.100
,
, Décomposition du résultat pour une scène diffuse
, Décomposition du résultat pour une scène spéculaire
,
Résultats additionnels : scène SANMIGUELDOF ,
,
Résultats additionnels : scène SIBENIKCRASH ,
Comparaison de mesures de temps et de qualité entre notre méthode (BCD) et d'autres algorithmes de débruitage récents ,
,
, Effet de la parallélisation CPU et GPU sur le temps de calcul total, p.75
, Effet du paramètre ? sur le temps de calcul total
Vue d'ensemble de Bayesian Collaborative Denoising (pseudo-code), p.66 ,