• Aucun résultat trouvé

Compromis temps-m ´emoire

6 Impl ´ementation et R ´esultats

7.2 Compromis temps-m ´emoire

Nous montrons maintenant comment diminuer le co ˆut m´emoire mˆeme si la visibilit´e de la source varie sur le r´ecepteur. Commenc¸ons par une simple observation, illustr´ee figure 4.29 o`u un lien entre deux polygones R et S est repr´esent´e. Un premier raffinement subdivise R. L’un des triangles cr´e´es, Ri, est `a nouveau subdivis´e.

Dans notre m´ethode initiale pr´esent´ee section 4.2, la visibilit´e entre chaque Rjet S, ou depuis chaque nouveau point P est d´eduite de l’information de visibilit´e entre Riet S. Cependant, Rjpeut aussi ˆetre consid´er´e comme un sous-´el´ement de R, et P est aussi un point `a l’int´erieur de R. La visibilit´e peut ˆetre calcul´ee `a partir du lien polygone-polygone entre R et S, comme si le premier raffinement avait directement caus´e les sous-´el´ements les plus petits.

R Ri

Rj

hierarchy of R

B

P

S

FIG. 4.29:Compromis temps-m´emoire. L’information entre Rjet S peut ˆetre d´eduite de l’information entre Ri et S, ou de l’information entre R et S. Cette derni`ere solution est plus co ˆuteuse en temps puisque le bloqueur B est inutilement consid´er´e. Cependant, moins de m´emoire est utilis´ee puisque l’information entre Riet S n’a pas besoin d’ˆetre stock´ee.

Cette derni`ere m´ethode a le d´esavantage de consid´erer plus de bloqueurs que n´ecessaires, puisqu’ils sont en g´en´eral plus nombreux entre R et S qu’entre Riet S. La mise `a jour de visibilit´e sera donc plus coˆuteuse.

Cependant, la m´emoire requise pour stocker l’information entre Riet S est sauv´ee. Il s’agit l`a d’un compromis temps contre m´emoire.

Dans les sc`enes que nous avons test´ees, nous estimons par exemple qu’il est utile de stocker l’information pour lors du premier raffinement d’un lien pour un mur ou pour le sol, puisque de nombreux bloqueurs sont pr´esents. Lors des raffinements suivant, le nombre de bloqueurs est en revanche plus faible, et l’information du niveau sup´erieur de la hi´erarchie pourrait ˆetre utilis´ee sans causer un trop grand surcoˆut en temps.

Nous proposons d’utiliser comme crit`ere pour stocker ou non l’information, la diff´erence du nombre de blo-queurs entre le lien parent et le lien enfant. Ce crit`ere est en fait tr`es li´e `a la m´ethode de la section pr´ec´edente : si la visibilit´e est invariante, le nombre de bloqueurs est constant, et aucune information n’est stock´ee. Un budget m´emoire peut aussi ˆetre allou´ee : une fois qu’il a compl`etement ´et´e utilis´e, on arrˆete de stocker l’information.

La question des crit`eres de raffinement pr´esent´e section 5.4 est alors plus d´elicate, puisque l’information de visibilit´e n’est alors plus disponible dans son int´egralit´e. Les ´ev´enements visuels sont toujours stock´es, mais

`a un niveau sup´erieur de la hi´erarchie des liens, il n’existe aucune garantie qu’ils affectent le sous-polygone courant. Le crit`ere peut alors ˆetre calcul´e pour tous les ´ev´enements visuels stock´es au niveau sup´erieur, et si l’un d’entre eux indique qu’un raffinement est n´ecessaire, on v´erifie qu’il affecte effectivement le sous-triangle en question.

Nous pensons que ces deux optimisations abaisseront grandement la consommation m´emoire de notre m´ethode. La premi`ere solution diminuera aussi le temps de calcul et nous croyons que la seconde n’impo-sera pas une trop grande p´enalit´e.

8 Discussion

8.1 R ´esum ´e

Nous avons pr´esent´e un nouvel algorithme de radiosit´e hi´erarchique qui utilise le squelette de visibilit´e, Nous avons introduit un algorithme de mise `a jour des vues qui permet d’obtenir les vues depuis les sommets dus `a une subdivision.

Le squelette de visibilit´e permet le calcul de facteurs de forme exacts point-polygones pour toute paire sommet/polygone de la sc`ene. Il fournit ´egalement une information de visibilit´e d´etaill´ee entre toute paire (sous)polygone-(sous)polygone.

Nous avons introduit un nouvel algorithme hi´erarchique bas´e sur une repr´esentation multir´esolution sous forme d’ondelettes paresseuses. Elles s’appuient sur des triangulations hi´erarchiques, qui consistent en une hi´erarchie de triangulations de Delaunay contraintes. En utilisant des diff´erences de radiosit´e aux sommets issus de subdivisions, nous avons introduit une op´eration de “pousser” lin´eaire, qui produit une reconstruction de la radiosit´e de meilleure qualit´e aux feuilles. Un nouveau crit`ere de raffinement perceptif guid´e par la visibilit´e autorise une subdivision des surfaces qui s’adapte mieux aux variations d’ombre. Les r´esultats montrent que notre approche produit des solutions ind´ependantes du point de vue de haute qualit´e de mani`ere efficace. Ils montrent ´egalement que notre m´ethode traite bien les configurations traditionnellement difficiles comme les sc`enes comportant de nombreuses sources ou bien ´eclair´ees principalement de mani`ere indirecte.

Le co ˆut m´emoire est la principale limitation de notre approche, mais des solutions proposant un compromis temps/m´emoire ont ´et´e pr´esent´ees, bas´ees sur la d´etection de configurations o`u la visibilit´e ne change pas du tout ou tr`es peu.

8.2 Limitations

Nous pouvons identifier deux limitations majeures `a notre algorithme : sa grande consommation m´emoire (mˆeme avec les am´eliorations) et les probl`emes de robustesse.

L’utilisation m´emoire du squelette de visibilit´e est grande et pr´esente en g´en´eral une croissance quadratique en fonction du nombre de polygones en entr´ee. Mˆeme pour des sc`enes tr`es simples, notre m´ethode utilise une grande quantit´e de m´emoire (cf. table 4.2). Pour que cette approche soit utilisable pour de grandes sc`enes, il est

´evident qu’une des strat´egies suivantes doit ˆetre adopt´ee : construction paresse ou m´ethode par regroupement avec repr´esentation multir´esolution de la visibilit´e. Des id´ees dans ce sens peuvent ˆetre trouv´ees `a la section 8.4.

La robustesse num´erique et le traitement des cas d´eg´en´er´es sont des probl`emes ´epineux. Comme nous l’avons dit au chapitre pr´ec´edent, malgr´e la simplicit´e de notre algorithme, les configurations d´eg´en´er´ees peuvent causer des erreurs dans la construction du squelette. De plus, `a cause de la subdivision, de nombreux

´ev´enements visuels co¨ıncident, ce qui cr´ee des probl`emes pour l’´etape de lancer de rayon (pour la cr´eation des nœuds) et pour la d´etermination des adjacences. Ces probl`emes sont particuli`erement ´evidents dans le cas de la mise `a jour de vues, dont la mise au point a ´et´e fastidieuse. Un traitement coh´erent des d´eg´en´erescences est pr´evu, mais il constitue un sujet de recherche en lui-mˆeme, et d´epasse largement le cadre de cette th`ese.

L’insertion des points dans le maillage est elle aussi loin d’ˆetre simple, `a cause des probl`emes d’impr´ecision num´erique.

8.3 Avantages

L’algorithme de radiosit´e hi´erarchique guid´e par la visibilit´e que nous avons pr´esent´s poss`ede plusieurs avantages. Pour commencer, il produit des ombres de qualit´e et utilise des facteurs de forme exacts pour l’´eclairage direct comme indirect. Notre nouvelle repr´esentation multir´esolution et les deux types de liens permettent une reconstruction lin´eaire continue de la radiosit´e sur des maillages irr´eguliers. Le traitement glo-bal de la visibilit´e et des discontinuit´es autorise des oracles de raffinements pertinents et efficaces. Grˆace `a une estimation perceptive de l’importance des ombres, notre algorithme de raffinement s’est r´ev´el´e tr`es efficace dans des configurations traditionnellement difficiles, comme les sc`enes comportant de nombreuses sources ou qui poss`ede un ´eclairage indirect pr´edominant. Nos comparaisons informelles ont montr´e un net avantage pour notre m´ethode, que ce soit en terme de qualit´e ou de temps de calcul.

Des approches comme celle de Lischinski et al. [LTG93] qui utilisent le maillage de discontinuit´e sont limit´ees `a un petit nombre de sources, puisque le nombre de discontinuit´e devient tr`es vite ing´erable. Cela a des cons´equences n´efastes sur le temps de calcul et sur la robustesse de la m´ethode. Pour des raisons similaires, aucun algorithme de simulation hi´erarchique ne traite les discontinuit´es dues `a l’´eclairage indirect.

8.4 Travaux futurs

Passage `a l’ ´echelle

Les am´eliorations que nous avons propos´ees pour d´ecroˆıtre le coˆut m´emoire doivent ˆetre impl´ement´ees et test´ees.

L’avantage de notre algorithme de construction du squelette est sa localit´e, qui le rend particuli`erement bien adapt´e `a la construction paresseuse ou `a la demande. En utilisant des crit`eres `a d´efinir, il est possible de ne construire que la partie du squelette li´ee aux transferts lumineux “importants”. Cette information pourrait ˆetre ensuite effac´ee pour r´eduire le co ˆut m´emoire.

L’approche hi´erarchique discut´ee dans les travaux ant´erieurs du chapitre pr´ec´edent pourrait ˆetre appliqu´ee directement `a la simulation de l’´eclairage. Le cadre de la radiosit´e hi´erarchique avec regroupement [SAG94, Sil95] est l’extension naturelle de la radiosit´e hi´erarchique. Il pourrait b´en´eficier d’une structure de donn´ee multir´esolution et pr´ecise.

Contr ˆole de l’erreur

L’information contenue dans le squelette de visibilit´e permet ´egalement le calcul du gradient ou des d´eriv´ees sup´erieures de la fonction d’´eclairement [Arv94, HS95, HS99]. Une telle information pourrait se r´ev´eler utile pour d´evelopper de nouveaux crit`eres de raffinements, ou des interpolants de degr´e sup´erieur pour la fonction de radiosit´e. Les techniques de contr ˆole de l’erreur pour la radiosit´e [ATS94, LSG94, HS99] font en g´en´eral l’impasse sur la question de la visibilit´e, jug´ee trop difficile `a g´erer. Le squelette de visibilit´e contient l’infor-mation n´ecessaire, ce qui rend possible le contrˆole pr´ecis de la simulation.

Un contrˆole total de l’erreur est cependant rarement n´ecessaire. Toutefois, ce genre d’approche peut ˆetre simplifi´e `a l’aide d’approximations pour obtenir des crit`eres plus globaux. Les oracles que nous avons impl´e-ment´es n’estiment l’erreur que localement pour chaque interaction. L’influence est pourtant plus globale, puisque l’´energie lumineuse (et donc l’erreur) est propag´ee `a travers toute la sc`ene.

Maillage

La qualit´e du maillage est cruciale pour les simulations par ´el´ements finis. Les triangles fins en particulier doivent ˆetre ´evit´es. Les triangulations de Delaunay, surtout quand elles sont contraintes, ne garantissent pas une telle propri´et´e. Des techniques classiques de maillage (cf., e.g., [She96]) pourraient ˆetre utilis´ees pour optimiser nos maillages, par exemple en ins´erant des sommets sur les arˆetes contraintes qui ne respectent pas la contrainte de Delaunay.

De plus, une triangulation de Delaunay ne fournit pas toujours la meilleure interpolation d’une fonction.

Consid´erons l’exemple de la figure 4.30 qui repr´esente l’interpolation d’une fonction sur un carr´e ´echantillonn´e

`a ses quatre coins. Deux triangulations sont possibles, en fonction de la diagonale retenue. Le crit`ere ne devrait pas ˆetre bas´e sur une contrainte de Delaunay (les deux diagonales sont ´equivalentes), mais devrait prendre en compte le gradient de la fonction [ARB90, Sch93].

Crit `ere perceptif

Les crit`eres que nous avons d´evelopp´es peuvent ´egalement ˆetre adapt´es `a la radiosit´e hi´erarchique clas-sique, sans l’information du squelette de visibilit´e. En particulier, la s´eparation en trois phase (radiom´etrique, estimation de la quantit´e d’ombre, estimation de la variation d’ombre) est une approche prometteuse pour des raffinements efficaces. L’utilisation d’une m´etrique perceptive permet de plus ´eviter le r´eglage de seuils impr´evisibles et arbitraires.

Des m´etriques plus sophistiqu´ees pourraient ˆetre utilis´ees [Mys98, BM98, RPG99, FPSG97, PFFG98]. En particulier, la composante fr´equentielle spatiale devrait ˆetre prise en compte, puisque l’œil humain est moins sensible `a l’erreur dans les r´gions o `u l’image varie beaucoup, comme sur le motif complexe d’un tapis.

(a) (b) (c)

FIG. 4.30:Optimisation d’une triangulation pour repr´esenter une fonction (a) Fonction exacte. (b) Mauvaise triangulation. (c) Bonne triangulation.

Nous pensons que l’utilisation d’une m´etrique perceptive est une technique puissante pour optimiser les calculs en synth`ese d’images. Les m´ethodes d’animation pourraient ´egalement b´en´eficier de ces crit`eres pour allouer plus de ressources dans les parties de la sc`ene ou du mouvement les plus visibles par l’observateur.

Autres questions

Le squelette de visibilit´e pourrait ´egalement ˆetre utilis´e pour des m´ethodes stochastiques. Pour les m´ethodes classiques de Monte-Carlo, la nature purement al´eatoire de l’´echantillonnage rend difficile la prise en compte d’une ´eventuelle coh´erence. Cependant, une approche plus r´ecente comme l’´echantillonnage de Metropolis [VG97] pourrait tirer partie du squelette de visibilit´e pour une meilleure exploration de l’espace des chemins lumineux et pour trouver de bons chemins initiaux.

L’extension du squelette de visibilit´e aux sc`enes en mouvement appelle naturellement son utilisation pour la mise `a jour de l’´eclairage.