Setmana de la Ciència
La ciència del color. El color de la ciència

SIMULACIÓ DE LA LLUM

Grup de Gràfics de Girona (GGG)
Institut d'Informàtica i Aplicacions
Departament d'Informàtica i Matemàtica Aplicada
Universitat de Girona


Teoria del color

Podem veure les coses i distingir el seu color gràcies a la llum. Per això, els programes d'ordinador que serveixen per generar imatges que representin el món real necessiten simular el comportament de la llum. Quant més real volguem que sembli allò que representarem amb l'ordinador, més real ha de ser el color de cada objecte de la imatge i, per tant, més real ha de ser la simulació de la llum.

Els objectes que produeixen llum per ells mateixos s'anomenen focus o fonts de llums. N'hi ha de dues classes:

Exemples de focus de llum puntual (esquerra) i extens (dreta).
(Imatges creades pel GGG)

 

En el mon real hi ha cossos que no deixen passar la llum i cossos que sí. Quan no deixen passar la llum parlem de cossos opacs. Quan el cos deixa passar la llum ens podem trobar amb dos tipus d'objectes:

La llum que travessa un cos es diu que es refracta.

La llum que rebota en un cos opac es diu que es reflecteix.

La llum també pot ser retinguda; aleshores es diu que el cos l'absorbeix.

Exemple de llum travessant objectes translúcids.
(Imatge de R. Redner)

 

La reflexió de la llum té comportaments diferents segons que la superfície de l'objecte on rebota sigui:

Esfera amb superfície difusa (esquerra) o especular (dreta).
(Imatges creades pel GGG)

 

  La llum es propaga (transporta) en totes les direccions seguint línies rectes. Aquestes rectes reben el nom de raigs de llum.

La llum rebuda per un punt vé mitjançant linies rectes de les fonts de llum directa o indirectament.
(Imatge del 1993 Educators' Slide Set, "Examining Radiosity", ACM SIGGRAPH)

 

Les zones a les que no hi arriba cap raig són les ombres.

Les zones a les que només hi arriben part dels raigs són les penombres.

Les penombres apareixen quan els objectes estan il.luminats per fonts de llum extenses.

Ombres i penombres associades a diferents tipus de fonts de llum.
(Imatges creades pel GGG)

 

La llum blanca està formada per set colors, els mateixos que veiem en l'Arc de Sant Martí. Els objectes opacs reflecteixen una part dels colors que formen la llum que els il.lumina, i n'absorbeixen una altra part. Així, el color que veiem d'un objecte resulta de la barreja de tots els colors reflectits. En el cas d'objectes transparents o translúcids, el seu color vé donat també per la llum que els travessa.


La llum és absorbida per exemple dins de mitjans participatius.
(Imatge de T. Nishita et al., "Display of Clouds Taking Into Account Multiple Anisotropic Scattering and Skylight", SIGGRAPH '96)

 

En el context de la física de la llum, una possible representació del color vé donada per la suma de colors. Així, la suma de vermell (red), verd (green) i blau (blue) (R,G,B) dóna blanc. És per això que aquest tres colors reben el nom de colors primaris. La suma dos a dos de colors primaris dóna els anomenats colors secundaris (groc, cian i magenta).

Model additiu del color (R, G, B).
(Imatge de Foley et al., "Computer Graphics, Principles and Practice, Second Edition", 1990)

 

Diferents models de color
(Imatge de Foley et al., "Computer Graphics, Principles and Practice, Second Edition", 1990)

 

Esfera il.luminada per tres focus de llum (vermell, verd i blau).
(Imatge creada pel GGG)

 

Efecte d'un mitjà participatiu: la llum és reflectida en els punts que composen el mitjà.
(Imatges creades pel GGG)

 

Amb la mescla en proporcions adequades de vermell, verd i blau es pot formar doncs qualsevol color. És en això que es basa la generació del color en una pantalla de computador (o de televisió). En aquestes pantalles hi ha molts (més d'un milió) petits punts anomenats pixels (de picture element). Cada pixel està format per tres petites superfícies de fòsfor, una vermella, una verda i una blava, que agafen més o menys intensitat en funció dels electrons que reben. Finalment, els tres colors primaris d'aquestes petites superfícies es fonen a la retina de l'observador sintetitzant el color corresponent.

Pantalla = conjunt de pixels. Pixel: composicio de vermell, verd i blau.
(Figura de W.M. Newman et al., "Principles of interactive computer graphics", 1981)

 

Petita animació d'una escena amb focus de llum de diferents colors
(Animació creada pel GGG)


Progressió històrica de les tècniques de generació d'imatges per computador

En aquesta secció mostrem algunes imatges representatives d'una seqüència anomenada "The Shutterbug Rendering Progression" d'un congrès d'informàtica gràfica celebrat l'any 1991 (SIGGRAPH '91).

Inicialment les imatges generades per computador simplement mostraven "filferros".
(Imatge del 1991 Educators' Slide Set, "The Shutterbug Rendering Progression", ACM SIGGRAPH)

 

Més tard van apareixer mètodes per determinar les línies visibles.
(Imatge del 1991 Educators' Slide Set, "The Shutterbug Rendering Progression", ACM SIGGRAPH)

 

També es va poder determinar quines eran les superfícies visibles. El color associat a cada superfície estaba basat simplement en una informació d'il.luminació d'ambient.
(Imatge del 1991 Educators' Slide Set, "The Shutterbug Rendering Progression", ACM SIGGRAPH)

 

Millors imatges es van aconseguir aplicant models locals d'il.luminació més acurats a cada superfície.
(Imatge del 1991 Educators' Slide Set, "The Shutterbug Rendering Progression", ACM SIGGRAPH)

 

Altres millores són el tractament de superfícies corbes, i de múltiples focus de llum.
(Imatge del 1991 Educators' Slide Set, "The Shutterbug Rendering Progression", ACM SIGGRAPH)

 

Per a aconseguir més realisme, diferents tècniques van aparèixer (texture, displacement, reflection mapping).
(Imatge del 1991 Educators' Slide Set, "The Shutterbug Rendering Progression", ACM SIGGRAPH)

 

Generació d'imatges realistes per computador

Simulació de la realitat en el computador.
(Figura de M.F. Cohen et al., "Radiosity and Realistic Image Synthesis", 1993)

Per tal d'obtenir una imatge realista amb un programa informàtic caldrà:

 

Una de les tècniques més habituals en el càlcul de imatges realistes amb computador és la de del Traçat de Raigs (Ray Tracing).

El traçat de raigs és una família de tècniques per obtenir imatges foto-realistes mitjançant l'ordinador. Dintre d'aquesta família hi ha un mètode que es basa en la simulació de la física de la llum, i que és capaç d'obtenir imatges de gran precisió per a escenes (virtuals) complexes, incloent miralls, objectes metàlics o difusos, vidres, boires, etc. Bàsicament, en aquest mètode se simulen els camins recorreguts per fotons (partícula elemental de radiació electromagnètica). La llum emesa pels diferents focus de llum que hi apareixen a l'escena és simbolitzada per un conjunt finit de fotons. En la realitat, els fotons són emesos contínuament per les llums a gran velocitat. A l'ordinador, en canvi, es fa la simulació del seguiment d'un conjunt relativament petit de fotons. Per cada fotò es fa el mateix procediment. Primer se selecciona aleatòriament (és a dir, amb un procés d'incertesa, com és per exemple el llançament dels daus...) un focus de llum de partida, un punt dins del focus i una direcció. Acte seguit, se segueix en línia recta el camí recorregut pel fotò. Si suposem que els fotons travessen l'espai buit (és a dir, no hi ha núvols per exemple), llavors aquests arribaran a xocar contra superfícies dels objectes que composen l'escena o es perdran a l'espai exterior (perquè no xoquen contra res). En el moment en que el fotò xoca contra la superfície, per lleis físiques hi ha una certa probabilitat de que sigui absorbit (transformant-se llavors en una altra forma d'energia, no visible, com per exemple la calor), que sigui reflectit, o que sigui transmès (cap a dins del material intern de la superficie). Novament els computadors fan un joc aleatori per decidir quin tipus d'interacció és el que serà simulat. En el cas de que es decideixi que hi ha absorció, llavors es considera que aquest fotò mor (i és el moment de fer la simulació per al següent fotò). Sinó, llavors és que hi ha reflexió o transmissió, i són les lleis de la física, tenint en compte les propietats geomètriques i òptiques de la superfície, les que ens donaran, (mitjançant un model matemàtic adient dins el computador), la direcció "de rebot" que tindrà el fotò. Aquest procés continua fins que el fotò o bé és absorbit, o es perd a l'espai.

 

Exemple d'una imatge calculada mitjançant light tracing
(Imatge d'E. Lafortune)

 

Mostra d'alguns camins seguits per la llum a traves de l'escena
(Imatge d'E. Lafortune)

 

Per aconseguir una imatge cal tenir una càmera, que en aquest cas serà una càmera virtual. Aquesta càmera estarà ubicada en una certa posició, i tindrà una certa direcció principal. La imatge associada a aquesta càmera serà una graella bidimensional de pixels. Intuitivament, és com si s'estigues fent una foto, sobre un paper, que està dividit en un conjunt de petites àrees. Cadascuna d'aquestes petites àrees és el que correspondria a un pixel. Quan un fotò de la simulació xoca contra l'àrea relacionada amb un pixel, aquest emmagatzema l'energia que passa per ell, com si fós la pel.lícula sensible de les càmeres fotogràfiques. Amb un número suficient de fotons, tots els pixels acumularan una certa energia, i la imatge estarà calculada.

 

Petita animació d'un entorn dinàmic.
(Animació creada pel GGG)

 

Petita animació amb càmera dinàmica.
(Animació creada pel GGG)

 

Petita animació tenint en compte només la llum d'ambient
(Animació creada pel GGG)

 

Petita animació tenint en compte els focus de llum
(Animació creada pel GGG)

 

Petita animació tenint en compte boira
(Animació creada pel GGG)

 

Aplicacions

L'ús de la simulació de la llum és present en moltes aplicacions informàtiques.


    Last modified: Monday, 02-Nov-1998 21:03:35 CET