FR2964776A1 - Procede d’estimation de diffusion de la lumiere dans un milieu homogene - Google Patents

Procede d’estimation de diffusion de la lumiere dans un milieu homogene Download PDF

Info

Publication number
FR2964776A1
FR2964776A1 FR1057329A FR1057329A FR2964776A1 FR 2964776 A1 FR2964776 A1 FR 2964776A1 FR 1057329 A FR1057329 A FR 1057329A FR 1057329 A FR1057329 A FR 1057329A FR 2964776 A1 FR2964776 A1 FR 2964776A1
Authority
FR
France
Prior art keywords
light
medium
projection coefficients
coefficients
wout
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
FR1057329A
Other languages
English (en)
Inventor
Pascal Gautron
Jean-Eudes Marvie
Olivier Mocquard
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Licensing SAS filed Critical Thomson Licensing SAS
Priority to FR1057329A priority Critical patent/FR2964776A1/fr
Priority to KR1020110091327A priority patent/KR20120028250A/ko
Priority to EP11180935.6A priority patent/EP2428935B1/fr
Priority to CN201110270909.5A priority patent/CN102402795B/zh
Priority to JP2011200653A priority patent/JP5848071B2/ja
Publication of FR2964776A1 publication Critical patent/FR2964776A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/506Illumination models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computer Graphics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Image Generation (AREA)

Abstract

L'invention concerne un Procédé d'estimatton de la quantité de lumière diffusée par un milieu participant (10) homogène, la lumière étant émise par un environnement lumineux (3). Afin d'améliorer le rendu tout en minimisant les temps de calculs nécessaires, le procédé comprend les étapes de : - estimation d'un premier ensemble de coefficients de projection et d'un deuxième ensemble de coefficients de projection dans une même base orthonormée de fonctions sphériques, ledit premier ensemble étant représentatif de la fonction de luminance incidente reçue par ledit milieu (10) et ledit deuxième ensemble étant représentatif de la fonction de phase dudit milieu (10) ; - estimation de la quantité de lumière diffusée par ledit milieu (10), selon au moins une direction de diffusion de la lumière, à partir desdits premier et deuxième ensembles de coefficients de projection.

Description

PROCEDE D'ESTIMATION DE DIFFUSION DE LA LUMIERE DANS UN MILIEU HOMOGENE
1. Domaine de l'invention. L'invention se rapporte au domaine de la composition d'images de synthèse et plus particulièrement au domaine de la simulation de la diffusion de la lumière dans un milieu participant homogène. L'invention s'inscrit également dans le contexte des effets spéciaux pour une composition en temps réel (de l'anglais « live »).
2. Etat de l'art. Selon l'état de la technique, différentes méthodes existent pour simuler la diffusion de la lumière dans des milieux participants tels que par exemple l'eau, le brouillard, la fumée, la poussière ou les nuages. Les milieux participants correspondent à des milieux composés de particules en suspension qui interagissent avec la lumière pour en modifier le trajet et l'intensité notamment. Les milieux participants peuvent être décomposés en deux parties, à savoir les milieux homogènes tels que l'eau et les milieux hétérogènes, tels que la fumée ou les nuages. Dans le cas des milieux participants homogènes, il est possible de calculer de manière analytique l'atténuation de la lumière émise par une source de lumière. En effet, de part leur nature homogène, ces milieux présentent des paramètres tels que le coefficient d'absorption de la lumière ou le coefficient de diffusion de la lumière de valeur constante en tout point du milieu. A contrario, les propriétés d'absorption et de diffusion de la lumière varient d'un point à un autre dans un milieu participant hétérogène. Pour effectuer le rendu en temps réel de milieux participants homogènes, certaines méthodes effectuent le pré-calcul de certains paramètres représentatifs du milieu participant homogène. Si ces méthodes sont parfaitement adaptés pour une utilisation en studio de post-production par exemple et fournissent un rendu de bonne qualité, ces méthodes ne sont pas adaptés dans le contexte de conception interactive et de composition de rendu haute qualité en temps réel d'un milieu participant homogène. Une telle méthode est par exemple décrite dans la demande de brevet WO2009/003143 déposée par Microsoft Corporation et publiée le 31 décembre 2008. L'invention objet de la demande WO2009/003143 a pour objet un logiciel temps réel de rendu d'un milieu participant et décrit une solution utilisant des fonctions de base radiales. Cette solution ne peut cependant pas être considérée comme une solution de rendu temps réel puisque certains prétraitements doivent être appliqués hors ligne (de l'anglais « offline ») au milieu participant pour pouvoir calculer des coefficients de projection représentant le milieu qui seront utilisés pour des calculs temps réels de synthèse d'image. Avec l'émergence de jeux et d'applications de simulation interactifs, notamment en trois dimensions (3D), le besoin se fait sentir pour des méthodes de simulations temps réel offrant un rendu de milieux participants homogène de haute qualité et réaliste.
3. Résumé de l'invention.
L'invention a pour but de pallier au moins un de ces inconvénients de l'art antérieur. Plus particulièrement, l'invention a notamment pour objectif d'optimiser les temps de calcul et/ou la puissance de calcul nécessaire pour composer un rendu réaliste en temps réel de la diffusion de la lumière dans un milieu participant homogène. L'invention concerne un procédé d'estimation de la quantité de lumière diffusée par un milieu participant homogène, la lumière étant émise par un environnement lumineux, le procédé comprenant les étapes de : - estimation d'un premier ensemble de coefficients de projection dans une base orthonormée de fonctions sphériques, le premier ensemble de coefficients de projection étant représentatif de la fonction de luminance incidente reçue par le milieu participant ; - estimation d'un deuxième ensemble de coefficients de projection dans la base orthonormée de fonctions sphériques, le deuxième ensemble de coefficients de projection étant représentatif de la fonction de phase du milieu participant ; - estimation de la quantité de lumière diffusée par le milieu participant, selon au moins une direction de diffusion de la lumière, à partir des premier et deuxième ensembles de coefficients de projection. Selon une caractéristique particulière, l'estimation du premier ensemble de coefficients de projection est réalisée par projection d'une carte d'environnement représentative de l'environnement lumineux dans la base orthonormée de fonctions sphériques. Avantageusement, les fonctions sphériques sont du type harmonique sphérique.
Selon une caractéristique spécifique, l'environnement lumineux comprend une pluralité de sources lumineuses, la pluralité de sources lumineuses étant à l'infini optique du milieu participant. De manière avantageuse, l'estimation de la quantité de lumière diffusée par le milieu participant est réalisée de manière analytique.
Selon une caractéristique particulière, les premier et deuxième ensembles de coefficients de projection sont stockés dans au moins une table d'une mémoire associée à au moins un processeur graphique. 4. Liste des figures.
L'invention sera mieux comprise, et d'autres particularités et avantages apparaîtront à la lecture de la description qui va suivre, la description faisant référence aux dessins annexés parmi lesquels : - la figure 1 illustre schématiquement un milieu participant homogène diffusant de la lumière, selon un mode de réalisation particulier de l'invention ; - les figures 2A et 2B illustrent un environnement lumineux comprenant plusieurs sources de lumière, selon un mode de réalisation particulier de l'invention ; - la figure 3 illustre schématiquement une méthode d'estimation de la quantité de lumière diffusée par un milieu de la figure 1 éclairé par un environnement lumineux des figures 2A et 2B, selon un mode de réalisation particulier de l'invention ; - la figure 4 illustre un dispositif mettant en oeuvre une méthode d'estimation de la quantité de lumière diffusée, selon un exemple de mise en oeuvre particulier de l'invention ; - les figures 5 et 6 illustrent un procédé d'estimation de la quantité de lumière diffusée, selon deux modes de réalisation particuliers de l'invention. 5. Description détaillée de modes de réalisation de l'invention.
La figure 1 illustre un environnement virtuel ou une scène virtuelle baignant dans un milieu participant homogène 10 (de l'anglais « homogeneous participating media »), par exemple du brouillard, de la fumée ou de la poussière. Un milieu participant est un milieu, composé d'une multitude de particules en suspension, qui absorbe, émet et/ou diffuse de la lumière. Dans sa forme la plus simple, un milieu participant absorbe seulement de la lumière, par exemple de la lumière reçue d'une source de lumière 11 telle que le soleil par exemple. Cela signifie que de la lumière passant au travers du milieu 10 est atténuée, l'atténuation dépendant de la densité du milieu. Le milieu 10 est homogène, c'est-à-dire que les caractéristiques physiques du milieu, telle que la densité des particules le composant par exemple, sont constantes d'un point à un autre dans le milieu. Comme le milieu participant est composé de petites particules qui interagissent avec la lumière, la lumière incidente, c'est-à-dire reçue de la source de lumière 11 selon une direction w;n 110 n'est pas seulement absorbée mais elle est également diffusée. Dans un milieu participant à diffusion isotrope, la lumière est diffusée uniformément dans toutes les directions. Dans un milieu participant à diffusion anisotrope, tel que le milieu 10 illustré en figure 1, la diffusion de la lumière dépend de l'angle entre la direction d'incidence w;n 110 et la direction de diffusion wout 120 de la lumière, la direction de diffusion wout 120 correspondant également à la direction de visualisation d'un spectateur regardant le milieu 10. La quantité de lumière diffusée en un point M 13 du milieu 10 dans la direction de diffusion wout 120 est calculée par l'équation suivante : Q(M, wout) = 0-s(M)-P(M, wout, Win)- Lri(MW in) Equation 1
La quantité de lumière diffusée par un point M 13 du milieu atteignant l'oeil d'un spectateur 12 situé en un point C de l'espace dans la direction wout 120, c'est-à-dire la quantité de lumière diffusée par le point M et atténuée par le milieu 10 sur le trajet M-P, le point P étant situé à l'intersection du milieu 10 et de la direction wout dans la direction du spectateur 12, est alors :
Lp (M, wout) = Q (M, wout). exp1PnzQ ds - t. pour laquelle : - 6S est le coefficient de diffusion du milieu, - 6a est le coefficient d'absorption du milieu, Equation 2 - 6t=6s+6a est le coefficient d'extinction du milieu, - p(M,wout,w;n) est la fonction de phase décrivant comment la lumière provenant de la direction d'incidence w;n est diffusée dans la direction de diffusion wout au point M, - Lri(M,win) est l'intensité lumineuse réduite au point M provenant de la direction d'incidence w;n 110 et représente la quantité de lumière incidente arrivant au point M après diffusion sur le trajet de la lumière dans le milieu 10, - expfP't(s)d' représente l'atténuation de luminance diffusée due à l'absorption et à la diffusion le long du chemin allant de P 15 à m 13. L'équation 2 permet de calculer la quantité de lumière diffusée par un point M et atteignant l'oeil d'un spectateur 12 situé sur la direction wout. Pour calculer la quantité de lumière reçue par un spectateur regardant dans la direction wout, il faut alors effectuer la somme de toutes les contributions de l'ensemble des points du milieu situés sur l'axe wout, c'est-à-dire les points situés sur le segment P-Mmax, P et Mmax étant les deux points d'intersection entre le milieu 10 et la direction wout 120. Cette luminance diffusée totale arrivant en P 15 depuis la direction wout 120 due à la diffusion simple est alors :
L(P, cornu) = f p Mmax Lp (M, wout)dM Equation 3 On suppose ici que la lumière parcourant le trajet C-P n'est pas atténuée, la lumière n'étant pas atténuée à l'extérieur du milieu 10. Cette luminance diffusée totale est obtenue par intégration des contributions de tous les points situés entre P et Mmax sur un rayon ayant wout comme direction. De manière avantageuse, le milieu participant homogène 10 est un élément à trois dimensions, représenté en deux dimensions sur la figure 1 pour des raisons de clarté. Selon une variante, l'environnement virtuel baignant dans le milieu 10 comprend un ou plusieurs objets virtuels, non représentés sur la figure 1, modélisés selon toute méthode connue de l'homme du métier, par exemple par modélisation polygonale, dans laquelle le modèle est assimilé à un ensemble de polygones chacun défini par la liste des sommets et des arêtes qui le compose, par modélisation par courbe de type NURBS (de l'anglais « Non uniform rational basic spline » ou en français « Spline basique rationnelle non uniforme ») dans laquelle le modèle est défini par un ensemble de courbes créées grâce à des points de contrôle (de l'anglais « control vertices »), par modélisation par subdivision de surfaces... On entend par objet virtuel toute représentation virtuelle (obtenue par modélisation) d'un objet (réel ou fictif) composant un environnement réel (par exemple le sol, une maison ou une façade d'une maison, une voiture, un arbre, c'est-à-dire tout élément composant un environnement tel qu'une pièce d'une maison, une rue, une ville, la campagne, ...). Dans le cas où un objet virtuel se trouve dans le milieu 10 dans la direction de visualisation du spectateur wout, le point Mmax correspond au point d'intersection entre la direction wout et l'objet virtuel. Selon une variante, le milieu 10 est éclairé par une pluralité de sources lumineuses, par exemple 100, 1000, 100000 ou 1000000 sources lumineuses. Selon une autre variante, le milieu 10 est éclairé par un environnement lumineux continu, c'est-à-dire comprenant une infinité de sources lumineuses.
Les figures 2A et 2B illustrent un environnement lumineux 2 comprenant plusieurs sources de lumière 23, 24 et 25. Des signes de références identiques sont utilisés pour des éléments identiques sur les figures 2A et 2B. La figure 2A illustre plus particulièrement deux points A 21 et B 22 éclairés par trois sources lumineuses 23, 24 et 25. Le point A 21 est éclairé par la première source lumineuse 23 selon une direction w1A 211, par la deuxième source lumineuse 24 selon une direction W2A 212 et par la troisième source lumineuse 25 selon une direction W3A 213. Le point B 22 est éclairé par la première source lumineuse 23 selon une direction W1B 221, par la deuxième source lumineuse 24 selon une direction W2B 222 et par la troisième source lumineuse 25 selon une direction W3B 223. Le problème posé par un tel environnement lumineux complexe, car possédant plusieurs sources lumineuses, est qu'il est très coûteux en terme de calcul pour une estimation de la lumière incidente dans un milieu puisque la direction de la lumière entre une source et un point du milieu est différente pour chaque point du milieu. En effet, la direction prise par la lumière émise par la première source 23 est différente pour A et pour B, la direction prise par la lumière émise par la deuxième source 24 est différente pour A et pour B et la direction prise par la lumière émise par la troisième source 25 est différente pour A et pour B. Pour résoudre ce problème, l'estimation de la lumière provenant de plusieurs sources lumineuses distantes est réalisée en utilisant la méthode de carte d'environnement (de l'anglais « environment mapping ») selon un mode de réalisation particulier de l'invention, telle qu'illustrée en figure 2B. Plutôt que de considérer une direction exacte de la lumière entre les points A et B d'une part et les sources lumineuses 23, 24, 25 d'autre part (tel qu'illustré sur la figure 2A), la méthode dite de carte d'environnement considère que toutes les sources lumineuses 23, 24 et 25 de l'environnement 2 sont situées à l'infini optique par rapport aux points A et B. Il est ainsi possible de considérer que les directions prises par la lumière émise par une source lumineuse 23, 24 ou 25 sont identiques quels que soient les points A et B du milieu considéré. L'effet de parallaxe dû à la distance séparant les points A et B est ainsi négligé. La direction W1A 211 reliant le point A à la première source lumineuse 23 est considérée comme étant identique à la direction w1B 221 reliant le point B à la première source lumineuse 23. De la même manière, la direction W2A 212 reliant le point A à la deuxième source lumineuse 24 est considérée comme étant identique à la direction W2B 222 reliant le point B à la deuxième source lumineuse 24 et la direction W3A 213 reliant le point A à la troisième source lumineuse 25 est considérée comme étant identique à la direction w3B 223 reliant le point B à la troisième source lumineuse 23. Selon une variante, l'environnement lumineux comprend deux ou plus de trois sources lumineuses, par exemple 1000, 100000 ou 1000000 sources lumineuses.
La figure 3 illustre une méthode d'estimation de la quantité de lumière diffusée par un milieu 10, la lumière étant issue d'un environnement lumineux 3 comprenant une multitude de sources lumineuses 31, 32 et 33, selon un mode de réalisation particulier de l'invention. Pour résoudre de manière analytique l'équation de diffusion simple de la lumière par le milieu 10 le long de la direction de diffusion wout 120 (correspondant à l'équation 3), les hypothèses suivantes sont posées : - Les inter-réflexions multiples et la diffusion multiple génèrent un éclairage « doux » (c'est-à-dire de basse fréquence) : une même carte d'environnement est utilisée pour représenter la lumière incidente en tout point du milieu 10, quelle que soit la localisation du point dans le milieu 10 ; dit autrement, la fonction de luminance incidente décrite par la carte d'environnement du milieu 10 est indépendante du point du milieu 10 pour lequel elle est évaluée. La fonction de luminance incidente est uniquement dépendante de la direction d'incidence w;n considérée. En outre, aucune ombre volumétrique (de l'anglais « light shaft ») n'est générée puisque les ombres volumétriques sont générées par l'éclairage direct d'un objet de l'environnement virtuel ; et
- Le milieu participant est homogène, comme cela est le cas par exemple dans les milieux de type brouillard, poussière en suspens dans l'air ou dans les milieux aquatiques : la densité est constante en tout point du milieu et les propriétés optiques du milieu (par exemple les coefficients de diffusion et d'absorption du milieu) sont constantes en tout point du milieu.
Comme cela a été décrit en regard de la figure 1, la lumière diffusée en un point M 13 par le milieu 10 est une composition de l'atténuation de la lumière reçue par le milieu 10 d'une source lumineuse 11 et de la diffusion de cette quantité de lumière atténuée reçue par le milieu 10. En partant de l'équation 3 de diffusion simple du milieu 10 par une seule source de lumière et en la développant, on obtient l'équation 4 suivante : L(P, (omit) = fP 'ax 6s(M)- p(M, wout, win). Lri(M, min). expfp -at(s)ds dM (4) Puisque la lumière provient de chaque direction w;n de l'environnement lumineux 3, on obtient l'équation 5 suivante :
M L(P, wout) = fP max 6s(M) f. p(M, coout, win)- Lri(M, ûin)dûin. exp1P -at(s)ds dM (5) où 0 représente l'ensemble de directions d'incidencew ;n au point M dans une sphère unité 36 centrée sur M. L'environnement lumineux 3 étant continu, il existe une infinité de directions d'incidence (An.
Comme le milieu participant est considéré comme étant homogène, les propriétés optiques moyennes du milieu participant sont constantes, c'est-à-dire les coefficients de diffusion (MM), d'absorption 6a(M) et d'extinction 6t(M) et la fonction de phase p(M,wout,w;n) sont constants en tout point M du milieu participant 10 : 6S(M)=6S ; 6a(M)=6a ; 6t(M)=6t et p(M,wout,w;n)=p(wout,w;n). L'équation 5 devient alors l'équation 6 suivante : Mmax Q , oiout) = f p 6s fn P(@out, coin). Lri(M, coin) dwin- exp- tl1P-m11 dM Selon nos hypothèses, la lumière est considérée indépendante de la localisation du point éclairé dans le milieu participant 10. L'équation 6 est simplifiée de la manière suivante pour aboutir à l'équation 7 suivante : Mmax o P-M LCP, wout) = fp 6s fn P(@out, coin). Lri/ (Win)dWin- exp tIl II dM (7) Considérons maintenant l'intégrale intérieure de l'équation 7 ci- dessus comprenant le produit de la lumière incidente et de la fonction de phase du milieu : L-(wout) = fs-, P(wout, Win)- Lri(Win)dWin Equation 8 Chaque fonction de l'espace fonctionnel peut être écrite comme une combinaison linéaire de fonctions de base, une fonction de base étant un élément d'une base pour un espace fonctionnel. En utilisant une base orthonormée de fonctions sphériques et en projetant les fonctions Lri et p dans la base orthonormée de fonctions sphériques, il est possible de
représenter les fonctions Lri et p respectivement par : (6) Lri (Win) Gj jLriYJ (lin) P(~+ Win, fout) L,j A.j P(wout)Yj (coin) Equation 9 Equation 10 où L. est le jieme coefficient de projection (sur un total de Nc coefficients, Nc correspondant à un nombre de coefficients fixé de manière prédéterminée) représentatif de la lumière incidente dans la fonction de base Yi(Win) et où a.p(wout) est le jième coefficient de projection (sur un total de Nc coefficients, Nc correspondant à un nombre de coefficients fixé de manière 30 prédéterminée) représentatif de la fonction de phase dans la fonction de base Yj(win). Deux ensembles de Nc coefficients de projection de fonction de base ainsi calculés sont stockés dans une ou plusieurs tables d'une mémoire du GPU. Le premier ensemble de coefficients est représentatif de 35 l'atténuation de la lumière, émise par un environnement lumineux comprenant plusieurs sources de lumière, due à la diffusion simple de la lumière depuis toute direction pour chaque point du milieu 10. Le deuxième ensemble de coefficients est représentatif de la fonction de phase du milieu 10.
De manière avantageuse, la fonction de phase et la fonction de luminance incidente sont représentées dans une seule et même base orthonormée de fonctions sphériques. Les fonctions de base étant orthonormées, nous avons les propriétés suivantes : f. Yi (colin). Yi (coin) d win = 1 Vj Equation 11 n Y«Win)-Yi(Win)dWin = 0 vi ~ j Equation 12
Il est ainsi possible de tirer profit des propriétés ci-dessus en remplaçant Lri et p dans l'équation de L; : Li (wout) fn Gj ~p(WOUt)Yi (lin) Ej ~LriYJ (lin) doin j Li(cout) Ej ÀP(j (out) ~LriEquation 13 Equation 14 En incorporant cette dernière expression dans l'équation 7, on obtient : L(P, wout) fP Mmax Qs E~ p(wout) Lriexv-etll P-MII dM Equation 15 Et en sortant les termes indépendants de la localisation de M hors de l'intégrale, on obtient : L(P, wout) 6s- Ej À' P(wout)À.Lr,fPMmax exp_atllP-MII dM Equation 16 L'intégrale restante est résolue de la manière suivante : fpmax exp-atllP-MII dM = 1-exp (-atlllMmax-PII) Equation 17 t On obtient alors l'équation finale permettant d'estimer la quantité 35 de lumière diffusée par le milieu 10 le long d'une direction de diffusion wout 120 : L(P, wout 6s- A! 1 J 1-exp (-otllMmax-PII) G j P(wout) Lri Qt L'équation 18 présente l'avantage de pouvoir être calculée de manière analytique et en temps réel en fonction du point de vue, c'est-à-dire de la direction de visualisation, du spectateur regardant l'environnement virtuel baignant dans le milieu participant 10. La figure 4 illustre schématiquement un exemple de réalisation matérielle d'un dispositif 4 adapté à l'estimation de la quantité de lumière diffusée par un milieu participant homogène 10 et à la création de signaux d'affichage d'une ou plusieurs images. Le dispositif 4 correspondant par exemple à un ordinateur personnel PC, à un ordinateur portable (de l'anglais « laptop ») ou à une console de jeux.
Le dispositif 4 comprend les éléments suivants, reliés entre eux par un bus 45 d'adresses et de données qui transporte également un signal d'horloge :
- un microprocesseur 41 (ou CPU) ;
- une carte graphique 42 comprenant :
- plusieurs processeurs de traitement graphique 420 (ou GPUs) ;
- une mémoire vive de type GRAM (de l'anglais
« Graphical Random Access Memory ») 421 ;
- une mémoire non volatile de type ROM (de l'anglais « Read Only Memory ») 46 ;
- une mémoire vive ou RAM (de l'anglais « Random Access Memory ») 47 ;
- un ou plusieurs dispositifs I/O (de l'anglais « Input/Output » ou en français « Entrée/Sortie ») 44, tels que par exemple un clavier, une souris, une webcam ; et
- une alimentation 48.
Le dispositif 4 comprend également un dispositif d'affichage 43 de type écran d'affichage relié directement à la carte graphique 42 pour afficher notamment le rendu d'images de synthèse calculées et composées dans la
35 carte graphique, par exemple en temps réel. L'utilisation d'un bus dédié pour relier le dispositif d'affichage 43 à la carte graphique 42 offre l'avantage d'avoir des débits de transmission de données beaucoup plus important et Equation 18 25 30 ainsi de diminuer le temps de latence pour l'affichage d'images composées par la carte graphique. Selon une variante, un appareil pour afficher est externe au dispositif 4 et est relié au dispositif 4 par un câble transmettant les signaux d'affichage. Le dispositif 4, par exemple la carte graphique 42, comprend un moyen de transmission ou connecteur (non représenté sur la figure 4) adapté à transmettre un signal d'affichage à un moyen d'affichage externe tel que par exemple un écran LCD ou plasma, un vidéoprojecteur. On observe que le mot « registre » utilisé dans la description des mémoires 42, 46 et 47 désigne dans chacune des mémoires mentionnées, aussi bien une zone de mémoire de faible capacité (quelques données binaires) qu'une zone mémoire de grande capacité (permettant de stocker un programme entier ou tout ou partie des données représentatives de données calculées ou à afficher). A la mise sous tension, le microprocesseur 41 charge et exécute 15 les instructions du programme contenu dans la RAM 47. La mémoire vive 47 comprend notamment : - dans un registre 430, le programme de fonctionnement du microprocesseur 41 chargé à la mise sous tension du dispositif 4 20 - des paramètres 471 représentatifs du milieu participant homogène 10 (par exemple paramètres de densité, de coefficients d'absorption de la lumière, de coefficients de diffusion de la lumière). Les algorithmes mettant en oeuvre les étapes du procédé propres 25 à l'invention et décrits ci-après sont stockés dans la mémoire GRAM 47 de la carte graphique 42 associée au dispositif 4 mettant en oeuvre ces étapes. A la mise sous tension et une fois les paramètres 470 représentatifs du milieu chargés en RAM 47, les processeurs graphiques 420 de la carte graphique 42 charge ces paramètres en GRAM 421 et exécute les instructions de ces 30 algorithmes sous la forme de microprogrammes du type « shader » utilisant le langage HLSL (de l'anglais « High Level Shader Language » ou en français « Langage de programmation « shader » de haut niveau »), le langage GLSL (de l'anglais « OpenGL Shading language » ou en français « Langage de shaders OpenGL ») par exemple. 35 La mémoire vive GRAM 421 comprend notamment : dans un registre 4210, les paramètres représentatifs du milieu 10; - des premiers coefficients de projection 4211 représentatifs de la luminance incidente en tout point du milieu 10 ; - des deuxièmes coefficients de projection 4212 représentatifs de la fonction de phase en tout point du milieu 10 ; et - des valeurs 4214 représentatives de la quantité de lumière diffusée par le milieu 10 selon une ou plusieurs directions d'observation. Selon une variante, une partie de la RAM 47 est allouée par le CPU 41 pour stocker les coefficients 4211 et 4212 et les valeurs 4214 si l'espace mémoire disponible en GRAM 421 est insuffisant. Cette variante entraîne cependant des temps de latence plus important dans la composition d'une image comprenant une représentation du milieu 10 composée à partir des microprogrammes contenus dans les GPUs puisque les données doivent être transmises de la carte graphique à la mémoire vive 47 en passant par le bus 45 dont les capacités de transmission sont généralement inférieures à celles disponibles dans la carte graphique pour faire passer les données des GPUs à la GRAM et vice-versa. Selon une autre variante, l'alimentation 48 est externe au dispositif 4.
La figure 5 illustre un procédé d'estimation de la quantité de lumière diffusée par un milieu participant homogène mis en oeuvre dans un dispositif 4, selon un premier exemple de mise en oeuvre non limitatif particulièrement avantageux de l'invention.
Au cours d'une étape d'initialisation 60, les différents paramètres du dispositif 4 sont mis à jour. En particulier, les paramètres représentatifs du milieu participant homogène 10 sont initialisés d'une manière quelconque. Ensuite, au cours d'une étape 51, un premier ensemble de premiers coefficients de projection d'une fonction de base dans une base orthonormée de fonctions sphériques sont estimés, ces premiers coefficients de projection étant représentatifs de la luminance incidente en tout point du milieu participant homogène 10. Pour ce faire, la fonction de luminance incidente Lri(M,win), qui représente la quantité de lumière incidente arrivant en un point M du milieu après diffusion de la lumière dans le milieu participant 10 selon la direction d'incidence w;n, est projetée dans une base orthonormée de fonctions sphériques. La fonction décrivant la carte d'environnement 3 (dite fonction de luminance incidente) représentative de la lumière incidente dans le milieu 10 est représentée en utilisant la base orthonormée de fonctions sphériques. L'infinité de directions d'incidence mi pour lesquelles sont obtenus les premiers coefficients de projection forment une sphère 0 ayant pour centre un point M quelconque de l'environnement virtuel. Le nombre de premiers coefficients de projection est choisi de manière à trouver le meilleur compromis entre la puissance de calcul nécessaire au calcul de ces coefficients et la précision de l'estimation de la quantité de lumière diffusée le long d'une direction de diffusion out souhaitée par un utilisateur du dispositif 4. Comme l'environnement lumineux est considéré comme étant à l'infini optique du milieu participant 10, les inter-réflexions de la lumière à l'intérieur du milieu participant 10 sont négligées et les valeurs des premiers coefficients sont identiques en tout point M du milieu participant 10. Puis, au cours d'une étape 52, un deuxième ensemble de deuxièmes coefficients de projection d'une fonction de base dans une base orthonormée de fonctions sphériques sont estimés, ces deuxièmes coefficients de projection étant représentatifs de la fonction de phase p du milieu participant 10. Pour ce faire, la fonction décrivant la fonction de phase du milieu 10 est représentée en utilisant la base orthonormée de fonctions sphériques ayant servi à représenter la fonction de luminance incidente. La fonction de phase est ainsi projetée dans un deuxième ensemble de deuxièmes coefficients de projection d'une base de fonctions sphériques. La fonction de phase décrit comment la lumière provenant de la direction d'incidence mi est diffusée dans la direction de diffusion wout au point M. Le milieu participant 10 étant homogène, la fonction de phase p est indépendante de la localisation du point M considéré du milieu participant 10. La fonction de phase p est uniquement dépendante de la direction d'incidence w;n de la lumière incidente et de la direction de diffusion wout de la lumière diffusée, par exemple dépendante de l'angle formé par les directions w;n et wout. L'infinité de directions d'incidence w;n pour lesquelles sont obtenus les deuxièmes coefficients de projection forment une sphère 0 ayant pour centre un point M quelconque de l'environnement virtuel. De manière avantageuse, la sphère ainsi formée est identique à la sphère formée par les directions d'incidences associées aux premiers coefficients de projection. Le nombre de deuxièmes coefficients de projection est choisi de manière à trouver le meilleur compromis entre la puissance de calcul nécessaire au calcul de ces coefficients et la précision de l'estimation de la quantité de lumière diffusée le long d'une direction de diffusion out souhaitée par un utilisateur du dispositif 4. Avantageusement, le nombre de premiers coefficients est égal au nombre de deuxièmes coefficients. Puis, au cours d'une étape 53, la quantité de lumière diffusée par le milieu 10 selon une direction d'émission 120 est estimée en utilisant les premiers coefficients de projection et les deuxièmes coefficients de projection estimés précédemment. Pour ce faire, l'équation 18 est résolue analytiquement. Aucun pré-calcul n'est alors nécessaire pour effectuer le rendu de la diffusion de la lumière dans un milieu participant homogène, autorisant le rendu temps réel de tels milieux dans des applications interactives de type jeu vidéo par exemple dans lequel l'utilisateur est amené à se déplacer virtuellement dans un espace comprenant un ou plusieurs milieux participants homogènes. De manière avantageuse, la quantité de lumière diffusée par le milieu 10 est estimée pour plusieurs directions d'émission. En faisant la somme de ces quantités de lumière estimées pour une pluralité de direction d'émission, on obtient la quantité de lumière totale diffusée par le milieu 10 et perçue par un spectateur 12 observant le milieu 10. L'étape 53 est avantageusement réitérée au fur et à mesure qu'un spectateur 12 se déplace autour du milieu 10, l'image formant le rendu du milieu 10 étant recomposée pour chaque déplacement élémentaire du spectateur 12 autour du milieu 10. Les premiers coefficients de projection étant valables pour chaque point M du milieu 10, tout comme les deuxièmes coefficients de projection, il n'est pas nécessaire de calculer à nouveau les premiers coefficients de projection, ni les deuxièmes coefficients de projection, lorsque le point de vue du spectateur 12 change, c'est-à-dire lorsque la direction de visualisation (équivalent à la direction de diffusion wout) change. Seule l'étape 53 est réitérée lorsque le point de vue du spectateur 12 change.
La figure 6 illustre un procédé d'estimation de la quantité de lumière diffusée par un milieu participant homogène mis en oeuvre dans un dispositif 4, selon un deuxième exemple de mise en oeuvre non limitatif particulièrement avantageux de l'invention.
Au cours d'une étape d'initialisation 60, les différents paramètres du dispositif 4 sont mis à jour. En particulier, les paramètres représentatifs du milieu participant homogène 10 sont initialisés d'une manière quelconque.
Ensuite, au cours des étapes 61 et 62, des premiers coefficients de projection représentatifs de la quantité de lumière incidente reçue en tout point du milieu participant homogène 10 et des deuxièmes coefficients de projection représentatifs de la fonction de phase du milieu 10 sont estimés de la même manière que celle décrite en regard des étape 51 et 52 de la figure 5. Les étapes 61 et 62 ne sont donc pas détaillées à nouveau ici. Puis au cours d'une étape 63, les premiers coefficients de projection et les deuxièmes coefficients de projection précédemment estimés sont enregistrés et stockés dans une structure de données composé de tables enregistrées dans une mémoire associée aux GPUs. Ces enregistrements sont appelés respectivement enregistrements de luminance et enregistrement de phase. Les tables d'enregistrement de luminance et de phase comprennent de manière avantageuse l'ensemble des premiers coefficients de projection et des deuxièmes coefficients de projection. Un tel stockage des coefficients de projection offre l'avantage d'accélérer les calculs d'estimation de la quantité de lumière diffusée par le milieu 10 et perçue par un spectateur, les premiers et deuxièmes coefficients de projection étant disponible à tout moment et de manière immédiate pour une utilisation dans l'équation 18.
Enfin, au cours d'une étape 64, la quantité de lumière diffusée est estimée de la même manière que celle décrite en regard de l'étape 53 de la figure 5.
Bien entendu, l'invention ne se limite pas aux modes de réalisation 25 décrits précédemment. En particulier, l'invention n'est pas limitée à un procédé d'estimation de la quantité de lumière diffusée par un milieu participant homogène mais s'étend également à tout dispositif mettant en oeuvre ce procédé et notamment tous les dispositifs comprenant au moins un GPU. La 30 mise en oeuvre des équations décrites en regards des figures 1 à 3 pour l'estimation des premiers et deuxièmes coefficients de projection et de la quantité de lumière diffusée n'est pas non plus limitée à une mise en oeuvre dans des microprogrammes de type shader mais s'étend également à une mise en oeuvre dans tout type de programme, par exemple des programmes 35 exécutables par un microprocesseur de type CPU.
De manière avantageuse, les fonctions de base utilisées pour l'estimation des coefficients de projections sont des fonctions de type harmoniques sphériques ou de type ondelettes sphériques. L'utilisation de l'invention n'est pas limitée à une utilisation temps réel mais s'étend également à toute autre utilisation, par exemple pour les traitements dits de postproduction en studio d'enregistrement pour le rendu d'images de synthèse par exemple. La mise en oeuvre de l'invention en postproduction offre l'avantage de fournir un excellent rendu visuel en termes de réalisme notamment tout en diminuant les temps de calcul nécessaires.
L'invention concerne également un procédé de composition d'une image vidéo, en deux dimensions ou en trois dimensions, pour lequel la quantité de lumière diffusée par un milieu participant homogène est calculée et l'information représentative de la luminance qui en découle est utilisée pour l'affichage des pixels de l'image, chaque pixel correspondant à une direction d'observation selon une direction d'observation wout. La valeur de luminance calculée pour affichage par chacun des pixels de l'image est recalculée pour s'adapter aux différents points de vue du spectateur. La présente invention peut être utilisée dans des applications de jeux vidéo par exemple, que ce soit par des programmes exécutables dans un ordinateur de type PC ou portable ou dans des consoles de jeux spécialisées produisant et affichant des images en temps réel. Le dispositif 4 décrit en regard de la figure 4 est avantageusement doté de moyens d'interactions tels que clavier et/ou manette de jeux, d'autres modes d'introduction de commandes telle que par exemple la reconnaissance vocale étant également possibles.

Claims (6)

  1. REVENDICATIONS1. Procédé d'estimation de la quantité de lumière diffusée par un milieu participant (10) homogène, la lumière étant émise par un environnement lumineux (3), caractérisé en ce que ledit procédé comprend les étapes suivantes : - estimation (51, 61) d'un premier ensemble de coefficients de projection dans une base orthonormée de fonctions sphériques, ledit premier ensemble de coefficients de projection étant représentatif de la fonction de luminance incidente reçue par ledit milieu participant (10) ; - estimation (52, 62) d'un deuxième ensemble de coefficients de projection dans ladite base orthonormée de fonctions sphériques, ledit deuxième ensemble de coefficients de projection étant représentatif de la fonction de phase dudit milieu participant (10) ; - estimation (53, 64) de la quantité de lumière diffusée par ledit milieu participant (10), selon au moins une direction de diffusion de la lumière, à partir desdits premier et deuxième ensembles de coefficients de projection.
  2. 2. Procédé selon la revendication 1, caractérisé en ce que l'estimation dudit premier ensemble de coefficients de projection est réalisée par projection d'une carte d'environnement représentative dudit environnement lumineux (3) dans ladite base orthonormée de fonctions sphériques.
  3. 3. Procédé selon l'une des revendications 1 à 2, caractérisé en ce que lesdites fonctions sphériques sont du type harmonique sphérique.
  4. 4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce que ledit environnement lumineux (3) comprend une pluralité de sources lumineuses (31, 32, 33), ladite pluralité de sources lumineuses étant à l'infini optique dudit milieu participant (10).
  5. 5. Procédé selon l'une des revendications 1 à 4, caractérisé en ce que ladite estimation de la quantité de lumière diffusée par le milieu participant (10) est réalisée de manière analytique.
  6. 6. Procédé selon l'une des revendications 1 à 5, caractérisé en ce que lesdits premier et deuxième ensembles de coefficients de projection sont stockés dans au moins une table d'une mémoire associée à au moins un 5 processeur graphique.
FR1057329A 2010-09-14 2010-09-14 Procede d’estimation de diffusion de la lumiere dans un milieu homogene Withdrawn FR2964776A1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FR1057329A FR2964776A1 (fr) 2010-09-14 2010-09-14 Procede d’estimation de diffusion de la lumiere dans un milieu homogene
KR1020110091327A KR20120028250A (ko) 2010-09-14 2011-09-08 균질한 매질 내에서 광의 산란을 추정하기 위한 방법
EP11180935.6A EP2428935B1 (fr) 2010-09-14 2011-09-12 Procédé d'évaluation de diffusion de la lumière dans un support homogène
CN201110270909.5A CN102402795B (zh) 2010-09-14 2011-09-14 估计均匀介质中光散射的方法
JP2011200653A JP5848071B2 (ja) 2010-09-14 2011-09-14 均質な媒質中の光の散乱を推定する方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1057329A FR2964776A1 (fr) 2010-09-14 2010-09-14 Procede d’estimation de diffusion de la lumiere dans un milieu homogene

Publications (1)

Publication Number Publication Date
FR2964776A1 true FR2964776A1 (fr) 2012-03-16

Family

ID=44083907

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1057329A Withdrawn FR2964776A1 (fr) 2010-09-14 2010-09-14 Procede d’estimation de diffusion de la lumiere dans un milieu homogene

Country Status (5)

Country Link
EP (1) EP2428935B1 (fr)
JP (1) JP5848071B2 (fr)
KR (1) KR20120028250A (fr)
CN (1) CN102402795B (fr)
FR (1) FR2964776A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2988502A1 (fr) * 2012-03-26 2013-09-27 Thomson Licensing Procede pour representer un milieu participant dans une scene et dispositif correspondant

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201401225A (zh) * 2012-06-22 2014-01-01 Thomson Licensing 異質參與媒體之一點所接收光量之估計方法及所構成裝置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005083396A1 (fr) * 2004-03-01 2005-09-09 Art Advanced Research Technologies Inc. Imagerie optique a onde continue tenant compte d'une loi de dispersion
US8009168B2 (en) * 2007-06-26 2011-08-30 Microsoft Corporation Real-time rendering of light-scattering media

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Cube Mapping - From Wikipedia, the free encyclopedia", 4 September 2010 (2010-09-04), pages 1 - 4, XP002645249, Retrieved from the Internet <URL:http://en.wikipedia.org/w/index.php?title=Cube_mapping&oldid=382811314> [retrieved on 20110620] *
ANONYMOUS: "Spherical harmonic lighting -From Wikipedia, the free encyclopedia", 15 February 2010 (2010-02-15), pages 1 - 1, XP002645248, Retrieved from the Internet <URL:http://en.wikipedia.org/wiki/Spherical_harmonic_lighting> [retrieved on 20110622] *
NIELSEN M B: "Course Notes for Simulating Fluids in CG Ray Marching", INTERNET CITATION, 7 April 2009 (2009-04-07), pages 1 - 4, XP002596943, Retrieved from the Internet <URL:http://www.daimi.au.dk/~bang/fluids2009/raymarching.pdf> [retrieved on 20100811] *
SCHÖNEFELD V: "Spherical Harmonics", INTERNET CITATION, July 2005 (2005-07-01), pages 1 - 25, XP002599101, Retrieved from the Internet <URL:http://heim.c-otto.de/~volker/prosem_paper.pdf> [retrieved on 20100830] *
TOKUYOSHI Y ET AL: "A fast rendering method for a scene with participating media of anisotropic scattering property", COMPUTER GRAPHICS INTERNATIONAL 2005 STONY BROOK, NY, USA JUNE 22-24, 2005, PISCATAWAY, NJ, USA,IEEE, 22 June 2005 (2005-06-22), pages 227 - 233, XP010830152, ISBN: 978-0-7803-9330-1, DOI: DOI:10.1109/CGI.2005.1500423 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2988502A1 (fr) * 2012-03-26 2013-09-27 Thomson Licensing Procede pour representer un milieu participant dans une scene et dispositif correspondant
WO2013144029A1 (fr) * 2012-03-26 2013-10-03 Thomson Licensing Procédé de représentation d'un élément multimédia participant dans une scène et dispositif correspondant
US9626791B2 (en) 2012-03-26 2017-04-18 Thomson Licensing Method for representing a participating media in a scene and corresponding device

Also Published As

Publication number Publication date
KR20120028250A (ko) 2012-03-22
EP2428935A1 (fr) 2012-03-14
JP5848071B2 (ja) 2016-01-27
CN102402795B (zh) 2016-08-03
CN102402795A (zh) 2012-04-04
JP2012064212A (ja) 2012-03-29
EP2428935B1 (fr) 2016-11-02

Similar Documents

Publication Publication Date Title
EP1982310B1 (fr) Procede de synthese d&#39;une image virtuelle par lancer de faisceaux
FR2965652A1 (fr) Procede d’estimation de la quantite de lumiere recue en un point d’un environnement virtuel
FR2988891A1 (fr) Procede d&#39;estimation de niveau d&#39;opacite dans une scene et dispositif correspondant
US11049315B2 (en) Methods and devices for bifurcating graphics rendering between a media player device and a multi-access edge compute server
EP1527599A2 (fr) Procede et systeme permettant a un utilisateur de melanger en temps reel des images de synthese avec des images video
US20100265250A1 (en) Method and system for fast rendering of a three dimensional scene
US11574449B1 (en) Methods and systems for off-device image frame rendering in augmented reality applications
Peddie Ray tracing: a tool for all
FR2966623A1 (fr) Procede d’estimation de l’occultation dans un environnement virtuel
Delalandre et al. Transmittance function mapping
FR2964775A1 (fr) Procede d&#39;estimation de l&#39;occultation dans un environnement virtuel
EP2504816B1 (fr) Procede d&#39;estimation de diffusion de la lumiere
KR20140000170A (ko) 관여 매질에 의해 수광된 광의 양을 추정하기 위한 방법 및 대응하는 장치
McGuire et al. Phenomenological transparency
Eisemann et al. Efficient real-time shadows
WO2011057997A2 (fr) Procede d&#39;estimation de diffusion de la lumiere
WO2011058007A2 (fr) Procede d&#39;estimation de diffusion de la lumiere
FR2974217A1 (fr) Procede d’estimation d’une information representative d’une hauteur
FR2964776A1 (fr) Procede d’estimation de diffusion de la lumiere dans un milieu homogene
Elek et al. Spectral ray differentials
EP2589025A2 (fr) Procede d&#39;estimation de diffusion de la lumiere
FR2988502A1 (fr) Procede pour representer un milieu participant dans une scene et dispositif correspondant
Thompson et al. Real-time mixed reality rendering for underwater 360 videos
Habel et al. Physically based real-time translucency for leaves
WO2010094619A1 (fr) Procede d&#39;estimation de diffusion de la lumiere

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20120531