Rendu raliste en synthse dimages Lancer de rayons
- Slides: 105
Rendu réaliste en synthèse d’images. Lancer de rayons stochastique
Organisation l Lancer de rayons stochastique – Intégration de Monte Carlo l – – Exemple sur l’éclairage direct Résolution de l’équation de la luminance Optimisation l Carte de photons
Lancer de rayon classique l Un rayon d’ombre par point l Sources lumineuses approximées par un point l Ombres dures
Solution exacte l l Ombres douces Sources étendues != Sources ponctuelles
Plus d’échantillons? l l Approximer la source par plusieurs points Aliasing sur les ombres (Effet marche d’escalier)
Equation V(x, y)=? qx x rxy y l qy l Intégration analytique très difficile Utilisation de techniques numériques : Monte Carlo
Intégration numérique l Intégration numérique d'intégrale simple a b
Intégration déterministe l Intégration déterministe par quadrature : a Ne marche que sous certains conditions : fonctions dérivables, dimensions du problème pas trop élevé b
Intégration de Monte Carlo l Estimation de la valeur d’une intégrale – – Échantillonner N points suivant une densité de probabilité p(x) L’estimateur est une moyenne pondérée des valeurs de la fonction à chaque échantillon
Variable aléatoire continue l Variable aléatoire X l Fonctions de répartition : probabilité que la variable aléatoire soit inférieure ou égal à x l Densité de probabilité
Exemple : taille d’un individu l Densité de probabilité 120 160 190 230
Densité de probabilité uniforme l Densité uniforme a a’ b’ b P(x) : probabilité que x appartienne à [a’, b’]
Échantillonnage selon une densité l Choisir une densité de probabilité p(x) 1 0 0 1
Échantillonnage selon une densité l Choisir une densité de probabilité p(x). 1 l Intégrer pour obtenir une fonction de répartition P(x): 0 0 1
Échantillonnage selon une densité l Choisir une densité de probabilité normalisée p(x). l Intégrer pour obtenir une fonction de répartition P(x): l Inverser P(x) : x = P-1( ) échantillonné avec une densité uniforme entre 0 et 1 1 0 0 1
Échantillonnage selon une densité l Choisir une densité de probabilité normalisée p(x). 1 l Intégrer pour obtenir une distribution de probabilité P(x): 0 Inverser P(x) : x = P-1( ) 0 1 Transforme un échantillonnage uniforme vers échantillonnage non uniforme l
Illumination directe ’ V(x, y)=? qx x y l Génération de points aléatoires sur la source l Évaluation de l'intégrale avec ces points qy rxy
Illumination directe 1 rayon d'ombre 9 rayons d'ombre
Illumination directe 36 rayons d'ombre 100 rayons d'ombre
Échantillonnage stratifié l Objectif – l Réduction de la variance. Principe – Découpage du domaine d'intégration 0 1
Échantillonnage stratifié l Objectif – l Réduction de la variance. Principe – – Découpage du domaine d'intégration Estimateur 0 1
Échantillonnage stratifié l Application à 2 dimensions N 2 échantillons Échantillons arbitrairement proches Problème pour les dimensions supérieures
Échantillonnage stratifié 9 rayons d'ombre uniformes 9 rayons d'ombre stratifiés
Échantillonnage stratifié 36 rayons d'ombre uniformes 36 rayons d'ombre stratifiés
Échantillonnage stratifié 100 rayons d'ombre uniformes 100 rayons d'ombre stratifiés
Echantillonnage stratifié l Application aux dimensions supérieures Échantillonnage stratifié en en grille Nd Echantillons Échantillonnage des N reines N Echantillons
9 échantillons Uniforme Stratifié N reines
36 échantillons Uniforme Stratifié N reines
Plusieurs sources lumineuses l L’intégrale ne change pas : au lieu d’intégrer sur la surface de la source, on intègre sur les surfaces des sources lumineuses. l La densité pour sélectionner les points est modifié : d’abord on sélectionne une source S avec la densité p(S) puis un point sur S avec p(y|S)
Plusieurs sources lumineuses 36 rayons d’ombres par pixels dans les deux images mais densité de probabilité différentes
Application aux pixels l Calcul de la luminance au centre du pixel : aliassage l Utilisation d'un filtre … … évalué par intégration de Monte Carlo.
Application aux pixels l Tout type d'échantillonnage envisageable
Implantation 1 rayon / pixel 10 rayons / pixel 100 rayons / pixel
Implantation l Comparaison : 1 rayon centré par pixel 100 rayons d'ombre aléatoires par intersection 100 rayons aléatoires par pixel 1 rayons d'ombre aléatoire par intersection
Équation du rendu l Évaluation de l'équation du rendu – Comment écrire l'équation du rendu et l'évaluer par intégration de Monte Carlo? – Quelle densité de probabilité utiliser pour l'équation du rendu? – Algorithmes et résultats
Équation du rendu
Équation du rendu
Calcul de la luminance l Comment évaluer L ? – Trouver Le(x ) – Ajouter L=?
Calcul de la luminance l Comment évaluer Li ? – Intégration de Monte Carlo – Générer des directions aléatoires sur Wx, en utilisant la densité de probabilité p( )
Calcul de la luminance l Échantillonnage de l'hémisphère
Calcul de la luminance l Générer une direction aléatoire i Evaluer la brdf Evaluer le cos(…) Evaluer L(x¬ i)
Calcul de la luminance l l Evaluation de L(x¬ i) ? La radiance est constante sur la direction de propagation. rc(x, i) = premier point visible. L(x¬ i) = L(rc(x, i)
Calcul de la luminance l Évaluation récursive l Chaque rebond ajoute un niveau d'éclairage indirect.
Arrêt de la récursivité l Quand arrêter la récursivité ? Les contributions des ordres de réflexions élevés sont négligeables. Si on les ignore, les estimateurs sont biaisés !
Roulette russe l Roulette russe – En pratique, définition d'un coefficient d'absorption a l l – Probabilité a que le rayon soit absorbé. La luminance deviens L/(1 -a). Exemple : a=0. 9 (1. 0 - moyenne de la réflectance) l l Un rayon sur 10 est réfléchit. La luminance estimée sur un rayon réfléchi est multipliée par 10.
Roulette russe l Estimateur non biaisé l Espérance de l’estimateur est toujours correcte l Plus grande variance l Mais plus efficace
Tracé de chemins l Algorithme – – – Lancer N rayons par pixels A chaque intersection avec une surface, lancer 1 rayon distribués sur l'hémisphère pour évaluer l’équation de la luminance Terminer la récursivité par roulette russe
Tracé de chemins 1 rayon/pixel 16 rayons/pixel 256 rayons/pixel Très bruité : contribution nulle tant que le chemin n’a pas atteint une source lumineuse!!
Tracé de chemins
Tracé de chemins
Tracé de chemins
Tracé de chemins
Tracé de chemins
Tracé de chemins
Tracé de chemins
Tracé de chemins
Tracé de chemins
Tracé de chemins
Tracé de chemins • Améliorer l’algorithme en séparant l’intégrale en deux parties
Tracé de chemins
Tracé de chemins l Conclusion – Évaluer différemment l'éclairage direct et indirect
Algorithme
Algorithme
Algorithme
Algorithme
Algorithme
Algorithme
Comparaison Sans calcul d'éclairage direct Avec calcul d'éclairage direct 16 rayons/pixel
Comparaison 1 rayon/ pixel 4 rayons/ pixel 16 rayons/ pixel 256 rayons/ pixel
Limitations l Chemins tracés en sens inverse de la lumière l Ne prends pas bien en compte tous les effets l Bruit sur les caustiques
Limitations Tracé de chemins : 1000 chemins par pixel
Tracé de chemins lumineux l Tracer des chemins des sources lumineuse plutôt que de l’œil l Permet de bien prendre en compte les caustiques et l’éclairage indirect l Mais pas les réflexions!!!
Tracé de chemins lumineux
Tracé de chemins bidirectionnels l Trace un chemin des sources lumineuses et un chemin de l’œil l Connecte les chemins à chaque sommets l Très coûteux mais prend en compte quasiment tous les effets
Tracé de chemins bidirectionnels
Tracé de chemins bidirectionnels Tracé de chemins classique
1 L, 2 E 1 L, 3 E 1 L, 4 E 2 L, 1 E 3 L, 1 E 4 L, 1 E
Carte de photons l Algorithme fondé sur l’estimation de densité l Approche similaire au tracé de chemins bidirectionnel – « cache » des chemins lumineux
Estimation de densité par noyau l Méthode statistique l Ensemble de données issues d’un processus aléatoire l Estimer la densité de probabilité de ce processus
Estimation de densité par noyau l Relation entre densité de probabilité et éclairement – par définition : – Exprimé par rapport au flux :
Estimation de densité par noyau l l l N photons d’énergie lancé dans la scène Le flux s incident sur une surface s’exprime Probabilité qu’un photon Pi heurte une surface A
Estimation de densité par noyau l La densité de probabilité des photons est proportionnelle à l’éclairement
Estimation de densité par noyau Ensemble de n données observées
Estimation de densité par noyau La densité estimée par la moyenne de n fonctions noyaux centrées sur chaque donnée observée Fonction noyau K unitaire, symétrique et à support compact
Estimation de densité par noyau La densité estimée par la moyenne de n fonctions noyaux centrées sur chaque donnée observée Fonction noyau K unitaire, symétrique et à support compact
Estimation de densité par noyau Le paramètre de lissage h contrôle le compromis biais/variance
Estimation de densité par noyau Le paramètre de lissage h contrôle le compromis biais/variance Biais Variance
Application à l’éclairage global l l Lancer de photons Photons – – l l Position Énergie Processus aléatoire = lancer de photons Données observées = photons
Estimation de l’éclairement l Densité des photons proportionnelle à l’éclairement incident l Éclairement estimé en un point – – Approche scène : estimé par sommet ou par texel Approche image : estimé par pixel
Mise en oeuvre Jensen (96) Visualisation directe de la carte de photons (6 min)
Mise en oeuvre Walter (98) Éclairage global par estimation de densité linéaire: 8 h
Approche classique • La fonction noyau est à support local et symétrique : disque en 2 D • Localiser les k photons qui sont à une distance h du point d’estimation
Approche duale • L’éclairement estimé en un grand nombre de points • Pour chaque photon, localiser les points d’estimation à la distance h, et leur ajouter la contribution du photon
Approche duale en pratique l Par texture – – l Estimation réalisée dans l’espace texture très efficace Peu évident à généraliser Par maillage triangulaire connecté – – Plus général Plus coûteux
Performance l Résultats équivalents entre approche duale et classique l Photons accédés linéairement – Permet de gérer plus facilement ce grand volume de donnés
Biais sur les bords l Fuite d’énergie sur les bords des surfaces
Biais sur les bords l l Estimation de densité évalue la fonction à zéro en dehors de la surface Biais vers zéro sur les bords
Corriger le biais sur les bords l Méthode de réflexion – l Réfléchir les données sur les bords Utilisation de noyaux frontières – – Noyaux qui s’adaptent au bord (ne sont plus symétriques) Calculs complexes
Triangles fantômes l Étendre la surface pour rajouter de l’information
Triangles fantômes l Surfaces étendues sur leurs bords – – – l Trouver le contour Déplacer le contour Trianguler la bande formée par les deux contours Déplacement proportionnel au paramètre de lissage
Triangles fantômes l l Lancer de photons modifié pour prendre en compte les triangles fantômes Un photon n’est pas arrêté par un triangle fantôme mais un photon est ajouté
Triangles fantômes l Réduit le biais sur les bords – l Nécessite des calculs géométriques Augmente la complexité géométrique – Dépend du paramètre de lissage => Dépend du nombre de photons
Carte de Photons 100000 photons, 50 photons pour l’estimateur
Carte de Photons 500000 photons, 500 photons pour l’estimateur
Carte de Photons l Photons stockés dans un Kd-Tree balancé pour accélérer le calcul des N plus proches voisins l Photons séparés en deux groupes : caustiques et globales l Limité par la mémoire
- Banque dimages phonologie
- Nouvelle réaliste définition
- Synthse
- Synthse
- Master isicg
- Ligne de kerley
- First man made fiber
- Lancer monument
- Courir sauter lancer
- Tupac starry night poem
- Lancer en translation definition
- Compte rendu informatif
- Exemple de rapport de visite de terrain
- Compte rendu de supervision
- Aymeric menard
- Compte rendu intervention maintenance
- Compte rendu définition
- Exemple compte rendu radiologique
- Compte rendu coaching
- Les types de compte rendu
- 2070 en lettre
- Poid apparent formule