Etat de lArt des Problèmes dEclairage inverse POULINGEAS Patrick Laboratoire MSI Equipe...

Preview:

Citation preview

Etat de l’Art des Problèmes Etat de l’Art des Problèmes d’Eclairage inversed’Eclairage inverse

POULINGEAS Patrick

Laboratoire MSI

Equipe Modélisation et Infographie Intelligente

La problématiqueLa problématiqueLes données :

La géométrie des éléments de la scèneLes propriétés des matériaux

L’éclairage voulu pour certains éléments

Les calculs :Les positions possibles des sources lumineuses

Les propriétés possibles des sources lumineuses

Les résultats :Les scènes obtenues avec les sources lumineuses

trouvées

Les contextes possiblesLes contextes possibles

L’éclairage « réaliste » d’une pièce en architecture.

L’éclairage d’un événement (par exemple une exposition dans un musée)

Une photographie(par exemple pour une publicité)

Une recherche artistique avec des jeux de lumière

Etc.

Les caractéristiques des Les caractéristiques des algorithmesalgorithmes

La nature de l’éclairage- direct

- global

Le modèle physique d’éclairement Les contraintes a priori sur les sources lumineuses

- positions fixées- ensemble de positions possibles- aucune contrainte

Les modèles d’illuminationLes modèles d’illumination

Le modèle de PhongLa radiositéLe calcul de la radiance

Articles utilisant le modèle de Articles utilisant le modèle de PhongPhong

Lights from Highlights and ShadowsP. Poulin, A. Fournier1992

Sketching Shadows and Highlights to Position LightsP. Poulin, K. Ratib, M. Jacques1997

Utilisation de zones fortement Utilisation de zones fortement éclairées et de volumes d’ombreéclairées et de volumes d’ombre

(Poulin, Fournier. 1992)(Poulin, Fournier. 1992)

Eclairage directLumière directionnelles pour les zones fortement

éclairées (« highlights »)Sources de lumières ponctuelles, linéaires ou

polygonales en plus avec l’utilisation des volumes d’ombre

Utilisation de zones fortement Utilisation de zones fortement éclairéeséclairées

(Poulin, Fournier. 1992)(Poulin, Fournier. 1992)On calcule les paramètres du terme spéculaire :

– La direction de la source lumineuse (avec un point indiquant l’intensité lumineuse maximale sur la surface)

– L’exposant spéculaire (avec un second point et une valeur de seuil donnant la limite de la zone spéculaire)

On peut ensuite introduire d’autres zones fortement éclairées sur la même surface

Utilisation de volumes d’ombreUtilisation de volumes d’ombre(Poulin, Fournier. 1992)(Poulin, Fournier. 1992)

Sources lumineuses directionnelles :

Utilisation de volumes d’ombreUtilisation de volumes d’ombre(Poulin, Fournier. 1992)(Poulin, Fournier. 1992)

Sources lumineuses ponctuelles :Extension du procédé employé pour une source directionnelle

Utilisation de volumes d’ombreUtilisation de volumes d’ombre(Poulin, Fournier. 1992)(Poulin, Fournier. 1992)

Sources lumineuses linéaires ou polygonales :On traite chaque sommet comme une source de

lumière ponctuelleEventuellement : décomposition de la source

lumineuse et de l’objet O en parties convexesCalcul d’enveloppes convexes (celles des

volumes d’ombre)

ConclusionConclusion(Poulin, Fournier. 1992)(Poulin, Fournier. 1992)

Avantages :– La position de la source lumineuse n’est pas fixée a

priori– Manipulation temps réel

Inconvénients :– Eclairage direct uniquement– Manipulation peu intuitive des volumes d’ombre Il

serait plus agréable de travailler sur les ombres portées des objets

Esquisses d’ombres portées et de Esquisses d’ombres portées et de zones fortement éclairéeszones fortement éclairées(Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Eclairage directPlusieurs formes de sources lumineuses sont

géréesUtilisation d’esquisses marquant le contour d’une

ombre portée ou d’une zone fortement éclairéeRecours à un système de contraintes et un

procédé d’optimisation pour placer la source lumineuse

Esquisses d’ombres portées Esquisses d’ombres portées (Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Cas d’une source lumineuse ponctuelle :

Esquisses d’ombres portées Esquisses d’ombres portées (Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Cas d’une source lumineuse ponctuelle :La zone où l’on peut placer la source lumineuse

est l’intersection des régions admissibles associées à chaque point d’esquisse.

Optimisation : On maximise la distance entre la source lumineuse et les points d’esquisse.

Exemple de résultat Exemple de résultat (Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Esquisses d’ombres portées Esquisses d’ombres portées (Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Traitement des sources lumineuses étendues (linéaires, polygonales, polyédriques, sphériques, etc.)

Esquisses de contour de l’ombreEsquisses de contour de la pénombrePour l’ombre, tous les points de la source

doivent appartenir aux zones associées aux points d’esquisses.

Pour la pénombre, au moins un point de la source doit appartenir à chaque zone associée aux points d’esquisses.

Exemple de résultat Exemple de résultat (Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Esquisses de zones fortement Esquisses de zones fortement éclairéeséclairées

(Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Source lumineuse ponctuelleMême technique d’esquisse que précédemmentPoint d’esquisse CôneOn essaie que la zone fortement éclairée soit

resserrée autour des points d’esquisseSi l’intersection des cônes est vide, on modifie

l’exposant spéculaire pour avoir une solution

Exemple de résultat Exemple de résultat (Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Conclusion Conclusion (Poulin, Ratib, Jacques. 1997)(Poulin, Ratib, Jacques. 1997)

Avantages :– Interface utilisateur assez intuitive– La position de la source de lumière n’est pas fixée a

priori– Résultats satisfaisants, bons temps de calcul

Inconvénients :– Restriction à une illumination directe– Pas de description qualitative des objectifs d’éclairage

Articles utilisant la radiositéArticles utilisant la radiosité Painting with Light

C. Schoeneman, J. Dorsey, et alii1993

Radioptimization – Goal based RenderingJ.K. Kawai, J.S. Painter, M.F. Cohen1993

An Interactive System for Solving Inverse Illumination Problems using Genetic AlgorithmsJ. Elorza, I. Rudomin1997

Computer Aided Lighting for Architects and DesignersM. Contensin, J.-L. Maltret1997

Détermination de l’émittance à Détermination de l’émittance à partir de patches coloriéspartir de patches coloriés

(Schoeneman, Dorsey, et alii. 1993)(Schoeneman, Dorsey, et alii. 1993)Position des sources lumineuses fixées a prioriL’utilisateur peint des patches de la scèneLe concepteur a une vue sur une scène contenant

ses souhaits et une autre avec la solution trouvéeRecours à un algorithme d’optimisation pour

satisfaire les désirs du concepteurUne simple illumination directe est employée

pour faciliter l’interactivité

Principe de l’algorithmePrincipe de l’algorithme(Schoeneman, Dorsey, et alii. 1993)(Schoeneman, Dorsey, et alii. 1993)

Soient f1,…,fn la contribution des n sources lumineuses. Ce peut être :– Des images obtenues avec un lancer de rayons– La distribution de la radiance sur les surfaces de la

scène, reconstruite à partir de la radiosité (utilisé ici)

Soit g la fonction correspondant à la scène coloriée par l’utilisateur

On se dote d’un produit scalaire et on cherche les coefficients ai minimisant

n

i

ii gfa1

La phase d’optimisationLa phase d’optimisation(Schoeneman, Dorsey, et alii. 1993)(Schoeneman, Dorsey, et alii. 1993)

Avec une méthode des moindres carrés, on exprime le problème sous forme matricielle : Ma=b où a est le vecteur des coefficients que l’on recherche

On résout le système associé à l’équation matricielle avec la méthode itérative de Gauss-Seidel (légèrement modifiée)

Pour une modification d’une couleur d’un des patches, on tient compte des valeurs déjà obtenues (comme valeur de départ pour Gauss-Seidel)

Exemple de solution obtenueExemple de solution obtenue(Schoeneman, Dorsey, et alii. 1993)(Schoeneman, Dorsey, et alii. 1993)

ConclusionConclusion(Schoeneman, Dorsey, et alii. 1993)(Schoeneman, Dorsey, et alii. 1993)

Avantages :– Interface utilisateur intuitive– Bonne interactivité grâce à une vitesse de calcul

convenable

Inconvénients :– Pas de positionnement automatique des sources de

lumière ( conduit à un problème non linéaire)– Pas de spécification sous forme qualitative des

objectifs d’éclairage

RadioptimisationRadioptimisation(Kawai, Painter, Cohen. 1993)(Kawai, Painter, Cohen. 1993)

Utilisation de la radiosité hiérarchiquePosition des sources lumineuses fixées a prioriPossibilité partielle de décrire qualitativement

l ’ambiance d ’une scèneIntroduction possible de spotsUtilisation d ’un algorithme d ’optimisation de

type quasi-Newton

L ’interface utilisateurL ’interface utilisateur(Kawai, Painter, Cohen. 1993)(Kawai, Painter, Cohen. 1993)

Après un rendu de la scène, le concepteur peut spécifier :

Des contraintes sur les radiosités de certains patches

Les variables du problème d ’optimisation :– l ’émissivité de certains patches– la réflectivité de certains patches– les paramètres des spots (direction et exposant)

Les poids des fonctions de base composant la fonction objectif à optimiser

Les contraintesLes contraintes(Kawai, Painter, Cohen. 1993)(Kawai, Painter, Cohen. 1993)

Les contraintes physiques traduisant le système d ’équations de la radiosité

Les contraintes spécifiées par l ’utilisateur et portant sur les radiosités de certains patches

Les contraintes jouant un rôle de « barrières » et garantissant la validité physique (Ex : 0 1)

La fonction objectifLa fonction objectif(Kawai, Painter, Cohen. 1993)(Kawai, Painter, Cohen. 1993)

C ’est une combinaison linéaire des fonctions de base, correspondant respectivement à :

l ’énergie totale de la scène la brillance de la pièce, liée à des paramètres physiques une impression de « clarté », ou « d ’intimité », ou à « un

aspect agréable » pour l ’utilisateur (Elles sont issues de tests psycho-visuels)

des contraintes (On ajoute à la fonction objectif des fonctions pénalisantes pour avoir un problème d ’optimisation sans contraintes)

La fonction objectifLa fonction objectif(Kawai, Painter, Cohen. 1993)(Kawai, Painter, Cohen. 1993)

Fonction objectif

=

Termes physiques

+

Termes basés sur une perception subjective

Méthode d’optimisation BFGSMéthode d’optimisation BFGS(Kawai, Painter, Cohen. 1993)(Kawai, Painter, Cohen. 1993)

Méthode de Newton :Méthode de descente avec comme direction : -2f(x)-1f(x) où est le gradient et 2 le hessien de

f

Méthode quasi-Newton :– On approxime le hessien (qui est difficile et coûteux à

calculer)– Exemple : la méthode BFGS (Broyden-Fletcher-Goldfarb-

Shanno)

ConclusionConclusion(Kawai, Painter, Cohen. 1993)(Kawai, Painter, Cohen. 1993)

Avantages :– Description qualitative des objectifs– Temps de calcul

Défauts :– Possibilité de spécification de l ’ambiance très limitée– Entrée de la fonction objectif peu intuitive– Nécessité de rajouter des contraintes pour éviter des

minima locaux sans intérêt pour le concepteur

Utilisation d’un algorithme Utilisation d’un algorithme génétiquegénétique

(Elorza, Rudomin.1997)(Elorza, Rudomin.1997)

Même approche que Schoeneman, Dorsey, et alii : On colorie des patches de la scène.

Utilisation de la radiosité hiérarchiqueDétermination du nombre, de la position et de

l’émittance des sources lumineuses avec un algorithme génétique

Algorithme génétiqueAlgorithme génétique(Elorza, Rudomin.1997)(Elorza, Rudomin.1997)

Individu : chaîne binaire représentant le nombre de lumières, et pour chacune d’elles, leur émittance et leur position

Importance d’un individu : erreur RMS entre la scène coloriée par le concepteur et celle qui serait produite avec les paramètres de l’individu

Exemple de résultatExemple de résultat(Elorza, Rudomin.1997)(Elorza, Rudomin.1997)

ConclusionConclusion(Elorza, Rudomin.1997)(Elorza, Rudomin.1997)

Trop peu de détails sur l’algorithme génétiqueScènes testées de taille modesteTemps de calcul élevésRésultats peu convaincants

Pseudo-inversion par Pseudo-inversion par décomposition en valeurs décomposition en valeurs

singulièressingulières(Contensin, Maltret. 1997)(Contensin, Maltret. 1997)

Illumination globale prise en compte effectivementUn ensemble de patches potentiellement émetteurs

fixé a prioriTechnique d’algèbre linéaire et d’analyse

numérique (pas un processus d’optimisation)

Principes de l’algorithmePrincipes de l’algorithme(Contensin, Maltret. 1997)(Contensin, Maltret. 1997)

On a 3 types de patches :– N1 patches avec une émittance éventuellement non

nulle (des sources de lumière potentielles)

– N2 patches avec une émittance nulle dont la radiosité sera calculée en fonction des contraintes

– N3 patches avec une émittance nulle et une radiosité fixée (Ce sont donc les contraintes)

On exprime les équations de radiosité sous forme matricielle et on effectue une pseudo-inversion par décomposition en valeurs singulières

Décomposition par valeurs Décomposition par valeurs singulièressingulières

(Contensin, Maltret. 1997)(Contensin, Maltret. 1997)

La matrice A est décomposée en 3 matrices :A = U S V

U et V sont des matrices orthogonales et S unematrice diagonale.

Les valeurs sur la diagonale de S sont appeléesvaleurs singulières

Exemple de résultatExemple de résultat(Contensin, Maltret. 1997)(Contensin, Maltret. 1997)

ConclusionConclusion(Contensin, Maltret. 1997)(Contensin, Maltret. 1997)

Avantage :– Méthode mathématique sûre

Inconvénients :– Scènes de taille modeste (L’exemple contenait 228

patches)– Temps de calcul élevés– Pas d’interface utilisateur développée

Articles utilisant une Articles utilisant une évaluation de la radianceévaluation de la radiance

Optimisation and Lighting DesignA.C. Costa, A.A Sousa, F.N. Ferreira1999

Lighting Design : a Goal based Approach using OptimisationA.C. Costa, A.A Sousa, F.N. Ferreira1999

Evaluation de la radianceEvaluation de la radiance(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

Unités fonctionnelles de l’application :Analyseur de scripts, scripts écrits par le designer

et modélisant la fonction objectifRadiance (Ward) pour le calcul de la radianceASA : un paquetage implémentant un algorithme

de recuit simulé

Hypothèses pour la validité de Hypothèses pour la validité de la méthodela méthode

(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

Milieu non participantBSDF symétrique permet la

réversibilité des calculs

Les différents types de Les différents types de sources lumineusessources lumineuses

(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

PL (Previous Luminaire) : sources déjà présentes dans la scène

IL (Inverse Luminaire) : sources fictives servant à modéliser les souhaits du concepteur

DL (Desired Luminaire) : sources qui vont produire l’éclairage voulu

Principes de l’algorithmePrincipes de l’algorithme(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

L’utilisateur spécifie ses souhaits avec un scriptOn évalue préalablement l’influence des PL sur

les ILLes IL propagent de l’énergie lumineuse dans la

scèneCalcul de la radiance en un point et selon une

direction donnéePhase d’optimisation : Recuit simulé

Recuit SimuléRecuit Simulé(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

Minimiser une fonction f non convexe sur Rn

Descente suivant le gradient de f :xn+1 = xn + rnf (xn)rn : pas, dépendant de l’algorithme

Inconvénient : on peut aboutir à un minimum localRecuit simulé : on ajoute au second membre une

composante aléatoire telle que f(xn+1) > f(xn) avec une probabilité pn 0 quand n +

On donne au point xn la possibilité d’explorer tout l’espace avant de se mettre à descendre vers un min

Exemple de scriptExemple de script(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

1. # (x1,x2,x3) : position de la DL# (x4,x5) : direction du spot (de la DL)

2. V = Vector(FaceCenter,(x1,x2,x3)) # Face désigne le visage de la personne

3. If Angle(FacePerp,V) < Vthreshold andAngle(FacePerp,Dir(-x4,-x5)) < Athreshold return

FAILURE

4. WIL1/DL1 = Importance(SCENEIL1,x1,x2,x3,x4,x5)

5. WIL2/DL1 = Importance(SCENEIL2,x1,x2,x3,x4,x5)

6. Return –(K1* WIL1/DL1 – K2* WIL2/DL1)

Exemples de solutionsExemples de solutions(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

Exemples de solutionsExemples de solutions(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

ConclusionConclusion(Costa, Sousa, Ferreira. 1999)(Costa, Sousa, Ferreira. 1999)

Avantages :– Prise en compte de beaucoup de types de contraintes

différentes (orientation, alignement des sources, etc.)– Modèle d’illumination évolué

Inconvénients :– Script complexe que le concepteur doit programmer– Temps de calcul élevés

ConclusionConclusion

Bonne interface utilisateur Peu de paramètres intervenant pour les

sources lumineusesBeaucoup de paramètres pour les sources

lumineuses Interface peu intuitive

Beaucoup de techniques d’optimisationUn seul article prend en compte une description

qualitative (partielle) de l’éclairage

Recommended