Fotorealistická syntéza obrazu 2006-2008 Josef Pelikán, CGG MFF UK Praha http://cgg.ms.mff.cuni.cz/~pepca/ 10. a 17. 12. 2008 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 1 / 107
Obsah přednášky cíle a aplikace realistického zobrazování historie, přehled používaných přístupů teoretické základy zobrazovací rovnice souhlas starších metod s teorií (fyzikou) metody založené na zobrazovací teorii radiační metody (matné materiály) Monte-Carlo zobrazování (paprsky, unbiased ) hybridní metody (efektivita) efektivnější vzorkování (Metropolis) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 2 / 107
Cíle realistického zobrazování věrně napodobit přírodu virtuální scéna reprezentovaná v počítači přesně simulovat šíření světla ve scéně predictive rendering nebo důvěryhodné zobrazování laický pozorovatel nemá poznat, že je obrázek umělý... rychlost vykreslování off-line rendering (nezáleží tolik na rychlosti) real-time (min. 25 fps) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 3 / 107
Aplikace design, architektura, umění šíření světla v interiéru, kabině,.. zábavní průmysl filmy (IL&M, Piar, DreamWorks, off-line ) videohry ( real-time ) média televize (virtuální studia,...) reklamy Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 4 / 107
Historie cíle a aplikace realistického zobrazování historie, přehled používaných přístupů teoretické základy zobrazovací rovnice souhlas starších metod s teorií (fyzikou) metody založené na zobrazovací teorii radiační metody (matné materiály) Monte-Carlo zobrazování (paprsky, unbiased ) hybridní metody (efektivita) efektivnější vzorkování (Metropolis) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 5 / 107
Historie klasické zobrazování Sutherland 1974: Z-buffer ploškový model nejčastěji trojúhelníkové sítě výpočet viditelnosti Z-buffer přibližné světelné poměry lokální osvětlovací model, vržené stíny tetury, shadery Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 6 / 107
Historie Ray-tracing I Whitted 1980: základní Ray-tracing geometrický přístup sleduje se jenom ideálně odražený paprsek výpočetně velmi náročný výpočet průsečíku paprsku se scénou 95% času urychlovací metody snadné vylepšení vzhledu obrázku tetury, anti-aliasing, shadery distribuované techniky (viz dále) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 7 / 107
Historie Ray-tracing II L N R α A α P 0 +t P 1 T Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 8 / 107
Historie Distributed R-T Cook 1984: Distributed Ray Tracing vylepšení kvality výsledku integrál nahrazuje původně jediný vzorek měkké stíny, odrazy, lomy, difrakce rozmazání pohybem hloubka ostrosti kamery výpočetně velmi náročné metody Monte-Carlo algoritmy stonásobně víc paprsků... Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 9 / 107
Historie Bidirectional R-T Arvo 1986: Backward Ray Tracing sledování opačného směru v první fázi se paprsky posílají ze světel a zachytávají na plochách vykreslení kaustiky (1986 = rok kaustiky) později se z toho vyvinuly metody: Light-tracing, Photon-tracing Photon-maps (Henrik Wann Jensen) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 10 / 107
Historie Radiační metoda I Goral et al. 1984: Illumination for Computer-Generated Pictures předpoklad difusních materiálů Lambertův zákon (dokonalý rozptyl světla) metoda konečných prvků vede na soustavu lineárních rovnic různá vylepšení: iterace à la Southwell hierarchické přístupy zobecněné konfigurační faktory (lesklé odrazy) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 11 / 107
Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 12 / 107 Historie Radiační metoda II základní rovnice pro radiositu i-té plošky: ( ) = + = N j A i A j i j i i i i j da da y g A B E B 1, 1 ρ geometrický člen - konfigurační faktor F ij (část výkonu vyzářeného ploškou A i dopadající na A j ) [ ] 2 1 m W N j ij j i i i F B E B = + = ρ
Historie Hybridní metody Wallace 1987, Sillion 1989, 1991,... radiační metoda umí dobře difusní materiály metody založené na paprscích umí dobře lesklý odraz Ray-tracing, Distributed R-T Path-tracing, Photon-tracing,... S LS + D DS * E S D kombinace několika metod pozor na duplikace! LS + DS * E většinou sériové zapojení = více fází za sebou vykreslení: Ray-tracing, Path-tracing L S E Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 13 / 107
Historie Zobrazovací rovnice J. T. Kajiya: The rendering equation (SIGGRAPH '86) matematický přístup k zobrazování integrální rovnice popisující šíření světla, nestranné řeš. algoritmy založené na Monte-Carlo.. přesné (analytické) řešení není možné Path-tracing (už Kajiya) později: Light-tracing, Photon-tracing, Bidirectional Path-tracing, hybridní alg., Metropolis metody Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 14 / 107
Teoretické základy cíle a aplikace realistického zobrazování historie, přehled používaných přístupů teoretické základy zobrazovací rovnice souhlas starších metod s teorií (fyzikou) metody založené na zobrazovací teorii radiační metody (matné materiály) Monte-Carlo zobrazování (paprsky, unbiased ) hybridní metody (efektivita) efektivnější vzorkování (Metropolis) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 15 / 107
Základní radiometrické veličiny výkon přijímaný (emitovaný) nějakou částí plochy: Φ in (Φ out ) [ W ] přijímaná (emitovaná) radiosita (hustota výkonu na ploše): B in (E, B out ) [ W / m 2 ] intenzita (hustota výkonu v prostorovém úhlu ω): I = dφ / dω [ W / sr ] Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 16 / 107
Radiance přijímaná (emitovaná) radiance ve směru ω: L in (ω) (L e (ω), L out (ω)) [ W / m 2 sr ] N ω L out (, ω ) = 2 Φ A ω cosθ θ dω = ω B out cosθ da = I A cosθ Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 17 / 107
BRDF (lokální fce odrazivosti) ( Bidirectional Reflectance Distribution Function ) N L in (ω in ) L out (ω out ) dω in θ out θ in f ( ω ω ) in out = L in ( ω ) in L out ( ω ) cosθ out in ω in [ 1 sr ] Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 18 / 107
Lokální světelné modely Bouknight 1970: difusní (Lambert) a ambient Gouraud 1971: interpolace barvy z vrcholů Phong 1975: navíc lesklá složka, interpolace normály Blinn 1977, Cook et al. 1982: mikroplošky Kajiya 1985, Cabral et al. 1987: vylepšení (anizotrop.) Wolf 1990: polarizace odraženého světla Oren-Nayar 1993: difusní mikroplošky... Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 19 / 107
Lokální zobrazovací rovnice OVTIGRE L o (,ω o ) N L i (,ω i ) dω i L e (,ω o ) θ i vakuum: L i (,ω i ) = L o (y,ω i ) vyzařování zdroje L o, o = L e, o f, i o L o y, i cos i d i Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 20 / 107
GRDF (globální fce odrazivosti) ( Global Reflectance Distribution Function ) N da L o (y,ω y ) L o (,ω ) θ ω y F (, ω y, ω ) y = L o 2 (, ω ) L o ( y, ω ) cosθ y A ω [ 2 1 m sr ] Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 21 / 107
Globální zobr. rovnice (s GRDF) N da L o (y,ω y ) L e (,ω ) θ ω L o ( ) y, ω y = y = A Ω L e ( ) ( ), ω F, ω y, ω y cosθ dω da Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 22 / 107
Souhlas starších metod s teorií cíle a aplikace realistického zobrazování historie, přehled používaných přístupů teoretické základy zobrazovací rovnice souhlas starších metod s teorií (fyzikou) metody založené na zobrazovací teorii radiační metody (matné materiály) Monte-Carlo zobrazování (paprsky, unbiased ) hybridní metody (efektivita) efektivnější vzorkování (Metropolis) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 23 / 107
Operátory šíření světla Zobrazovací rovnice pro radianci: L = e + TL L = e + Te + T 2 e + T 3 e +... Integrální operátor T lze rozložit na difusní (D) a lesklou (S) složku odrazu: T = D + S L = e + ( D + S ) e + ( D + S ) 2 e +... L = e + De + Se + DDe + DSe + SDe + SSe +... Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 24 / 107
Abeceda regulárních výrazů zdroj světla L ( light ) difusní odraz D ( diffuse ) odraz podle Lambertova zákona (všesměrový) lesklý odraz S ( specular ) směrový odraz, odlesk směrová část BRDF idealizovaný zrcadlový odraz: S M oko pozorovatele E ( eye ) příspěvek výslednému obrazu Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 25 / 107
Cesty šíření světla D LDE LDSE LD 3 SE L LE S E Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 26 / 107
Přehled zobrazovacích metod stínování s odlesky a vrženými stíny (např. Phongův model): L ( D S ) E často se ignoruje výpočet vržených stínů Ray-tracing (Whitted): L [ D S ] S M * E první lesklý odraz se počítá přesně, ostatní se nahrazují ideálním zrcadlovým odrazem Distributed Ray-tracing (Cook): L [ D ] S* E všechny lesklé odrazy se odhadují korektně Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 27 / 107
Přehled zobrazovacích metod obyčejná radiační metoda: L D* E pouze difusní odraz světla všechny možné cesty světla: L ( D S )* E přesné řešení zobrazovacích rovnic, nestranné metody první z nich byla Path-tracing (Kajiya) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 28 / 107
Radiační metody cíle a aplikace realistického zobrazování historie, přehled používaných přístupů teoretické základy zobrazovací rovnice souhlas starších metod s teorií (fyzikou) metody založené na zobrazovací teorii radiační metody (matné materiály) Monte-Carlo zobrazování (paprsky, unbiased ) hybridní metody (efektivita) efektivnější vzorkování (Metropolis) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 29 / 107
Radiance přijímaná z plochy N θ i N y θ yo dω i da y cos θ = yo y da 2 Geometrický člen: faktor viditelnosti {0 1} G y, = V, y cos yo cos i y 2 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 30 / 107
Radiance přijímaná z plochy N θ i N y θ yo da y L o (, ω ) o = ( ) ( ) ( ) = L, ω + f, ω ω L, ω cos θ dω = e o i o i i i i Ω (, ω ) (, ω ω ) (, ω ) (, ) = L + f L y G y da e o i o o i S integrál přes všechny směry integrál přes povrch scény Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 31 / 107
Zjednodušené značení L, z = L e, z S z radiance z bodu směrem do bodu z θ zi N z θo N θ i N y θ yo da y f y,, z L y, G y, da radiance zdroje (emitovaná) BRDF geometrický člen Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 32 / 107
Rovnice pro radiositu předpokládáme ideálně difusní povrch BRDF není závislá na úhlech výstupní radiance L(,ω) nezávisí na směru ω L, z = L e, z S f y,, z L y, G y, da L, z = B / L e, z = E / f = / B = E S B y G y, da Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 33 / 107
Rovnice pro radiositu B = E S B y g y, da G y, / = g y, řešení B je nekonečně-dimenzionální diskretizace úlohy klasické radiační metody konečné prvky na povrchu těles scény Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 34 / 107
Obecná FEM radiační metoda ➊ rozdělení ploch na konečný počet elementů ➋ určení polohy uzlových bodů na elementech v těchto bodech se bude počítat hodnota radiosity ➌ volba aproimační metody a chybové metriky systém basických funkcí pro lineární (konvení) kombinace hodnot v uzlových bodech ➍ výpočet koeficientů soustavy lineárních rovnic konfigurační faktory ( form-factors ) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 35 / 107
Obecná FEM radiační metoda ➎ řešení soustavy lineárních rovnic výsledek: radiosita v uzlových bodech ➏ rekonstrukce přibližného řešení na celých plochách lineární kombinace bazických funkcí pomocí hodnot v uzlových bodech ➐ zobrazení výsledku (libovolný směr pohledu) intenzita osvětlení závisí na spočítané radiositě Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 36 / 107
Poznámky krok ➌ se provádí ve fázi návrhu algoritmu v implementaci se přímo neobjevuje některé dokonalelší metody nepostupují striktně posloupností kroků ➊ až ➐ často se výpočet v některých fázích vrací a opakují se předcházející kroky (s lepší aproimací, lepším rozlišením,..) adaptivní techniky hierarchická radiační metoda Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 37 / 107
Aproimace radiosity konstantní (uzly jsou těžiště ploch) bilineární (uzly jsou ve vrcholech) kvadratická (další uzly jsou uprostřed hran a stěn) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 38 / 107
Metoda konstantních elementů na elementu A i předpokládáme: konstantní odrazivost ρ i konstantní radiositu B i ( ) ( ) ( ) ( ) ( ) B = E + ρ B y g y, da průměr S přes plochu A i B = E + ρ i i i 1 A i A i N j= 1 B g( y ) j, da j da Aj i Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 39 / 107
Metoda konstantních elementů.. přehození sumy a integrálu: N 1 B E ρ B g y da da A = + i i i j j= 1 i A i A j (, ) j i geometrický člen - konfigurační faktor F ij (část energie vyzářené ploškou A i dopadající na A j ) N i i i j ij j= 1 B = E + ρ B F [ ] W 2 m Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 40 / 107
Fyzikálně intuitivní odvození N i i i i i j j ji j= 1 B A = E A + ρ B A F [ W ] emitovaný výkon = vlastní výkon + odražený výkon reciproční pravidlo: A F = A F j ji i ij B A = E A + ρ B F A A i i i i i j ij i j= 1 N N i i i j ij j= 1 B = E + ρ B F [ ] W 2 m i 1 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 41 / 107
Soustava lineárních rovnic N i i j ij j= 1 B ρ B F = E i = 1.. N 1 ρ 1F 11, ρ 1F 1, 2.. ρ 1F 1, ρ 2F2, 1 1 ρ 2F2, 2.. ρ 2F2,........ ρ F 1 ρ F 2.. 1 ρ F i N N B1 E B2 E =.... B E N N, N N, N N, N N N vektor neznámých [B i ] 1 2 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 42 / 107
Soustava lineárních rovnic pro rovinné (konvení) plošky platí F ii = 0 na diagonále jsou pak samé jedničky nediagonální prvky matice mají typicky malou absolutní hodnotu matice je diagonálně dominantní soustava je dobře podmíněná a lze ji úspěšně řešit iteračními metodami při změně osvětlení se mění jenom pravá strana přímé metody rozklad matice zůstává Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 43 / 107
Konfigurační faktory Rovnice pro radiositu (konstantní elementy): 1 F g( y ) i j =, daj dai = A = i A A 1 cos θ i cos θ A 2 i π y A i i A j j N 1 B E ρ B g y da da A = + i i i j j= 1 i A i A j (, ) j (, ) j V y da da j i i Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 44 / 107
Nusseltova analogie N A j da i ω j.. [ cos θ ] r 2 j [ cos θ ] r = 1 i π F da A i j Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 45 / 107
Polokrychle (částečné FF) F 2 = π z 2 A ( 2 z ) 2 1 2 + + A 2 2 F 1 = π A ( y 1) + + 1 2 1 2 2 1 y 1 A z 2 da i 2 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 46 / 107
Metody Monte-Carlo vrhání paprsků ze zdrojové plošky do scény najednou se spočítá celý řádek matice možnost klasického urychlení (průsečíky) vzorkování! Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 47 / 107
Řešení radiační soustavy rovnic klasické iterační metody: Jacobi, Gauss-Seidel chytřejší: Southwell, progresivní radiosita nejsou slepé, používají třídění over-relaation modifikace: à la SOR Super-Shoot-Gather (SSG) maimálně využívá jednoho spočítaného řádku matice hierarchické přístupy multiresolution ( multigrid ) techniky úloha zdroje a příjemce světla není symetrická Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 48 / 107
Gauss-Seidel = sbírání světla B j B i i i i j ij j i B = E + ρ B F Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 49 / 107
Reziduum a Southwellova metoda Reziduum (chyba) k-té iterace: ( k) ( k) r = E M B Jacobiho i Gauss-Seidelova metoda v každém kroku výpočtu vynulují jednu složku rezidua naivní postup: pořadí dané očíslováním neznámých chytřejší přístup: Southwell dává přednost neznámým s větším reziduem složky s větší chybou se opravují častěji rychlejší konvergence Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 50 / 107
Progresivní radiační metoda Cohen a spol., 1988 používá podobnou myšlenku jako Southwell plošky se třídí podle dosud nevystřelené energie musí se průběžně upravovat celý vektor reziduí je to vlastně Southwell + Jacobi sweep fyzikální analogie = střílení světla průběžné, interaktivní zobrazení možnost využít dosud nevystřeleného světla (okolní složka osvětlení) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 51 / 107
Střílení světla ( p+ 1) ( p) ( p) j j i B = B + r ρ F j ji B j B i Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 52 / 107
Úprava rezidua po vystřelení Podle recipročního pravidla pro kon gurační faktory: ( p + 1) ( p) ( p) ( p) i ( p) j j j ji i j j ij i j r = r + ρ F r = r + ρ F A A r Distribuce energie v jednom kroku výpočtu: r ( p+ 1) i A = i 0 <1 ( p+ 1) ( p) ( p) j j j j j ij i r A = r A + ρ F r A j = 1.. N i Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 53 / 107
Progresivní radiační metoda double B[N], E[N], db[n], F[N][N], A[N], ro[n]; for ( int i=0; i<n; i++ ) { // inicializace B, db B[i] := E[i]; db[i] := E[i]; } while ( nezkonvergovalo ) { // jeden krok výpočtu výběr i == argma i (db[i]*a[i]) for ( int j=0; j<n; j++ ) { double drad = db[i]*ro[j]*f[j][i]; B[j] += drad; db[j] += drad; } db[i] = 0.0; zobrazení mezivýsledku pomocí radiosit B[i] } Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 54 / 107
Přestřelování ( over-relaation ) vystřelím světlo na dluh (předpokládám, že v budoucnu se do plošky vrátí) B r ( k + 1) ( k) i i = B + ω ( k + 1) ( ) ( k) i = 1 ω ri ( k) ri M musí se počítat i se zápornými hodnotami (abs) ii 1 třeba 1.2 hodnota ω se může v průběhu konvergence měnit na začátku jsem odvážnější, postupně více konzervativní přestřelování podle odhadu zbytkového světla Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 55 / 107
Odhad zbytkového světla aproimace dosud nespočítaných odrazů světla celková dosud nevystřelená radiosita: B = B i A i A i průměrný koeficient odrazu: odhad zbytkové radiosity: = i A i A i B amb = B 1 2... = B 1 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 56 / 107
Aplikace zbytkové radiosity instantní zobrazení radiosita každé plošky se jen pro účely zobrazení upraví: B i disp = B i i B amb dynamický koeficient přestřelování ω podle odhadu dosud nevystřelené radiosity.. vystřeluje se B i k i B amb pro 0 k 1 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 57 / 107
Super-Shoot-Gather (SSG) maimální využití spočítaných koeficientů mám k dispozici jednu řádku a jeden sloupec matice opakovené střílení z dané plošky do ostatních (a zpět) tato izolovaná soustava konverguje musím ukládat nevystřelenou radiositu v matici (řídké) eplicitní řešení: [M ' ] [ SG i ] = [ B i ] SG i = B i i j i F ij B j 1 i j i F ij j F ji B j = SG j SG j i = B j j F ji SG i Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 58 / 107
Hierarchické radiační metody vyzařování příjem Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 59 / 107
Dvoustupňová hierarchie Cohen a spol., 1986 elementy (N) se sdružují do plošek (M) M << N konfigurační faktory (mezi ploškami) F ij = q i F qj A q A i soustava rovnic (plošky) M B i = E i i j =1 B j F ij radiosity elementů M B q = E q q j =1 B j F qj Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 60 / 107
Vícestupňová hierarchie q p F qp Link Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 61 / 107
Uzel stromu ( Node ) Bg přijatá radiosita (v tomto kroku se nestřílí) Bs vystřelovaná radiosita E emitovaná radiosita (zdroj světla) A plocha ρ odrazivost plošky L seznam spojů, které na plošku svítí Uzly se vytvářejí až na základě potřeby: předzpracování (odhad konfiguračních faktorů F-rule ) adaptivní zjemňování scény ( BF-rule ) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 62 / 107
Iterace SolveHR() { // balance energy using HR links while not converged { foreach root node r GatherRad( r ); // gather up incoming energy foreach root node r PushPullRad( r, r.bg ); // give energy to children } } GatherRad( n ) { // get radiosity into this node n.bg = 0.0; foreach link L into n n.bg += n.ro * L.Fqp * L.p.Bs; // L.p is shooter patch foreach child r of n GatherRad( r ); // accumulate for each child } Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 63 / 107
Distribuce světla v hierarchii float PushPullRad( n, Bdown ) { // node n inherits radiosity Bdown if ( n is leaf node ) Bup = n.e + n.bg + Bdown; else { Bup = 0.0; foreach child r of n Bup += r.a/n.a * PushPullRad( r, n.bg+bdown ); } n.bs = Bup; return Bup; } Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 64 / 107
Adaptivní algoritmus základní algoritmus je statický hierarchie se staví pouze na začátku (podle odhadu konfiguračních faktorů F-rule ) adaptivní algoritmus modifikuje hierarchie v průběhu výpočtu zjemňování podle množství přenášené energie daným spojem ( BF-rule ) cíl sjednotit energie předávané jednotlivými spoji každý spoj pak má přibližně stejnou důležitost.. mizí rozdíl mezi sbíráním a střílením světla Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 65 / 107
Monte-Carlo zobrazování cíle a aplikace realistického zobrazování historie, přehled používaných přístupů teoretické základy zobrazovací rovnice souhlas starších metod s teorií (fyzikou) metody založené na zobrazovací teorii radiační metody (matné materiály) Monte-Carlo zobrazování (paprsky, unbiased ) hybridní metody (efektivita) efektivnější vzorkování (Metropolis) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 66 / 107
Monte-Carlo zobrazování Monte-Carlo kvadratura: integrály zobrazovacích rovnic jsou mnoho-rozměrné anti-aliasing, hloubka ostrosti, rozmazání pohybem Monte-Carlo metody nejsou citlivé na vyšší dimenze integrandy mají mnoho nespojitostí různých druhů obyčejně se nepožaduje velká přesnost lidské vidění má velmi omezenou absolutní citlivost běžně postačí relativní přesnost ½ 2 % Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 67 / 107
Urychlení konvergence M-C jittering, stratified sampling vzorkování s nižší diskrepancí vzorkování podle důležitosti ( importance sampling ) hustota pravděpodobnosti podobná integrované funkci generování vzorků s libovolnou hustotou pravděpodob. kombinované odhady, smíšené heuristiky (různé pr.) každé vzorkování (= hustota pravděpodobnosti) vyjadřuje jednu složku integrované funkce Metropolis vzorkování (později) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 68 / 107
Stratified sampling f(ξ 1 ) f() 1 0 N f d = i=1 N I strat = i=1 Ai f d f i A i 0 1 ξ 1 ξ 2 ξ 3 ξ 4 i A i chytrý rozklad na subintervaly: funkce f() má na subintervalech co nejmenší variaci Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 69 / 107
Importance sampling f() 1 0 1 f d = 0 f p dp p() I imp = f p 0 1 ξ 5 ξ 3 ξ 1 ξ 4 ξ 2 ξ 6 i Rnd p hustota p() má být co nejpodobnější funkci f()?! efektivní generování vzorků podle hustoty p()!? Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 70 / 107
Combined sampling f() N I comb = i=1 w i i f i p i i p 1 () p 2 () 0 1 ξ 1 ξ 2 i Rnd p i N i=1 0 w i w i = 1 odhaduje se podle několika náhodných rozdělení každé rozdělení může charakterizovat jinou složku f().. Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 71 / 107
Náhodná procházka řešení Fredholmovy soustavy druhého druhu: f = g 0 1 K, y f y dy neznámá funkce zadání nekonečná náhodná procházka řízená distribucemi p i f r = i =0 [ i j =1 K j 1, j p j j ] g i, 0 = Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 72 / 107
Ruská ruleta odstranění nekonečné řady: k f Russ,r = i=0 [ i j=1 K j 1, j P j p j j ] g i P j udává pravděpodobnost pokračování v kroku j je logické, aby byla úměrná celkové odrazivosti K(,y) p j () je distribuce pro výběr dalšího prvku posloupnosti: ξ j Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 73 / 107
Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 74 / 107 Zobrazovací rovnice pro radianci ( ) ( ) ( ) ( ) Ω + = = 1 cos,,,, y y y y e d y L f L L ω θ ω ω ω ω ω N θ y y ω y L(,ω ) L(y,ω y ) ω ( ) ( ) ( ) Ω = Φ A e o da d S W L S ω θ ω ω cos,,,
Path-tracing Monte-Carlo odhad toku Φ(S) i radiance L( 0,ω 0 ) (omezení náhodné procházky ruskou ruletou): W cosψ Φ k ( S ) i i = 0 j = 1 path f = e ( ) 0, ω 0, S p (, ω ) ( ) j 1, ω j ω j 1 P p ( ω ) j 0 0 j 0 j cosθ j 1 L e (, ω ) i i pravděpodobnost pokračování krokem j hustota pravděp. pro vstupní směr ω j Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 75 / 107
Schema šíření světla 1 3 θ 1 ω 1 ω 3 0 ω 2 N 0 θ 0 ψ θ 2 ω 0 2 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 76 / 107
Odhad příští události (NEE) obyčejný Path-tracing je velmi neefektivní náhodná procházka se musí trefit do zdroje světla! odhad příští události ( Net Event Estimation ) zařídím příspěvky od zdrojů v každém kroku NEE je nejvýhodnější pro scény s malými ale dobře viditelnými plochami světelných zdrojů vzorkování světelných zdrojů tvoří dominantní složku výsledku Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 77 / 107
Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 78 / 107 ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) Ω Ω + + = = = + = 1 1 cos,,,,, cos,,,,,, y y y r y A y y e y y y y y r r e d y L f da y G y L f d y L f L L L L ω θ ω ω ω ω ω ω ω θ ω ω ω ω ω ω ω Odhad příští události II Rozdělení nepřímého osvětlení na dvě složky:
Schema šíření světla (NEE) 1 y ω y 1 ω 1 ω y 0 0 ω y 2 ω 2 ω 0 2 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 79 / 107
Dualita v teorii zobrazování Kajiya 1986: zobrazovací rovnice Smits 1992: zavedení pojmu důležitost (potenciál) aplikace v radiační metodě efektivní zjemňování hierarchie ( BFI-rule ) ( zpřesňuji výpočet ne tam, kde je hodně světla, ale tam, kde je světlo potřeba = přispívá významně k výsledku ) Pattanaik 1993: zavedení duality do teorie zobrazování duální operátory a rovnice - prostředek k řešení úlohy globálního osvětlení scény Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 80 / 107
Důležitost (potenciál) výkon procházející svazkem S jako důsledek jednotkové radiance z bodu směrem ω [ 1 ] L o (,ω ) Φ o (S) N ω dω S = { } { ω } i j θ da W (, ω, S ) = L o 2 Φ o ( S ) (, ω ) ω A cosθ Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 81 / 107
Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 82 / 107 Zobrazovací rovnice pro potenciál ( ) ( ) ( ) ( ) Ω + = = y y y y y e d y W y f W W ω θ ω ω ω ω ω cos,,,, y N y θ y ω W(y,ω y ) W(,ω ) ω y ( ) ( ) ( ) Ω = Φ A e o da d S W L S ω θ ω ω cos,,,
Light-tracing celkový odhad paprsek vycházející ze zdroje (vyzařovací charakteristiky zdroje) Φ ( S ) light = L e (, ω ) 0 0 p (, ω ) 0 0 cosθ 0 0 k i i = 0 j = 1 f ( ), ω ω j j 1 j ( ) P p ω j j j cosθ j W e (, ω, S ) i i Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 83 / 107
Schema šíření světla (střílení) 2 0 ω 2 ω0 θ 2 3 θ 1 ω 1 N 3 θ 3 ω 3 1 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 84 / 107
NEE pro Light-tracing 2 0 ω 2 ω0 ω 2 z 3 ω 1 ω 3 z 1 ω 1 z Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 85 / 107
Aplikace Light-tracingu přímý výpočet realistického obrázku světlo se přijímá kamerou a ukládá v průmětně pomocný výpočet pro některou kombinovanou metodu světlo se ukládá do tzv. světelných map (fotonové mapy, Photon-tracing ) větší suma potenciálu W e vede k efektivnějšímu výpočtu (nemusí se dělat NEE) Photon-mapping : moderní, ale nekorektní metoda zobrazování (Wann Jensen, 1995) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 86 / 107
Obousměrný Path-tracing Kombinovaná globální zobrazovací rovnice: Φ vlastní emitovaná radiance ( S) = diskrétní potenciál GRDF A, Ω A, Ω y ( ω ) ( ω ) ( ω ω ),,,,, = L W y S F y e e y y cos θ cos θ dω da dω da y y y integrály přes všechny plochy a směry zdrojů a všechny plochy a směry receptorů Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 87 / 107
Rekurentní definice GRDF (, ω, ω ) δ (, ω,, ω ) F y = y + (, ω, ω ) δ (, ω,, ω ) F y = y + Ω y 1 y y ( ) ( ) + f z, ω ω F z, ω y, ω cos θ dω Ω z První odraz: z z y z z Poslední odraz: y y ( ) ( ) + f y, ω ω F, ω z, ω cos θ dω z y z y z Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 88 / 107
Základy smíšené heuristiky Lineární kombinace obou rekurzivních vzorců: * * * F = δ + w T F + w TF, w + w = 1 Nekonečná Neumannovská řada: N * i j ij j= 0 i= 0 F = w T T δ, w = i= 0 i, N i 1 T i T * se odhadují stochasticky pomocí náhodné procházky ukončované ruskou ruletou. Bez odhadu příští události však má tato metoda velký rozptyl. Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 89 / 107
Odhad příští události S přidáním neuzavřených cest: ( ) Φ S = w C k bipath, nee ij ij i= 1 j= 1 k * i = 1, j > 0: cesta od pozorovatele (bez NEE) i = 0, j 0: cesta od pozorovatele se vzorkem na zdroji i > 0, j > 0: světlo i-krát odražené od zdroje a j-krát od pozorovatele i 0, j = 0: cesta od zdroje se vzorkem na receptoru i > 0, j = 1: cesta od zdroje (bez NEE - neefektivní) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 90 / 107
Přehled vzorkování závislost příspěvku na vzorku na cestě od zdroje světla PT 0 1 2 3 vzorku na cestě od receptoru y -1 y 0 LT C -1,1 C 1,-1 C 2,-1 C 3,-1 C 0,0 C 1,0 C 2,0 C 3,0 C 0,1 C 1,1 C 2,1 C 3,1 y 2 C -1,2 C 0,2 C 1,2 C 2,2 C 3,2 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 91 / 107
Obecná cesta (obousměrná) 0 y 1 ω y1 ω 0 C 2,1 y 0 ω y0 1 ω 1 2 y -1 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 92 / 107
Hybridní metody cíle a aplikace realistického zobrazování historie, přehled používaných přístupů teoretické základy zobrazovací rovnice souhlas starších metod s teorií (fyzikou) metody založené na zobrazovací teorii radiační metody (matné materiály) Monte-Carlo zobrazování (paprsky, unbiased ) hybridní metody (efektivita) efektivnější vzorkování (Metropolis) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 93 / 107
Vícekrokové (hybridní) metody kombinace radiačních metod (difusní odrazy) a sledování paprsku (lesklé odrazy) většinou se tyto dva přístupy střídají (algoritmus se dělí na jednotlivé průchody nebo kroky) radiační přístup řeší (nepřímé) difusní osvětlení: D* sledování paprsku počítá lesklé odrazy: S [M] * navíc se používá pro finální průchod (zobrazení) místo R-T lze použít Path-tracing nebo jeho vylepšení Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 94 / 107
Mezivýsledek = světelná mapa D S L S * D D S * E S L S E L S * D S * E = Photon-tracing + Path-tracing Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 95 / 107
Metropolis metody cíle a aplikace realistického zobrazování historie, přehled používaných přístupů teoretické základy zobrazovací rovnice souhlas starších metod s teorií (fyzikou) metody založené na zobrazovací teorii radiační metody (matné materiály) Monte-Carlo zobrazování (paprsky, unbiased ) hybridní metody (efektivita) efektivnější vzorkování (Metropolis) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 96 / 107
Metropolis vzorkování Nicholas Metropolis et al, 1953, výpočetní fyzika vzorkování podle dané funkce f v obtížných podmínkách generuje posloupnost vzorků { i } s hustotou úměrnou f stavový prostor Ω f : R + I f = f d f pdf = f / I f generování vzorků X = { i } i ~ f pdf f Přitom není potřeba počítat I(f) ani f pdf! Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 97 / 107
Základní algoritmus Markovův řetězec vzorků: i závisí jen na i-1 generátor nového vzorku mutate() pravděpodobnost schválení accept() zajišťuje správnou a stacionární distribuci i State, 0, result[n]; = 0; for ( i = 0; i < N; i++ ) { // generate net sample State ' = mutate( ); float a = accept(, ' ); if ( random() < a ) = '; result[i] = ; } Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 98 / 107
Rozšířený algoritmus vzorkuje i oblasti s nízkou hodnotou f() v limitě má stejný výsledek (distribuci) State, 0, result[2*n]; float weight; // standard sample weight float weights[2*n]; // result weights = 0; for ( i = 0; i < 2*N; ) { // generate net sample State ' = mutate( ); float a = accept(, ' ); result[i] = ; weights[i++] = (1-a)* weight; result[i] = '; weights[i++] = a * weight; if ( random() < a ) = '; } Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 99 / 107
Mutace, přechody, schvalování hustota pravděpodobnosti přechodu od k ' je dána mutačním předpisem ( mutate() ) T ' pravděpodobnost schválení tohoto přechodu musí se spočítat (pozor na chyby!) je-li určena správně, zajišťuje správnou distribuci výsledků a ' Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 100 / 107
Pravděpodobnost schválení a() podmínka stacionární pravděpodobnosti výsledku f() f T ' a ' = f ' T ' a ' efektivní volba a(): a ' = min 1, f ' T ' f T ' Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 101 / 107
Volba přechodu cíle, rady pravděpodobnost schválení by měla být co nejvyšší lépe prozkoumáme stavový prostor minimalizujeme korelace (alias v grafice) preferujeme přechody, které budou spíše schváleny tj. přechody mířící do oblastí s větším f() adaptivní metody mutace můžeme měnit přechodovou funkci na základě zkušenosti musíme jen umět spočítat přechodové hustoty T(...) Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 102 / 107
Metropolis výpočet osvětlení L S Jen málo pravděpodobné cesty světla mohou přispět k výslednému obrázku.. D S E Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 103 / 107
Metropolis výpočet osvětlení stavový prostor: prostor náhodných procházek potenciálně přenášejících světlo od zdroje do receptoru inicializace: hledání efektivních cest světla obousměrný Path-tracing minimalizace zkreslení (počátečních několik mutací nezapočítávám do výsledku) různé typy mutací perturbace kamery: (L D)DS * E nahradím (stejná délka) perturbace kaustiky: (L D)S * DE nahradím delší řetězce: např. (L D)DS * DS * DE nahrazuji Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 104 / 107
Literatura - knihy Andrew Glassner: Principles of Digital Image Synthesis, Morgan Kaufmann, 1995 Henrik Wann Jensen: Realistic Image Synthesis Using Photon Mapping, A K Peters, 2001 Matt Pharr, Greg Humphreys: Physically Based Rendering, Morgan Kaufmann, 2004 Philip Dutre, Kavita Bala, Philippe Baekert: Advanced Global Illumination, A K Peters, 2006 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 105 / 107
Literatura Eric Veach, Leonidas J. Guibas: Optimally Combining Sampling Techniques for Monte Carlo Rendering, SIGGRAPH'95 Proceedings Eric Lafortune: Mathematical Models and Monte Carlo Algorithms for Physically Based Rendering, PhD thesis, KU Leuven, 1996 Eric Veach, Leonidas J. Guibas: Metropolis Light Transport, SIGGRAPH'97 Proceedings Eric Veach: Robust Monte Carlo Methods for Light Transport Simulation, PhD Thesis, 1997 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 106 / 107
Literatura S. Gortler, M. F. Cohen, P. Slusallek: Radiosity and Relaation Methods, IEEE CG&A, 16(6), 1994 David Cline, Parris Egbert: A Practical Introduction to Metropolis Light Transport, Tech. report, Brigham Young University, 2005 Matt Pharr: Metropolis Sampling, slides for cs348b course, May 2003 Photorealistic 10.-17. 12. 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca 107 / 107