RADIOSITY Algoritmo di calcolo della luce realistica

Slides:



Advertisements
Presentazioni simili
Facciamo Luce Il Cuneo D'Aria.
Advertisements

Materiale di supporto all’insegnamento di ELABORAZIONI IMMAGINI 1
PROGETTO LAUREE SCIENTIFICHE
Ombre e riflessioni in tempo reale
Acustica degli ambienti chiusi
Cap. 12 Area dei quadrilateri e del triangolo
Fisica 2 18° lezione.
Fisica 2 Elettrostatica
Meccanica aprile 2011 Urti Conservazione della quantita` di moto e teorema dell’impulso Energia cinetica Urti elastici e anelastici Urto con corpi.
Esercizio 1 Un filo indefinito è costituito da due semirette AB e BC formanti un angolo retto, come in figura Il filo è percorso da una corrente I = 10.
Esercizio 1 Un condensatore piano di area A=40 cm2 e distanza tra i piatti d=0.1 mm, e` stato caricato collegandolo temporaneamente ad un generatore di.
Ottica geometrica 1 18 gennaio 2013
Rendering È quel processo di creazione di un’immagine bidimensionale a partire da un modello tridimensionale Tale immagine deve tendere a rappresentare.
LA LUCE.
Algoritmi Paralleli e Distribuiti a.a. 2008/09
Energia e potenza nei circuiti elettrici
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione.
CAMPO ELETTRICO E POTENZIALE
Il moto armonico Altro esempio interessante di moto è quello armonico caratterizzato dal fatto che l’accelerazione è proporzionale all’opposto della posizione:
La quantità di moto La quantità di moto di un sistema di punti materiali si ottiene sommando le quantità di moto di ciascun punto materiale Ricordando.
Rotazione di un corpo rigido attorno ad un asse fisso
Applicazioni progettuali di grafica computerizzata a.a. 2008/2009 Rendering grafico.
Il prodotto vettoriale
G.M. - Informatica B-Automazione 2002/03 Estensione della conservazione dellenergia ai sistemi di punti materiali Se tutte le forze interne ed esterne.
FENOMENI INTERFERENZIALI
ONDE ELETTROMAGNETICHE
1 Modelli di Illuminazione Daniele Marini. 2 Obiettivo Visualizzare scene cercando di simulare al meglio la realtà Interazione luce-materiali –Modellare.
Il calcolo di radiosity
1 Modelli Globali Radiosity Daniele Marini. 2 Radiosity Bilancio radiativo in un ambiente chiuso (senza scambio di energia con lesterno) Indipendente.
Analisi quantitativa della tecnica XRF eccitazione policromatica
Infomatica Grafica a.a DICGIM – University of Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica e Meccanica Environment Mapping.
Di Capuano,Colucci e Panunzi Valori medi I valori medi.
Illuminamento e Shading
Scuola Secondaria di 1° grado Mario Zippilli via De Vincentiis, 2 TERAMO Anno scolastico 2009/2010 Programma Nazionale Scuole Aperte AREA TEMATICA Potenziamento.
Interferenza e diffrazione
Effetti fotorealistici
Modelli Globali: Ray Tracing
Davide Gadia Davide Selmo
Modelli Globali e metodo di Radiosity
Daniele Marini, Maurizio Rossi
Texturing - Tessiture Daniele Marini.
Le ombre proiettate Daniele Marini.
Onde 10. I raggi luminosi (I).
Onde 10. I raggi luminosi (I).
Modelli Globali: il metodo di Radiosity
INDICE I VALORI MEDI LA MEDIA GEOMETRICA LA MEDIA ARITMETICA
ILLUMINAZIONE DEI POSTI DI LAVORO PRINCIPI GENERALI
Modelli di Illuminazione
Ombre e riflessioni in tempo reale Daniele Marini Parzialmente tratte de: Haines-M ö ller Corso di Programmazione Grafica aa2005/2006.
Modelli di Illuminazione Modelli locali
L'ottica studia i fenomeni luminosi.
L’IRRAGGIAMENTO.
La ricorsione.
Epistemologia delle scienze naturali (II Sem.) La natura del Tempo e la teoria della relatività di Einstein Francesco Orilia.
Esercizi (attrito trascurabile)
Clipping Antonio Cisternino Parte di queste slides sono a cura del Dott. Cignoni.
25 ottobre 2010Propagazione in Esterno1 Propagazione del suono in ambiente esterno.
Flusso di Costo Minimo Applicazione di algoritmi: Cammini Minimi Successivi (SSP) Esercizio 1 Sia data la seguente rete di flusso, in cui i valori riportati.
25 ottobre 2010Propagazione in Esterno1 Propagazione del suono in ambiente esterno.
Ottica geometrica La luce incide sugli specchi o attraversa le lenti
Analisi matematica Introduzione ai limiti
Ottica geometrica. I raggi di luce Un raggio di luce è un fascio molto ristretto che può essere approssimato da una linea sottile. In un mezzo omogeneo,
I poliedri diagonale DEFINIZIONE. Un poliedro è la parte di spazio delimitata da poligoni posti su piani diversi in modo tale che ogni lato sia comune.
TRASMISSIONE E SCAMBIO DI CALORE si chiama calore l’energia che si trasferisce da un corpo a temperatura maggiore a uno a temperatura più bassa HOEPLI.
IL PIANO CARTESIANO E LA RETTA
Raccogliamo x al primo membro e 2 al secondo:
La Circonferenza. LA CIRCONFERENZA Assegnato nel piano un punto C detto Centro, si chiama circonferenza la curva piana con i punti equidistanti da C.
Lezione n. Parole chiave: Corso di Laurea: Insegnamento: Docente: A.A Salvatore Cuomo La ricorsione 15 Approccio ricorsivo, esercizi sulla.
Classe II a.s. 2010/2011 Prof.ssa Rita Schettino
Transcript della presentazione:

RADIOSITY Algoritmo di calcolo della luce realistica DENIS COSSUTTA LAUREA SPECIALISTICA INGEGNERIA INFORMATICA A.A. 2005/2006

INTRODUZIONE meccanismo ray tracing utilizzato per modellare la riflessione speculare e la rifrazione senza dispersione, facendo uso di una luce ambientale non direzionale, che tiene conto di tutti i contributi dell’illuminazione globale e le radiazioni e le riflessioni tra oggetti? tutta l’energia emessa o riflessa da ogni superficie è responsabile della sua riflessione e dell’assorbimento da parte di altre superfici radiosity = somma dei rapporti in base ai quali la superficie emette energia, riflettendola e trasmettendola ad ogni altra superficie

RADIOSITY le superfici considerate nel metodo di radiosity possono emettere luce, a differenza di quelle considerate nel ray tracing: ognuna di esse può essere modellata come una sorgente luminosa estesa, avente un’area finita Il termine radiosità indica la quantità di energia che lascia una superficie, data dalla somma della quantità di energia che emette essa stessa e la quantità di energia ricevuta da altre superfici che riflette metodo radiosity – modello di illuminazione fisico che assume che tutte le superfici siano dei riflettori di luce diffusa costante e che le interazioni tra di esse si risolvano usando equazioni lineari. La soluzione di questo sistema di equazioni lineari è l’output finale che può essere usato per renderizzare le superfici della scena

RADIOSITY Il metodo considera la suddivisione o tessellamento dell’ambiente in un numero finito di elementi di dimensione limitata, chiamati patch, ognuno dei quali emette e riflette luce in modo uniforme sull’intera area una singolo patch emana : luce diretta e/o indiretta luce diretta : luce che l’oggetto riceve direttamente dalla sorgente luminosa luce indiretta : luce riflessa su un oggetto da altri oggetti

RADIOSITY : equazione generale negli altri algoritmi la luce veniva trattata separatamente dalle superfici che illuminava il radiosity permette a qualsiasi superficie di emettere luce, in modo che tutte le sorgenti di luce vengono considerate come se avessero un’area ipotizziamo di suddividere l’ambiente in un numero finito n di patch di area finita, che emettono e riflettono luce uniformemente in tutta la loro area. Si ha che per ogni patch i:

RADIOSITY : equazione generale dove: Bi è la radiosità totale emessa dalla superficie i Ei è la luce emessa propriamente dalla superficie i ρj è un valore adimensionale e corrisponde al valore di riflettenza della superficie che determina la frazione dell’energia totale incidente rflessa dalla superficie i Bj Aj è l’energia totale emessa dalla superficie j con area Aj (radiosità per area) Fj-i è la frazione di energia che lascia la superficie j e che investe la superficie i. Questo valore tiene conto della forma e dell’orientamento di ogni superficie ed è chiamato fattore di forma

RADIOSITY : equazione generale l’equazione indica la relazione esistente tra l’energia emessa da una superficie unitaria e l’energia entrante nella superficie unitaria, vista come somma della luce direttamente emessa e della luce riflessa la luce riflessa viene determinata calcolando, rispetto al coefficiente di riflessione della patch, la somma della luce incidente, che non è altro che la somma della luce che lascia un’unità di area della patch j-esima e che raggiunge la patch i-esima

RADIOSITY : equazione generale - semplificazione In ambienti diffusi vale la seguente relazione di reciprocità tra i fattori di forma Fi-j Fj-i : Fi-j Ai = Fj-i Aj Si ottiene quindi la seguente formula finale:

RADIOSITY : equazione generale – forma matriciale in questo modo, risolvendo il sistema, troviamo la radiosità per ogni patch che può essere resa da qualsiasi punto di vista con un qualsiasi algoritmo di visualizzazione una volta ottenuto il valore di radiosity della patch, si possono calcolare i valori per ogni vertice. I casi sono due: - se un vertice è all’interno di una superficie, gli viene assegnato il valore medio della radiosità delle patch che lo condividono - se il vertice è sui bordi della superficie, si trovano le patch che lo condividono e il vertice interno piu vicino. Poi si confrontano la media della radiosità della patch con la media della radiosità dei due vertici

RADIOSITY : esempio Si consideri la figura sottostante: la radiosità del vertice e è data da : Be =(B1 + B2 + B3 + B4)/4 per calcolare la radiosità del vertice b sui bordi per prima cosa si deve trovare il vertice interno più vicino che in questo caso è e. Poi si impone (Bb + Be)/2=(B1 + B2)/2 da cui si ricava Bb =B1 + B2 - Be per calcolare la radiosità del vertice a sui bordi, prima si deve trovare il vertice interno più vicino che in questo caso è e. Poi si impone (Ba + Be)/2= B1 da cui si ricava Ba =2B1- Be

RADIOSITY : calcolo dei fattori di forma I fattori di forma rappresentano la misura di quanta luce proveniente dalla patch j colpisce una patch i Cohen e Greenberg implementarono un algoritmo per approssimare i form factors

RADIOSITY : calcolo dei fattori di forma Il fattore di forma da un’area differenziale dAi ad un’area differenziale dAj , dove Hij può assumere valori 0 o 1 a seconda che dAj sia visibile o meno da dAi è data da:

RADIOSITY : calcolo dei fattori di forma Per determinare Fdi,j , cioè il fattore di forma da un’area differenziale dAi ad un’area finita Aj , integriamo sull’area della patch j In questo modo il form factor da Ai ad Aj è l’area media dell’equazione precedente sulla patch i

RADIOSITY : approssimazione dei form factors se noi assumiamo il punto centrale di una patch come rappresentante di tutti gli altri suoi punti, possiamo approssimare Fi,j con Fdi,j, computato per dAi nel centro della patch i-esima Alcuni studiosi hanno cercato un modo più semplice per calcolare Fdi,j Nusselt ha mostrato che questa quantità si può calcolare mediante due proiezioni successive: innanzitutto bisogna proiettare quelle parti di Aj che sono visibili da Ai su una semisfera unitaria, centrata in dAi, successivamente quest’area sulla superficie della semisfera viene proiettata ortograficamente sul cerchio unitario che costituisce la base della semisfera

RADIOSITY : approssimazione dei form factors - Nusselt

RADIOSITY : approssimazione dei form factors – Cohen e Greenberg Cohen e Greenberg proposero di proiettare Aj nella metà superiore di un cubo centrato su dAi con la faccia superiore parallela alla superficie. Ogni faccia dell’ ‘emicubo’ è divisa in piccole celle quadrate di ugual area Aj viene quindi proiettato sulle facce dell’emicubo Si pensi ad ogni faccia del cubo come una pellicola su cui viene impresso ciò che una patch vede in ognuna delle 5 direzioni (5 facce dell’emicubo)

RADIOSITY : approssimazione dei form factors – Cohen e Greenberg Ad ogni cella p dell’emicubo è associato un valore del fatore di forma: Dato un sistema di riferimento per il semicubo, la cui origine è posta nel centro della faccia inferiore, otteniamo: Da cui si ha che:

RADIOSITY : approssimazione dei form factors – Cohen e Greenberg Per una faccia laterale perpendicolare all’asse x dell’emicubo abbiamo che: Da cui si ha che: Si può approssimare Fdi,j per qualsiasi patch j sommando i valori di ∆Fp associati ad ogni cella p nelle proiezioni sull’emicubo di Aj

RADIOSITY : substructuring Per migliorare il risultato di una soluzione radiosity, si deve incrementare il numero n di patch, ma in questo modo si andrebbe ad aumentare il tempo di calcolo poiché la complessità è O(n2) Per evitare di incrementare in modo quadratico le suddivisioni delle patch si suddivide in modo adattativo le patch in sotto patch solo nelle zone in cui si trova un gradiente di radiosità alto

RADIOSITY : substructuring ogni qualvolta viene suddivisa una patch i, i form factor Fsj da ogni sottopatch s a ogni patch j vengono calcolate mentre ogni form factor delle patch alle sottopatch di i non vengono calcolate dopo che una patch i viene suddivisa, i valori calcolati precedentemente di ogni form factor della patch alle altre sono sostituiti da un valore più accurato calcolato sulle m sottopatch di i la radiosità di ogni sottopatch s di una patch i può essere calcolata come:

RADIOSITY : substructuring l’algoritmo può iterare suddividendo sempre più le patch dove c’è un’alto gradiente di radiosità fino al punto di raggiungere un risultato soddisfacente le radiosità finali delle sottopatch saranno poi usate per determinare la radiosità dei vertici

RADIOSITY : raffinamento progressivo il costo dell’algoritmo di radiosity visto fino a questo momento è molto elevato l’idea di base sarebbe creare una prima immagine non accurata e migliorarla in seguito usando un algoritmo incrementale con la definizione attuale di radiosity questo meccanismo non è realizzabile alcuni studiosi tuttavia hanno sviluppato un algoritmo per il raffinamento progressivo di radiosity, senza la necessità di precalcolare e memorizzare i fattori di forma le equazioni lineari vengono risolte in modo progressivo

RADIOSITY : raffinamento progressivo Le differenze fra i due metodi sono perciò le seguenti: Modello classico Raffinamento progressivo Il calcolo della radiosity della patch i-esima viene basato sulla stima delle altre patch, raccogliendo la luce dell’ambiente Si considera invece la radiosity emanata da una patch verso il resto dell’ambiente, piuttosto che quella ricevuta Ogni termine dell’equazione di radiosity esprime l’effetto della patch j sulla radiosity della patch i Bi dovuto a Bj è uguale a ρjBj Fij , per ogni j Si vuole determinare: Bj dovuto a Bi è uguale a ρjBi Fji , per ogni j

RADIOSITY : raffinamento progressivo Il metodo tradizionale raccoglie la luce del resto dell’ambiente sulla generica patch, mentre l’approccio del raffinamento progressivo emana la radiosità da una patch verso l’ambiente il nuovo calcolo però richiede la conoscenza di Fji ,cioè del fattore di forma dell’area Aj all’area Ai, da calcolare in semicubi separati, sfruttando però la relazione esistente tra fattori di forma reciproci possiamo dedurre che l’effetto su Bj dovuto a Bi è uguale a: per ogni j per risolvere questa equazione per ogni j, sono necessari soltanto i form factors calcolati usando un solo emicubo centrato sulla patch i

RADIOSITY : raffinamento progressivo se i fattori di forma possono essere calcolati velocemente, allora la memoria da essi occupata può essere rilasciata non appena la radiosity da essi emanata viene lanciata nell’ambiente ad ogni passo dell’algoritmo dobbiamo avere a disposizione memoria solo per un singolo semicubo e per i suoi fattori di forma Nell’iterazione, le patch più significative, cioè che contribuiscono ad illuminare maggiormente le altre, vengono calcolate prima mentre quelle con poca energia, cioè che hanno meno impatto sulle altre, sono lasciate per ultime l’algoritmo itera fino a quando non si raggiunge una tolleranza accettabile

RADIOSITY : illuminazione ambientale alcuni studiosi hanno proposto di aggiungere un termine di illuminazione ambientale per compensare la bassa luminosità delle immagini iniziali un modo per stimare questo termine è quello di usare una somma pesata delle patch che ancora non hanno emanato radiosità Per prima viene calcolata una riflessione diffusa media questa equazione viene usata per calcolare un fattore di riflessione complessivo R che tenga conto dei cammini differenti attraverso cui l’energia può viaggiare da una patch all’altra:

RADIOSITY : illuminazione ambientale Infine, una stima del termine ambientale viene eseguita facendo riferimento a quest’ultima quantità R: Questo termine ambientale viene poi utilizzato come argomento per calcolare la radiosità della patch:

RADIOSITY : esempi immagine senza radiosity immagine con radiosity il fascio di luce si ferma alla parte della luce rimbalza prima iterazione, lasciando al illuminando anche gli oggetti buio gli oggetti 2 e 3 2 e 3 con intensità decrescente con il prolungarsi delle iterazioni

RADIOSITY : esempi Queste tre ripetizioni della stessa immagine mostrano lo stato di avanzamento del metodo a raffinamento progressivo di radiosity: la prima immagine viene prodotta alla prima iterazione, la seconda alla seconda iterazione e la terza immagine alla quarta iterazione

Riferimenti bibliografici http://www.panebianco3d.com/i_tutorials-lightwave-radiosity_01.htm www.siggraph.org/education/materials/HyperGraph/radiosity/overview_1.htm http://psycho.usr.dsi.unimi.it/~spa/corso9798/t610.html http://www.cg.tuwien.ac.at/research/rendering/rays-radio/ http://web.cs.wpi.edu/~matt/courses/cs563/talks/radiosity.html