DESS R.S.I. option Imagerie Techniques avanc´ees de...

40
DESS R.S.I. option Imagerie Techniques avanc´ ees de rendu Pascal Mignot Cours No3 : – Le photon mapping 1

Transcript of DESS R.S.I. option Imagerie Techniques avanc´ees de...

Page 1: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

DESS R.S.I.

option Imagerie

Techniques avancees de renduPascal Mignot

Cours No3 :

– Le photon mapping

1

Page 2: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Introduction

Probleme avec les algorithmes de lance de rayon

• les versions monodirectionnelles donnent des solutions incompletes(forward : reflet des objets, backward : caustiques).

• les versions bidirectionnelles donnent des solutions completesmais sont complexes a construire (combinatoire, perturbation,... et toujours destinees a echouer dans certains cas particuliers).

• les informations issues des autres rayons ne sont pas (ou peu)utilisees.

Idees

1. stocker les contributions directement a la surface des objets.

2. pour connaıtre la contribution en un point, regarder ce qui sepasse autour.

Ces deux idees sont develloppees dans le photon mapping.

Principe du photon mapping

On procede en deux passes :

premiere passe : lancer des rayons depuis les sources de lumiere. Achaque intersection, stocker le photon et continuer la propaga-tion des photons si la surface est speculaire.

⇒ particle tracing (RT avant)

seconde passe : ray-tracing classique en partant depuis l’œil, saufqu’a chaque intersection, on ajoute la contribution associee a ladensite des photons “accroches” a la surface autour du pointd’intersection.

⇒ ray tracing (arriere)

conclusion :⇒ On construit ainsi de maniere agreable et

facile la majorite des trajets bidirectionnels.

2

Page 3: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Notation de Heckbert etendue

Extremites des cheminsL source de lumiere.E oeil.

Transports

Modes de transport

D = diffus G = glossy(brillant)

S = speculaire(tres directionnel)

Modificateurs (a ajouter en indice)r transport par reflexion sur la surface.t transport par transmission a travers la surface.

ExempleSr transport speculaire reflechi (mirroir).St transport speculaire transmis (transparence).S transport speculaire quelconque (Sr ou St).

Caractere generiqueX = D ou G ou S

Composition| addition de mode de transport (Sr|St)+ addition d’expressions plus longue (LDE + LDSE)

RepetitionsX∗ repetition de X un nombre quelconque de fois (0 compris).X+ repetition de X au moins une fois.Xk repetition k fois de X.Xk+ repetition de X au moins une fois et jusqu’a k fois.

Sens du transport donne par le sens de la chaıne :LX∗ ensemble des chemins partant de la lumiereEX∗ ensemble des chemins partant de l’œil

3

Page 4: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Premiere passeParticule tracing

On effectue un particule tracing classique en stockant lesphotons :

• on part des sources de lumiere.

• lors d’une intersection,

– si la surface est D ou G, on stocke le photon dansla carte.

– si la surface est G ou S, on poursuit le chemin.cas distribue : si on relance p photons (photons absorbes

compris), diviser l’energie des photons renvoyes par p.

cas roulette russe : ne pas changer l’energie renvoyee (equi-librage automatique).

note : on autorise les rebonds diffus dans le cas ou on sou-haite ameliorer le rendu de l’illumination diffuse.

– on arrete de relancer des photons lorsque une lon-gueur maximale de chemin est atteinte ou quel’energie du photon a relancer est trop faible (clas-sique).

Note sur le cas speculaire parfait :

• on ne stocke pas les photons speculaires (bien que leursenergies soient grandes), car ceux-ci sont tres directionnels.On a donc que peu de chance de les observer, et cela de-manderait trop de photons pour reussir a avoir une precisionraisonnable.

• il est preferable de gerer les chemins speculaires depuisl’œil. Ces contributions seront donc ajoutees lors de ladeuxieme passe en suivant les chemins speculaires depuisl’observateur.

4

Page 5: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Carte des photons

Carte des photons :– c’est un tableau contenant en vrac l’ensemble des

photons.– elle stocke l’ensemble des photons incidents. Elle

represente une approximation de l’ensemble desenergies incidentes Lin.

– les trajets stockes dans la carte sont les trajetsL(G|S) ∗ (D|G).

Caracteristique d’un photon Φ : il est defini par le tri-plet (x, φ, ω) ou :– x est sa position– φ est son energie– ω est sa direction incidente sur la surface.

Lien entre photons et light path– on stocke un photon a chaque sommet de la tra-

jectoire du light path (i.e. un seul light path =plusieurs photons).

– une fois stocke, le photon ne fait plus aucunereference au light path qui l’a genere.

Par la suite, on notera :

Nφ le nombre total de photons contenus dans lacarte et generes par tous les chemins.

Φi = (xi, φi, ωi) fera reference au ieme photon decette carte (i ∈ 1, ...,Nφ).

5

Page 6: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Stockage des photonsStructures de donnees

Le photon mapping utilise typiquement des millions dephotons. Il est donc necessaire :

– de trouver une structure de donnees adaptee de facona minimiser la place de stockage de tous les photons.

– de trouver une facon efficace de stocker ces structuresde facon a y faciliter les recherches.

Structure de donnees associee a un photon

position xi = (x, y, z) du photon.

On les stocke tels quel sous la forme d´un tableau x[.] de 3 float

(3 × 4 octets).

puissance φi = (vr, vg, vb) du photon.

On utilise 4 unsigned char (cr, cg, cb, e) (4 octets) grace au sto-ckage de Ward.

r etant positif, il s’ecrit sous la forme m.2e ou 12≤ m ≤ 1 et

e est un entier relatif. Pour les trois valeurs, on stocke alorsl’exposant du plus grand, et les mantisses relativement a la plusgrande mantisse.

(cr, cg, cb, ce) = rgb2ward(vr, vg, vb)v = maxvr, vg, vbsi v < 10−32

alors cr=cg=cb=ce=0sinonm = frexp(v,&e)s = 256.m/vcr = vr ∗ scg = vg ∗ scb = vb ∗ sce = e+ 128

(vr, vg, vb) = ward2rgb(cr, cg, cb, ce)si ce = 0alors vr=vg=vb=0sinons = ldexp(1./256, ce − 128)vr = (cr + 0.5) ∗ svg = (cg + 0.5) ∗ svb = (cb + 0.5) ∗ s

6

Page 7: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Stockage des photonsStructure de donnees associee a un photon (2)

vecteur ωi = (u, v, w) normalise de la direction arrivee duphoton en xi.Soit (θ, ϕ) la conversion de ce vecteur en coordonnees spheriques.On stocke ces deux angles sous forme d’un couple (θc, ϕc) d’unsignedchar (2 octets) en utilisant le fait que θ ∈ [0,2π[ et ϕ ∈ [0, pi] :

(θc, ϕc) = vect2spher(u, v, w)θ = atan2(v, u)ϕ = acos(w)θc = 256 ∗ θ/2πϕc = 256 ∗ ϕ/π

(u, v, w) = spher2vect(θc, ϕc)u = sc[θc][ϕc][0]v = sc[θc][ϕc][1]w = sc[θc][ϕc][2]

ou sc est un tableau float detaille 256 × 256 × 3 initialisecomme suit :

for i = 0 a 255for j = 0 a 255θ = i/256. ∗ 2πφ = j/256. ∗ πsc[i][j][0] = cos θ sinφsc[i][j][1] = sin θ sinφsc[i][j][2] = cosφ

un flag (un octet ou un short) destine a stocker :– l’axe de subdivision choisi (2 bits) dans le cas ou on stocke

l’arbre sous forme de tableau (cf. Jensen).– les etats particuliers du photon (avance).

Structure complete : float x[3]unsigned char θc, ϕcunsigned char cr, cg, cb, ceshort int flag

Balance entre memoire et vitesse :

• ne pas compresser la place de stockage d’un photon peuconduire a un besoin excessif de memoire.

• compresser la structure permet d’utiliser plus de photonmais fait perdre de la vitesse (necessite de decompresser).

⇒ voir la partie sur l’optimisation7

Page 8: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Seconde passeCollecte des photons

On utilisation d’un lanceur de rayon modifie pour utiliserles cartes de photons. On collecte les contributions le longdu trajet du rayon :

luminance Collecting(point A, direction u)P = point d’intersection du rayon (A,u) avec la sceneLrDG(P,−u) = Luminance estimee a partir de la carte.Ru = vecteur reflechi de −u en PLrS(P,−u) = ρs(P,−u,Ru).Collecting(P,Ru)retourner Le + LrDG + LrS

version alternative : utiliser un ray-tracer stochastique et relancer

des rayons S + G (attention a la reconstruction).

Trajets reconstruits :trajets stockes dans la carte :

– les photons stockes sont de type D ou G.– les photons relances sont de type G ou S.Par consequent, la carte stocke les chemins L(G|S) ∗ (D|G)

trajets suivis depuis l’observateur : ES∗totalite des trajets suivis : il y a deux cas :

– soit le trajet aboutit a un objet sans luminance propre :ES ∗ (D|G)(G|S) ∗ L

– soit le trajet aboutit a une source de lumiere : ES ∗ L

⇒ A chaque intersection, l’ensemble des trajets reconstruitsdependent de l’historique des photons trouves autour decelle-ci.

On reconstruit facilement des chemins tres complexes

– Tous les chemins E(G|S) ∗ L sont potentiellement geres, alorsque les chemins S∗ semblaient negliges dans la premiere etapede construction de la carte (aucun photon stocke sur lessurfaces S).

– Aucun trajet contenant deux D n’est gere. De tels trajetsauraient un cout tres lourd s’ils sont geres sans discernement.

8

Page 9: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Difference avec les methodesclassiques

Exemple de trajets geres

S

SS

D

G

G

G

L

E

Trajet reconstruit avec l’exemple ci-contre :

EDSL + EDGL + EDSSL + EDGGL

Si l’observateur voit ce meme point enreflet sur la sphere (ES), le trajet recons-truit devient :

ESDSL+ESDGL+ESDSSL+ESDGGL

Les ombres sont automatiquement gerees

D

D

G

G

G

L

E

Les ombres meme pour les sourcesnon ponctuelles sont correctementgerees. Ci-contre n’apparaıssent que leschemins L(D|G). La densite locale desphotons est proportionnelle a la quantitede lumiere recue. Le trajet depuis l’œiln’a donc aucun rayon d’ombre a lan-cer.

Les rayons objets transparents sont correctement geresL

E

Le trajet des rayons d’ombre estdirect vers la source de lumiere.On ne tient pas compte de ladeviation dans les objets trans-parents.

L

E

On collecte le photon exacte-ment la ou il arrive : l’intensitedes ombres et la position descaustiques sont correctes.

9

Page 10: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Calcul de la luminance reflechiereconstruction de la fonction de luminance (1)

On rappelle que la luminance reflechie s’ecrit :

Lr(x, ωout) =

∫Ωin(x)

ρ(x, ωin, ωout).Lin(x, ωin). cos θin.dωin

Or, la separation des chemins D, G et S suppose que laBRDF peut s’ecrire sous la forme :

ρ = ρDG + ρS

afin d’etre en mesure de les evaluer independament. Laluminance reflechie s’ecrit alors :

Lr = LrDG + LrS

Evaluation de LrSρs(x, ωin, ωout) est la partie directionnelle de la reflexion,autrement dit, elle est nulle partout, sauf dans la directionreflechie Rout de ωout :

ρS(.) = kS(.).δRout(.)

ou δ est la distribution de Dirac et kS decrit le comporte-ment local de la surface (depend de la fonction de Fres-nel). Donc :

LrS(x, ωout) =

∫Ωin(x)

kS(.).δRout(.).Lin(.). cos θin.dωin

= kS(x, ωout,Rout).Lin(x, ωout,Rout)

On evalue Lin(x, ωout,Rout) dans la fonction Collectinggrace aux appels recursifs dans la direction Rout.

10

Page 11: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Calcul de la luminance reflechiereconstruction de la fonction de luminance (2)

Evaluation de LrDG

LrDG(x, ωout) =

∫Ωin(x)

ρDG(x, ωin, ωout).Lin(x, ωin). cos θin.dωin

or

Lin(x, ωin) =d2Φin(x, ωin)

cos θin.dωin.dSind’ou

LrDG(x, ωout) =

∫Ωin(x)

ρ(x, ωin, ωout).d2Φin(x, ωin)

cos θin.dωin.dSin. cos θin.dωin

=

∫Ωin(x)

ρ(x, ωin, ωout).d2Φin(x, ωin)

dSin

Interpretation :

On rappelle que le flux est directement la somme des energies dechaque photon recus par unite de temps. En regime permanent (sil’intensite des sources ne change pas), le nombre de photons recu parunite de temps dt est constant, au moins au sens de ce qui est percupar notre œil.

Si on suppose que la carte des photons est construite pendant unintervalle dt, la somme des energies des photons de la carte representeune mesure du flux.

Or, d2Φin/dSin est l’energie des photons recue par unite de surface

autour de x. Autrement dit, on retrouve bien ici l’idee de densite

locale de l’energie des photons.

11

Page 12: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Analogie avec l’estimation d’unedensite de probabilite

On cherche a reconstruire une densite de probabilite p(x)a partir d’un echantillon xi de taille N tire aleatoirementsuivant cette loi.

Par construction, en notant x[i] l’echantillon trie parordre croissant, on devrait avoir approximativement (pen-ser au cas ou p est une loi uniforme) :

∫ x[i+1]

x[i]

p(x).dx 1

N

(ceci n’est vrai qu’enmoyenne puisque lesvariables sont aleatoires)

Pour ameliorer la robustesse, on souhaite utiliser plus depoints. Soit Vk(x) la taille de l’intervalle autour de x qu’ilfaudrait prendre pour “capturer” k points de l’echantillon.Alors ∫

Vk(x)p(x).dx k/N

En supposant p(x) approximativement constant sur Vk(x),

p(x).|Vk(x)| = k/N ⇒ p(x) =k

N.|Vk(x)|

Cette methode d’estimation de p(x) s’appelle la methodedes k-plus-proches voisins.

12

Page 13: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Estimation de la radiancea partir de la densite des photons

Les faits :• la fonction a reconstruire n’est pas une densite de probabilite.

• tous les photons n’ont pas le meme “poids” (k/N pour un pointd’un echantillon, proportionnel a son energie φi pour un photon).

• soit y le point vers lequel l’energie reflechie est emise (ωout ∝ xy).La contribution du photon Φi a la luminance recue en y devraitetre : ρ(xi, ωi, xiy).φi

• la fonction ρ est potentiellement discontinue en x (par exempledans le cas d’une texture).

Hypotheses :H1 l’energie emise par x ressemble a l’energie emise autour de x par

les photons Φi qui s’y trouve (estimation avec les k-ppv).

H2 pour tous ces photons Φi, on suppose que l’energie est recue enx (et non en xi).

H3 la surface est plane autour de x.

H4 afin de faciliter les recherches, les k-ppv sont cherches dans lasphere centree en x.

Estimation :Sous ces hypotheses, on estime la luminance reflechie comme :

LrDG(x, ωout) =

∑xi∈Vk(x) ρ(x, ωi, ωout).φi

|Vk(x)|ou |Vk(x)| est l’aire du plus petit voisinage sur la surface autour de

x contenant k photons.

L’hypothese H3 implique que Vk(x) est un cercle centre en x. Parconsequent, si Rk(x) est le rayon de la plus petite sphere centre en xqui capture k voisins :

|Vk(x)| = π.Rk(x)2

13

Page 14: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Convergence de l’estimateur

Remarque importante :

L’estimation ne depend pas du nombre dephotons presents dans la carte.

⇒ seule une normalisation de l’energie des photons permet

d’interpreter apres le calcul la luminance calculee (voir la

partie sur la variance de l’estimateur).

Comportement de l’estimateur :

– on augmente la robustesse de l’estimateur en augmen-tant le nombre k de voisins.

– on augmente la precision de l’estimation en augmentantle nombre NΦ de photon.

Comment choisir k en fonction de NΦ ?On ne sait pas : aucun resultat pratique sur ce sujet, a

part les conditions de convergence.

Convergence de l’estimateur

Des resultats de statistique montrent que les conditionsnecessaires et suffisantes pour qu’un tel estimateur convergesont : ⎧⎪⎨

⎪⎩NΦ → ∞k → ∞k/NΦ → 0

Exemple : k =√NΦ ou k = logNΦ.

14

Page 15: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Maitrise de la variance del’estimateur

Important : La variance de Lout est directement propor-tionnelle a la variance de l’energie des differents photons.

Consequence : la variance de l’energie des photons doitetre maintenue aussi petite que possible.

⇒ faire en sorte que les photons soient de meme puissance et restent

comparables.

Sens pratique :

generation des photons,

Revoir la page 24 du cours 2. Soit Φej le flux emis par la jeme

source. Alors pour generer N photons, on repete N fois laprocedure suivante :

1. selectionner la source suivant la loi Φej/

∑kΦek.

2. Tirer un point au hasard sur la surface de cette source.

3. Tirer une direction d’emission au hasard (suivant la loicos θ).

4. L’energie du photon est∑

kΦek/N (constante independante

de la source choisie).

Eventuellement, le tirage de la position et de la direction d’emissionpeut dependre des caracteristiques de la source.

echantillonnage de la BRDF,

Les BRDFs ρ doivent si possible coıncider avec leurs fonctionsd’echantillonnage (i.e. ideal si egale a ρ/

∫ρ).

Dans le cas contraire, la reflexion des photons ne respecte pasexactement la repartition d’energie effectivement renvoyee parla surface.

15

Page 16: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Estimation de la radianceimpact des hypotheses H2 et H3

Probleme des surfaces non planes (H3 non verifie)

x

xi

xj

La distance et l’aire dependent de la geometrie locale dela surface :

distance(x, y) = longueur de la corde tendue sur la sur-face entre x et y.

boule(x, r) = ensemble des points y tq distance(x, y) < r.

Par consequent, une boule n’est un cercle que sur unesurface plane.

Se souvenir egalement que toute surface non plane peut engendrerde l’auto-ombrage.

Problemes induits par la translation des xi en x (H2)• Si on utilise la BRDF en xi plutot qu’en x, le resultat observe

dependra de l’aire apparente de Vk(x) telle qu’elle sera transmisea l’observateur (eventuellement apres plusieurs rebonds) :– si elle est plus grande que celle d’un pixel, le moyennage

des valeurs donnera une impression de flou pour les surfacestexturees.

– si elle est inferieure a celle d’un pixel, le rendu sera correctet anti-aliase.

Pour des raisons de simplicite, il a donc ete decide d’utiliser toutle temps x (ce qui ne justifie que dans le premier cas).

• Les deviations d’angle engendrees peuvent etre importante etprovoquer des problemes de rendu, notamment lorsque le rap-port entre Rk(x) et la distance du trajet du rayon n’est pasfaible.

Erreur en reception

xxi

yi ωi

ωiω′i

L’energie recue par le point xidepuis le point yi est differentede l’energie recue par le pointx depuis yi (cas a gerer).

Erreur en emission

xxi

y ωi

ωiω′i

Inversement, l’energie emisepar le point x vers le point y estdifferente de l’energie emisepar le point xi vers y.

16

Page 17: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Estimation de la radianceimpact de l’hypothese H4

Cette hypothese est importante :– independance de la geometrie locale de la surface (malgres H3).– accelere le processus de recherche des k-ppv.

Problemes surfaciques :

cas ideal

probleme de discontinuiteLa methode des k-ppv est initialement des-tinee a estimer des densitees continues. Orle passage d’une zone non eclairee a unezone eclairee est souvent brutal (caustiqueou source de petite taille).

solutions :– Calculer l’enveloppe convexe des k-ppv, utiliser son aire a la

place de celle de Vk(x), tester si x appartient a l’envellopeconvexe de ses k-ppv.

– Utiliser une technique de filtrage (voir ci-apres).

probleme des surfaces non planaires

L’utilisation de la sphere provoque l’utilisa-tion, en cas de changement brutal de l’orien-tation de la surface, de photons qui devraientetre ignores, provoquant ainsi un biais.

solutions :– applatir la sphere en ellipsoide pour privilegier les photons

tangents a la surface.– tester si le produit scalaire | xxi.N| < ε : c’est la distance dexi au plan (x,N).

17

Page 18: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Estimation de la radianceimpact de l’hypothese H4 (2)

Problemes volumiques :

cas des surfaces minces opaques

Des photons de l’autre cote de la surface setrouvent inclus dans la sphere associee au voi-sinage de x.

solution : utiliser le produit scalaire N.ωi > 0 pour determinerles photons eligibles pour participer aux k-ppv (i.e.l’estimation se fait avec k photons valides).

Insuffisant dans certains cas :Pas de methode pratique pour gerer ce cas :on deconseille l’utilisation de surfaces minces. x

cas des surfaces translucides : les surfaces translucides stoc-

kent des photons des deux cotes (glossy).

Cette fois-ci, il faut tenir compte des photonsde l’autre cote de la surface puisque ceux-cisont visibles par transparence.

cas des surfaces minces et translucides

Il faut etre en mesure de differentier si le photon est colle a lasurface sur l’exterieur ou l’interieur de l’objet.

Idee : utiliser un bit supplementaire d par photon(0/1=dedans/dehors). On peut alors differentierl’ensemble des cas (exemple : si x dehors et N toujoursoriente vers l’exterieur de l’objet, choisir les photons telsque ωi.N > 0 et d = 1 ou tels que ωi.N < 0 et d = 0).

18

Page 19: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Probleme de recherche des k-ppvStructure de decoupage d’espace (1)

On utilise un kd-tree (=BSP dans ce cas) equilibre.

1

2

3

4

2

3

3 3

4

A chaque nœud,– l’espace est divise dans la direction (x, y ou z)

ou l’ensemble des photons est le plus etale.– le plan de subdivision est defini par le photon

median (temps lineaire) : les sous-ensemblesont la meme taille.

Algorithme de construction :

kdtree *kdBalanced( PhotonSet S )

trouver le cube englobant les photons de S.choisir l’axe sur lequel le cube est le plus large.trouver le photon median de S.S1 = ensemble des photons en-dessous du median.S2 = ensemble des photons au-dessus du median.creer un nouveau nœud :

nœud.data = pointeur sur le median.nœud.axis = axe de subdivision.nœud.left = kdBalanced( S1 )nœud.right = kdBalanced( S2 )

renvoyer nœud

Notes sur gestion des ensembles de photons :

– Utiliser un tableau ptr de NΦ pointeurs sur les photons.– Un PhotonSet = ptr + une plage d’indice id, ..., if contigue.– Construire les ensembles = permuter des pointeurs entre S1

et S2 dans les plages correspondants.

19

Page 20: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Probleme de recherche des k-ppvStructure de decoupage d’espace (2)

Simplification : on peut limiter la distance de recherche a une

certaine constante D (voir la partie sur l’optimisation).

Algorithme de recherche des k-ppv : renvoie les k (auplus) voisins les proche situes a une distance maximale de D.

locate photon(kdtree *Tree, point P , pile Heap)

(* parcours de l’arbre *)si Tree est un nœudalors

(* distance orthogonale du point P au plan desubdivision *)

δ = P [Tree→axis] − Tree→data.x[Tree→ axis](* appel recursif dans le sous-espace qui contient P,

et dans l’autre s’il est assez proche du plan desubdivision *)

si δ < 0alors locate photon(Tree→left,P ,Heap)

si (δ2 < Heap.d2) alors locate photon(Tree→right,P ,Heap)sinon locate photon(Tree→right,P ,Heap)

si (δ2 < Heap.d2) alors locate photon(Tree→left,P ,Heap)

(* traitement du photon courant *)δ2 = distance(Tree→data.x,P)2

si δ2 < Heap.d2

si Heap est pleinealors supprimer le point le plus loin dans Heapinserer Tree→data dans HeapHeap.d2 = point le plus loin de P dans Heap.

Notes :– Heap est une pile a k cases initialisee a vide. Au retour, elle contient

la liste des k-ppv voisins (au plus), ainsi que la distance maximalea laquelle se trouve les voisins (Heap.d2).

– implementation efficace de Heap en utilisant des “priority queues”afin de gerer efficacement les insertions/suppressions et les calculsde la plus grande distance dans la pile (cf Jensen).

20

Page 21: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Estimation de densite adaptativeprobleme avec la methode des k-ppv

Classiquement,l’estimation d’une densite surfacique ρ(x) = N(x)/|S(x)|se fait :– soit a nombre fixe N(x) = k pour tout x, S(x) est

alors la plus petite surface (convexe) contenant k pointsautour de x (estimation de type k-ppv).

– soit a surface S(x) d’aire fixe |S(x)| = a pour tout x,N(x) est alors le nombre de points contenu dans S(x)(estimation de type histogramme).

Transpose dans notre cas,dans le cas des k-ppv,– dans les regions de forte densite, on obtient une meilleure

adaptation a la fonction de luminance en cas de varia-tion rapide.

– dans les regions de faible densite, le voisinage Vk(x)devient etendu. L’estimation n’est alors plus locale (despoints tres lointains x peuvent participer a la densite dex). La recherche des k voisins est plus couteuses car ilfaut parcourir une grande partie de l’espace, et cecipour estimer au final une luminance faible (perte detemps).

dans le cas de l’histogramme,– dans les regions de forte densite, on obtient des concen-

trations tres importantes. La precision des details estdirectement liee a la surface choisie.

– dans les regions de faible densite, la taille du voisinageetant fixe, on capture de moins en moins de photon aufur et a mesure ou la densite diminue.

21

Page 22: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Estimation de densite adaptativeLa methode

Idee : utiliser une distance maximale de recherche D.

Soit VDk (x) le voisinage de x de rayon maximal D et conte-nant au plus les k voisins les plus proches de x. On noteNDk (x) le nombre de voisins contenu dans VDk (x).

On effectue l’estimation de LrDG (voir page 14) commesuit :si ND

k (x) < k, alors utiliser une estimation a surface constante :

|Vk(x)| = π.d2

si NDk (x) = k, alors utiliser une estimation a nombre devoisins constant :

|Vk(x)| = π.Rk(x)2

Heuristique : pour fixer la distance maximale D.On majore LrDG dans le cas d’une luminance diffuse (ρ = 1/π) :

LrDG ≤ k.(1/π).φmax

π.r2

ou φmax est la plus forte energie stockee par un photon dans la carte.On veut estimer avec une surface fixe si la luminance est inferieure aun certain seuil Lt ; on note D la distance dans ce cas :

Lt =k.φmax

π2.D2⇒ D =

1

π

√k.φmax

Lt

Lt est relativement peu dependante de la scene (c’estla luminance en dessous de laquelle l’estimation n’a plusbesoin d’etre tres locale).

Attention, Φmax depend de la carte consideree, il y adonc une valeur de d par carte (et souvent aussi unevaleur de k).

22

Page 23: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

BRDF adaptee au photon mappingla BRDF de Schlick

Ce modele a trois parametres :F0 la fonction de Fresnel a incidence normale (couleur reflet).σ le facteur de rugosite (σ = 0 lisse, σ = 1 rugueuse).ψ le facteur d’isotropie (ψ = 0 anisotrope, ψ = 1 isotrope).

En chaque point x, T est un vecteur tangent a la surfaceindiquant l’orientation de l’isotropie).

Couleurs :

Couleur diffuse : C(λ) est la couleur de la reflexion diffuse.

Fonction de Fresnel : Sλ(v′) = F0(λ) + (1 − F0(λ))(1 − v′)5

F0(λ) est la couleur de la reflexion speculaire.

Expression de la BRDF :

ρ(x, ωin, ωout) = Sλ(u) d.ρd(λ, x) + g.ρg(x, ωin, ωout) + s.ρs(x, ωin, ωout)Equilibrage entre les contributions :

g = 4σ(1 − σ)

d =

0 pour σ < 0.51 − g sinon

s =

1 − g pour σ < 0.50 sinon

Une surface speculaire (s =0) n’a de composante diffuse(d = 0), et vice-versa.

Angles utilises par le modele :

t = cosα = H.N

u = cosβ = ωout.H

v = cos θ = ωout.N

v′ = cos θ′ = ωin.N

w = cosφ = T.H

ou H = (ωin + ωout)/|ωin + ωout|H = (H − (N.H).N)/|(H − (N.H).N)|

23

Page 24: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

BRDF adaptee au photon mappingla BRDF de Schlick (2)

Contribution diffuse :

ρd(x, λ) = C(λ)/π

Contribution brillante :

ρg(x, ωin, ωout) =G(v).G(v′).Z(t).A(w) + 1 −G(v).G(v′)

4π.v.v′

avec G(v) = vσ−σ.v+v

, Z(t) = σ(1+σ.t2−t2)2 et A(w) =

√ψ

ψ2−ψ2w2+w2

Contribution speculaire :

ρs(x, ωin, ωout) = δ(1 − N.H)

ou δ(t) est la fonction de dirac (δ(t)=0 si t = 0, et∫δ(t)dt = 1).

Echantillonnage de la BRDF :

choix de la BRDF : utiliser d, g et s comme probabilite dechoix pour chacune des BRDFs correspondantes.

diffus : methode classique en cos θ.

brillant : utiliser la methode suivante :

1. soit ξ1 et ξ2 deux nombres aleatoires uniforme.

2. t =

√ξ1

σ−ξ1σ+ξ1

w = cos(π2

√ψ2ξ2

2

1−ξ22+ξ2

2ψ2

)3. t et w sont les cosinus des angles α et φ qui sont les

coordonnees spherique de H dans le repere (N,T,N ∧ T).Utiliser ce fait pour trouver H.

4. a partir de H et ωin, contruire ωout.

Ces calculs n’integrent pas l’auto-ombrage (utiliser ρg).

speculaire : pas le choix ! (une seule direction).

24

Page 25: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

BRDF adaptee au photon mappingla BRDF de Schlick (3)

Cas isotrope (ψ = 1). De droite a gauche, dudiffus au continu : σ = 1.0, σ = 0.5, σ = 0.2,σ = 0.05.

T

T

T

T

T

Anisotropie dans le cas diffus (σ = 1). De droite a gauche, del’isotropie a l’anisotropie : ψ = 1.0, ψ = 0.5, ψ = 0.2, ψ = 0.05.Tout a droite, l’orientation des vecteurs T conduisant au rendu.

A noter que Schlick propose une version bicouche de cette BRDFpour gerer les materiaux heterogenes.

25

Page 26: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Premiers resultatsla Cornell’s Box

Ray-tracing classique : ombresdures et pas de caustique.

Ray-tracing bidirectionnel (nondistribue) avec gestion des sourcesnon ponctuelles.

Photon mapping : (caustique+eclairage diffus)Nφ = 200.000 et k = 100.

phase 1 (generation de la carte) = 4 secondes.

phase 2 (rendu) = 66 secondes.

26

Page 27: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Premiers resultatsInfluence du nombre de photons

NΦ =?, k = 100 photons :bruit assez fort.

NΦ =?, k = 500 photons : peude bruit, mais surestimation aproximite des bords.

NΦ =?, k = 500 photons : uti-lisation d’un disque a la placed’une sphere.

NΦ = 200, k = 50. Temps derendu = 4 secondes.

27

Page 28: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Acceleration du photon mappingSpecialisation des cartes de Photons

On s’apercoit que :

pour les caustiques,

– il faut beaucoup de photon pour obtenir une bonnequalite.

– les caustiques les plus importants sont ceux ob-serves directement.

– ils ne concernent que quelques objets tres particu-liers.

pour l’eclairage diffus,

– des resultats plausibles sont obtenus avec peu dephotons.

– sa variation est generalement lente sur des zonesetendues.

Idee : utiliser des cartes de photons specialisees.

une carte globale “basse resolution” pour toute lascene.

– c’est une approximation de la fonction de radiancecomplete de la scene.

– visualisation indirecte (recursiment dans collect).– stocke les chemins L(S|G)∗D

une carte specifique “haute resolution” pour les ob-jets generant des caustiques.

– c’est une approximation de la fonction de radianceengendree par les caustiques pour ces objets parti-culiers.

– visualisation directe (a la premiere intersection dif-fuse d’un rayon partant de l’œil).

– stocke les chemins LS+(D|G)

28

Page 29: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Carte de caustique haute resolution

Pour etre precise, la carte de caustique est construite avecun tres grand nombre de photons.

Afin qu’elle soit efficace, on concentre le tir des photonssur les objets susceptibles∗ de generer des caustiques.

⇒ on utilise des cartes de projection

Carte de projection :

• on associe une carte de projection par source lumi-neuse.

• une carte de projection contient l’ensemble des di-rections dans lesquelles se trouvent l’ensemble desobjets marques et visibles depuis la source sourceassociee.

• lors de la premiere passe, on ne tire des photons quedans les directions marquees dans la carte.

Definition d’une carte : On place une hemisphere (ouune sphere) centree sur la source de lumiere (au mi-lieu de celle-ci si elle est non ponctuelle).

• L’ensemble des directions possibles est modelisepar l’espace parametrique (θ, φ) des coordonneesspheriques.

• Cet espace parametrique est decoupe en cellulesde petite taille (chacune represente un petit en-semble de directions).

∗Marque a la main ou automatiquement en fonction des proprietesmaterielles de l’objet.

29

Page 30: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Carte de caustique haute resolutionCarte de projection (1)

Construction d’une carte de projectionElle se construit dans une phase preparatoire a la premiere passe :

1. Determiner pour chaque objet marque sa sphere englobante.

2. Pour chaque source Li, pour chacun des objets

(a) determiner les cellules qui contiennent la projection de lasphere englobante de l’objet sur l’hemisphere associe a lasource (a partir de la projection du centre de la sphere englobatante sur

l’hemisphere, c’est l’ensemble des cellules se trouvant a une distance

inferieure ou egale a α de ce point - voir ci-dessous).

(b) pour chacune de ces cellules, lancer un rayon d’ombre parson centre vers l’objet, et si on intersecte l’objet, marquerla cellule.

Il peut etre necessaire de dilater l’ensemble des cellules obte-nues afin d’eviter certains artefacts (il vaut mieux avoir trop decellules que pas assez).

3. Construire le tableau Ti contenant la liste des cellules marques(Ai = aire∗ de la ieme cellules marquees pour cette source, et nile nombre de cellules marquees).

0

π2

φ

θ

∗Attention, cours 1 p44, erreur sur les angles ! ! !

30

Page 31: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Carte de caustique haute resolutionCartes de projections (2)

Utilisation des cartes de projection :Lorsque la ieme source de lumiere est selectionnee pourl’emission d’un photon (entre parenthese, la simplificationinduite par l’utilisation d’aire identique pour toutes lescellules),

1. Tirer au hasard le numero k d’une des cellules marqueessuivant la loi Ai/

∑iAi (tirer au hasard un chiffre

entre 0 et ni − 1).

2. Choisir au hasard une direction dans cette cellule.

3. Ponderer∗ la puissance du photon par∑

iAi/π (ni/nou n est le nombre total de cellule).

L’utilisation de cellule d’aires toutes identiques permet ungain de temps lors cette deuxieme phase.

Remarques :

• Les caustiques issus d’un eclairage diffus (cf exemplecours 2, p12) sont geres dans la carte globale !

• Ne pas considerer le photon si sa premiere intersec-tion n’est pas avec un des objets marques.

• Les carte de projection pose des problemes lorsque lasource est etendue :

L’alternative consiste a viser directement la sur-face apparente (relativement constante) de lasphere englobante de l’objet depuis la source, eta verifier que l’objet que l’on frappe est bien bon(afin d’eviter le biais engendre dans le cas oudeux surfaces apparentes s’intersectent).

∗de facon a ce que les photons dans la carte globale et la carte descaustiques soient comparables.

31

Page 32: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Filtrage des photons(cas des caustiques)

Si le nombre de photons est trop petit, l’estimation de-vient bruitee a proximite des zones de transition brutales.

Idee : parmis les K-ppv, diminuer l’importance des pho-tons xi qui sont le plus eloigne de x.

Formule de reconstruction : on pondere l’energie reflechiedes photons par un coefficient wi(x) dependant de la dis-tance |x− xi| :

Lout(x, ωout) =

∑xi∈Vk(x)

wi(x).ρ(x, ωi, ωout).φi

π.Rk(x)2

Filtre conique :

-1-1-0.5-0.5

00.50.5

1-1-1

-0.5-0.5

0

0.50.5

1

0

0.50.5

1

1.51.5

2

2.52.5

wi(x) =1

1 − 2k/3.

(1 − |x− xi|

α.Rk(x)

)

ouα ≤ 1 parametre du filtreRk(x) rayon de la sphere des k-ppv.

ci-contre : α = 1.2 et Rk(x) = 1.

Filtre gaussien :

-1-1-0.5-0.5

00.50.5

1-1-1

-0.5-0.5

0

0.50.5

1

0

0.10.1

0.20.2

0.30.3

0.40.4

0.50.5

0.60.6

0.70.7

0.80.8

0.90.9

1

wi(x) = α

(1 − 1 − e−β.|x−xi|2/2Rk(x)2

1 − e−β

)

ouα = 0.918β = 1.953Rk(x) rayon de la sphere des k-ppv.

ci-contre : Rk(x) = 1.

32

Page 33: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Filtrage des photons (2)(cas des caustiques)

Filtre de Epanechnikov :

-1-1-0.5-0.5

00.50.5

1-1-1

-0.5-0.5

0

0.50.5

1

0

0.50.5

1

1.51.5

2

wi(x) = 2

(1 − |x− xi|2

Rk(x)2

)

ou Rk(x) est le rayon de la sphere desk-ppv.

Ce noyau est optimal pour l’estimation

d’une densite continue.

Remarques :

L’utilisation de ponderation revient a effectuer une estimation des

k-ppv avec un noyau de convolutions.

Resultat : (Epanechnikov)

avec filtre

sans filtre

avec filtre

33

Page 34: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Reconstruction de la luminancea partir des plusieurs cartes

On note Lc une luminance calculee a partir de la carte des caustiques(haute resolution) et Lg une luminance calculee a partir de la carteglobale (basse resolution).

Algorithme :Lancer un rayon depuis l’observateur.

A la premiere intersection sur une surface D|G,

Utiliser la carte des caustiques pour calculer LcDG.

Relancer des rayons dans les directions D|G|S pourevaluer LgDG + LgS.

Aux intersections suivantes,

Utiliser la carte globale pour calculer LgDG.

Relancer un rayon dans la direction S pour evaluer LgSChemins reconstruits :

chemins utilisant la carte des caustiques : chemins depuisl’œil : ES∗

chemins depuis les sources : LS∗D

chemins complets : ES∗DS∗L

chemins utilisant de la carte globale : chemins depuis l’œil :ES∗(D|G|S)S∗

chemins depuis les sources : L(G|S)∗D

chemins complets : ES∗(D|G|S)S∗D(G|S)∗L

Remarques :– Pas de probleme de superposition (caustique au premier

rebond, globale sur le reste).– Chemins avec 2 D !

34

Page 35: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Optimisations diversesPrecalculation de la luminance diffuse

La variation lente de la luminance diffuse en fait le candidat idealpour une interpolation :

1. choisir un certain nombre de points (par exemple : 1/4 despoints) bien repartis a travers la scene (utiliser les proprietes dukd-tree).

2. precalculer la luminance en tous ces points (ce qui est possiblesans etre directionnel puisque l’on est dans le cas diffus).

3. lors de la phase de collecte sur la carte diffuse, renvoyer laluminance du point le plus proche (alternative : interpoler les 3points les plus proches).

ray-tracing carte des photons

luminance diffuse estimee resultat final

35

Page 36: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Optimisations diverses

Stockage de l’arbre de facon contigue dans la memoire :Jensen stocke son kd-tree dans un tableau.

Utiliser des ”priority queues” pour gerer la recherchedes k-ppv dans l’arbre.

Pas de fonctions recursives dans les parties lentes del’algorithme (notamment lors de la recherche des k-ppv). Il est de notoriete publique que les algorithmerecursifs sont toujours plus lents que leurs versionsiteratives.

Les importons : l’idee est de lancer des “particules d’im-portance” depuis l’observateur et de les propager dansla scene. A partir de cette carte, on determine la loide probabilite avec laquelle il faut tirer les photonsdepuis les sources afin de les envoyer dans des direc-tions ou ils pourront effectivement etre observes.

⇒ on evite ainsi de lancer des photons inutilementen se concentrant sur des tirs utiles. On aug-mente ainsi la densite des photons observables,donc reduction du biais.

Initialement, tous les importons sont lances avec lameme importance et tire uniformement dans le champsde vision de l’observateur. La propagation et la modi-fication d’importance de l’important est exactementsimilaire a ce qui est fait dans la premiere phase dulance de photon.Des techniques de controle de densites de photonutilisant la carte des importons permettent de reduireencore le biais (idee : essayer d’ameliorer la densitedes photons aux endroits ou elle est importante, ausens des importons).

36

Page 37: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Exemples

37

Page 38: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Exemples (2)Utilisation des cartes de caustique

38

Page 39: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Exemples (3)Transport en sous-surface

39

Page 40: DESS R.S.I. option Imagerie Techniques avanc´ees de …mathinfo.univ-reims.fr/image/siIllumination/Cours/DESS2003... · DESS R.S.I. option Imagerie Techniques avanc´ees de rendu

Conclusion

Avantages de la methode :– La carte de photon est independante de la geometrie

de la scene.– Permet de tenir compte de tous les phenomenes

de l’illumination de maniere relativement efficace(caustique, illumination indirecte).

– A complexite de rendu egal, elle est plus rapide quele ray-tracing (avant, arriere ou bidirectionnel).

– Il est possible de l’adaptation aux cas des trans-ports en sous-surface et des milieux participatifs.

Inconvenients :– La methode presente des biais (resultats physique-

ment non exact), d’ou l’importance d’etre tres at-tentif a la gestion des biais.

– Elle n’est pas encore “temps reel”.

Bibliographie :

– Realistic Image Synthesis using photon mappingH.W. JensenEditeur : A.K. Peters

– A practical guide to global illumination using photonmappingH.W. Jensen & al.SIGGRAPH 2002 - Course 43

40