Monte Carlo rendering

Podobné dokumenty
Počítačová grafika III Multiple Importance Sampling. Jaroslav Křivánek, MFF UK

Počítačová grafika III Multiple Importance Sampling. Jaroslav Křivánek, MFF UK

Počítačová grafika III Monte Carlo rendering 2. Jaroslav Křivánek, MFF UK

Fotonové mapy. Leonid Buneev

Odraz světla, BRDF. Petr Kadleček

Zobrazování a osvětlování

X39RSO/A4M39RSO Vychýlené (biased) metody globálního osvětlení. Vlastimil Havran ČVUT v Praze CTU Prague Verze 2011

Počítačová grafika III Důležitost, BPT. Jaroslav Křivánek, MFF UK

Počítačová grafika III (NPGR010) Přednáška: Path tracing II

Počítačová grafika III Photon mapping. Jaroslav Křivánek, MFF UK

A4M39RSO. Sledování cest (Path tracing) Vlastimil Havran ČVUT v Praze CTU Prague Verze 2014

Distribuované sledování paprsku

Počítačová grafika III Path tracing II. Jaroslav Křivánek, MFF UK

Fotonové mapy. Martin Bulant 21. března Fotonové mapy jsou podobné obousměrnému sledování cest, ale odlišují se tím,

Počítačová grafika III Photon mapping. Jaroslav Křivánek, MFF UK

Photon-Mapping Josef Pelikán CGG MFF UK Praha.

Rekurzivní sledování paprsku

Počítačová grafika III Úvod

Bayesovské metody. Mnohorozměrná analýza dat

Kombinatorická minimalizace

Počítačová grafika III Úvod

Precomputed radiance transfer

1. Náhodný vektor (X, Y ) má diskrétní rozdělení s pravděpodobnostní funkcí p, kde. p(x, y) = a(x + y + 1), x, y {0, 1, 2}.

Náhodný vektor. Náhodný vektor. Hustota náhodného vektoru. Hustota náhodného vektoru. Náhodný vektor je dvojice náhodných veličin (X, Y ) T = ( X

Markov Chain Monte Carlo. Jan Kracík.

0.1 Úvod do lineární algebry

Počítačová grafika Radiozita

Goniometrické rovnice

Stavový model a Kalmanův filtr

Lingebraické kapitolky - Analytická geometrie

Global illumination with many-light methods. Martin Kahoun (2011)

INTEGRÁLY S PARAMETREM

3 Bodové odhady a jejich vlastnosti

Radiometrie, radiační metody

Dvojné a trojné integrály příklad 3. x 2 y dx dy,


sin(x) x lim. pomocí mocninné řady pro funkci sin(x) se středem x 0 = 0. Víme, že ( ) k=0 e x2 dx.

PRIMITIVNÍ FUNKCE. Primitivní funkce primitivní funkce. geometrický popis integrály 1 integrály 2 spojité funkce konstrukce prim.

X39RSO/A4M39RSO. Integrace a syntéza obrazu pomocí metody Monte Carlo. Vlastimil Havran, ČVUT v Praze

PSY117/454 Statistická analýza dat v psychologii přednáška 8. Statistické usuzování, odhady

1.1 Existence a jednoznačnost řešení. Příklad 1.1: [M2-P1] diferenciální rovnice (DR) řádu n: speciálně nás budou zajímat rovnice typu

ŘADY KOMPLEXNÍCH FUNKCÍ

Odhady - Sdružené rozdělení pravděpodobnosti

6 Skalární součin. u v = (u 1 v 1 ) 2 +(u 2 v 2 ) 2 +(u 3 v 3 ) 2

PRIMITIVNÍ FUNKCE DEFINICE A MOTIVACE

0.1 Úvod do lineární algebry

Definice 7.1 Nechť je dán pravděpodobnostní prostor (Ω, A, P). Zobrazení. nebo ekvivalentně

Vzorová písemka č. 1 (rok 2015/2016) - řešení

Určujeme neznámé hodnoty parametru základního souboru. Pomocí výběrové charakteristiky vypočtené z náhodného výběru.

Úvod do teorie odhadu. Ing. Michael Rost, Ph.D.

APLIKACE. Poznámky Otázky

- funkce, které integrujete aproximujte jejich Taylorovými řadami a ty následně zintegrujte. V obou případech vyzkoušejte Taylorovy řady

6. T e s t o v á n í h y p o t é z

. je zlomkem. Ten je smysluplný pro jakýkoli jmenovatel různý od nuly. Musí tedy platit = 0

Náhodný vektor. Náhodný vektor. Hustota náhodného vektoru. Hustota náhodného vektoru. Náhodný vektor je dvojice náhodných veličin (X, Y ) T = ( X

SPECIÁLNÍCH PRIMITIVNÍCH FUNKCÍ INTEGRACE RACIONÁLNÍCH FUNKCÍ

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Vícerozměrná rozdělení

Státnice odborné č. 20

Úloha - rozpoznávání číslic

Metody výpočtu limit funkcí a posloupností

Statistická analýza dat v psychologii. Věci, které můžeme přímo pozorovat, jsou téměř vždy pouze vzorky. Alfred North Whitehead

7B. Výpočet limit L Hospitalovo pravidlo

Cvičení ze statistiky - 8. Filip Děchtěrenko

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice

Cvičení ze statistiky - 5. Filip Děchtěrenko

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

5.3. Implicitní funkce a její derivace

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

7. Funkce jedné reálné proměnné, základní pojmy

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

ANALYTICKÁ GEOMETRIE LINEÁRNÍCH ÚTVARŮ V ROVINĚ

stránkách přednášejícího.

Pravděpodobnost, náhoda, kostky

5.1. Klasická pravděpodobnst

Pravděpodobnostní algoritmy

Řešení. Označme po řadě F (z) Odtud plyne, že

PRAVDĚPODOBNOST A STATISTIKA. Odhady parametrů Postačující statistiky

I. D i s k r é t n í r o z d ě l e n í

Testování hypotéz. 1. vymezení základních pojmů 2. testování hypotéz o rozdílu průměrů 3. jednovýběrový t-test

Náhodné signály. Honza Černocký, ÚPGM

p(x) = P (X = x), x R,

4.2.5 Orientovaný úhel II. π π = π = π (není násobek 2π ) 115 π není velikost úhlu α. Předpoklady: Nejdříve opakování z minulé hodiny.

Příklad. Řešte v : takže rovnice v zadání má v tomto případě jedno řešení. Pro má rovnice tvar

Dnešní látka Variačně formulované okrajové úlohy zúplnění prostoru funkcí. Lineární zobrazení.

Pravděpodobnost a statistika, Biostatistika pro kombinované studium. Tutoriál č. 5: Bodové a intervalové odhady, testování hypotéz.

Osvětlovací modely v počítačové grafice

Fotorealistická syntéza obrazu Josef Pelikán, MFF UK Praha

Binární vyhledávací stromy pokročilé partie

PRAVDĚPODOBNOST A STATISTIKA

PŘEDNÁŠKA 1 - OBSAH. Přednáška 1 - Obsah

terminologie předchozí kapitoly: (ϕ, Ω) - plocha, S - geometrický obraz plochy

Posouzení přesnosti měření

Počítačová grafika III Monte Carlo integrování II. Jaroslav Křivánek, MFF UK

2D transformací. červen Odvození transformačního klíče vybraných 2D transformací Metody vyrovnání... 2

ELEKTRICKÉ SVĚTLO 1 Řešené příklady

4.3.8 Vzorce pro součet goniometrických funkcí. π π. π π π π. π π. π π. Předpoklady: 4306

ELEKTRICKÉ SVĚTLO 1 Řešené příklady

Intervalová data a výpočet některých statistik

Monte Carlo. Simulační metoda založená na užití stochastických procesů a generace náhodných čísel.

Transkript:

Monte Carlo rendering Jan Havlíček 27. listopadu 2011 1 Základní algoritmus path traceru g e t L i ( x, w) { Color thrput = ( 1, 1, 1 ) Color accum = ( 0, 0, 0 ) while ( 1 ) { h i t = N e a r e s t I n t e r s e c t ( x, w) i f no i n t e r s e c t i o n r eturn accum + thrput bgradiance ( x, w) i f isonlightsource ( h i t ) accum += thrput Le ( h i t. pos, w) rho = r e f l e c t a n c e ( h i t. pos, w) i f rand ( ) < rho // r u s s i a n r o u l e t t e s u r v i v e ( r e f l e c t ) wi := SampleDir ( h i t ) thrput = f r ( h i t. pos, wi, w) dot ( h i t. n, wi ) / ( rho p ( wi ) ) x := h i t. pos } w := wi e l s e // absorb break ; } return accum ; Algoritmus path traceru počítá radianci v bodě x a ve směru ω. Na počátku je x pozice oka a ω je směr, kterým se kouká do scény pro daný pixel. thrput je váha sledovaného paprsku. Paprsek zkusí najít průsečík se scénou a pokud nic nenajde, vrátí spočítanou radianci. Pokud paprsek dopadl na světelný zdroj, připočítá se k výsledku radianci světelného zdroje opravenou o váhu sledovaného paprsku. Poté je potřeba se rozhodnout, zda by měl dále pokračovat nebo skončit. Spočte si pravděpodobnost, s jakou by měl pokračovat, vhodná hodnota je odrazivost ρ (pokud plocha odráží 90%, tak s 90% pravděpodobností bude pokračovat, pokud 20%, tak paprsek bude pokračovat s 20% pravděpodobností). Path tracer tedy spočítá pravděpodobnost, s jakou by měl pokračovat ve výpočtu (nemusí to být nutně odrazivost, ale ta má velmi dobré vlastnosti), vygeneruje náhodné číslo a rozhodne se. Pokud končí, tak vrátí spočítanou hodnotu, pokud pokračuje, tak vygeneruje nový směr ω i podle nějakého rozložení pravděpodobnosti p(ω i ), upraví váhu nového paprsku a nastaví x na průsečík původního paprsku se scénou a ω bude směr nového paprsku. 1

Sledování jedné cesty je potřeba někdy ukončit, je několik možností: podle počtu odrazů cesty - nevhodné, protože občas sleduje nedůležité paprsky, zatímco důležité mohou být ukončeny předčasně pokud je thrput menší, než konstanta ruskou ruletou - jediné nestranné řešení, v každém kroku s nějakou pravděpodobností cestu ukončíme Při generování náhodných sekvencí je důležité, aby každý pixel měl nezávislé odhady. Pokud jsou paprsky korelované, tak je vizuální dojem podstatně horší. Numerická chyba je stejná, ale subjektivní pocit je horší. Path tracer je jeden z prvních algoritmů, je velice jednoduchý, ale právě díky své jednoduchosti se v praxi prosazuje (např. filmy 2012, Alice in the Wonderland). Není příliš rychlý, ale je velmi robustní, tzn. funguje pro velkou množinu scén, nemá skoro žádné parametry (=není potřeba zaměstnanec se znalostmi) a dokud běží, tak zlepšuje výsledek. 2 Detaily path traceru Směr sekundárního paprsku generujeme z nějaké hustoty pravděpodobnosti p(ω i ) na hemisféře, ideálně bychom chtěli generovat podle L i (ω i )f r (ω i, ω o ) cos(θ i ), to ale nejde, protože nevíme, jaká je hodnota příchozího světla L i (ω i ) v bodě x. Obvykle se tedy snažíme generovat paprsky podle f r (ω i, ω o ) cos(θ i ) (bud přímo podle této funkce nebo podle nějaké podobné, protože podle f r (ω i, ω o ) je často obtížné vzorkovat). Co by se stalo, kdybychom v path traceru používali přímo f r (ω i, ω o ) cos(θ i )? Neboli co kdyby p(ω i ) bylo přímo úměrné f r (ω i, ω o ) cos(θ i )? Nejdříve je potřeba spočítat pdf (probability distribution function), pdf má integrál 1, použiji normalizaci a dostanu f r (ω i, ω o ) cos(θ i ) p(ω i ) = Hx f = f r(ω i, ω o ) cos(θ i ) r(ω i, ω o ) cos(θ i )dω i ρ Člen ve jmenovateli je odrazivost ρ. Pokud tuto pdf použiji v path traceru místo obecné p(ω i ), tak se členy ve zlomku upravující thrput vykrátí a thrput se v jednotlivých krocích nebude měnit. thrput = f r(ω i, ω o )dot(x.normal, ω) ρ p(ω i ) thrput = 1 Důsledkem neměnícího se thrput je, že dokud cesta neskončí, tak sekundární paprsky cesty budou vždy přispívat stejnou vahou. Při použití jiného rozdělení by se thrput neustále zmenšoval a příspěvky sekundárních paprsků by k finálním výsledku přispívaly stále menším dílem. To je důvod, proč chceme, aby pdf byla podobná f r (ω i, ω o ) cos(θ i ). Pokud není pdf není zcela stejná (ale je velmi podobná), thrput bude zůstávat přibližně na hodnotě 1. Jak je možné, že jeden paprsek stále přispívá zhruba stejně ke konečnému výsledku, třeba i po 20 odrazech? Lze si to představit jako situaci, kdy místo deseti 1 wattových paprsků vyšlu jeden 10 watový. Pokud se použije správné rozdělení pro vyslání jednoho paprsku, tak to statisticky vyjde stejně. (1) 2

3 Pravděpodobnost přežití cesty Jak je uvedeno výše, je dobré použít jako pravděpodobnost přežití cesty odrazivost plochy v bodě x. Pokud by byla použita jiná metoda (např. pro plochu s ρ 30% by cesta pokračovala s pravděpodobností 100%), tak by sekundární paprsky musely být počítány častěji, než je nutné (což stojí výpočetní výkon), a musely by být vynásobeny odrazivostí. Ne vždy umíme spočítat odrazivost ρ, v takovém případě lze použít jiný způsob rozhodnutí o přežití cesty, který dává podobné výsledky, ale nevyžaduje spočítat odrazivost ρ: vygeneruji směr sekundárního paprsku z p(ω i ) (dříve, než se rozhodnu, zda ho vůbec budu potřebovat) a ze směru spočítám pravděpodobnost, zda by měl paprsek pokračovat: { q survival = min 1, f } r(ω i, ω o ) cos(θ i ) p(ω i ) Pokud je p(ω i ) splňuje rovnici 1, tak je výsledek q survival vždy ρ, což je ekvivalentní s původní metodou. Pro obecné p(ω i ) může být q survival větší než 1 a proto je shora omezené hodnotou 1. Výhodou této metody je, že nevyžaduje znalost odrazivosti ρ, ale funguje zhruba stejně efektivně, a pokud je p(ω i ) ideální, (tj. pokud splňuje rovnici 1) tak funguje zcela stejně. Pokud je p(ω i ) daleko od ideálu (tj. pokud její průběh není podobný f r (ω i, ω o ) cos(θ i )), tak funguje lépe, než metoda s odrazivostí. 4 Výpočet přímého osvětlení v path traceru V základním algoritmu path traceru postupně střílíme paprsky a pokud náhodou trefíme zdroj světla, tak má paprsek nenulový příspěvek a všechny ostatní cesty, které skončily dříve, než se stačily trefit do světla mají nulový příspěvek. Tento způsob není příliš rychlý a trvá dlouho, než zkonverguje, což je vidět dobře na obrázcích 1a a 1b. Čím je zdroj světla menší, tím je menší pravděpodobnost, že paprsek se do zdroje trefí, pokud je zdroj bodový, tak je pravděpodobnost limitně nula. (a) Referenční obrázek (b) Základní path tracer, 150 cest na pixel Obrázek 1: Cornell box (Autor: Alexander Wilkie) Pokud se omezíme na problém přímého osvětlení, existují dva přístupy, jak zjistit, kolik světla dopadá na místo x: 3

vzorkování BRDF - posíláme paprsek po hemisféře a doufáme, že se trefíme do zdroje světla. vzorkování plochy světla - vzrokujeme plochu zdroje světla (vzorkované místo označuji y) při zohlednění viditelnosti mezi body x a y. 5 Vzorkování BRDF Pro výpočet odražené radiance L r vzorkováním BRDF využijeme formulaci rovnice odrazu jako integrálu přes směry na polokouli: L r (x, ω i ) = L e (r(x, ω i ), ω i ) f r (x, ω i, ω o ) cos θ i dω i H(x) Pro výpočet estimátoru rovnice odrazu generujeme náhodné směry ω i,k podle hustoty p, která je co nejpodobnější členu f r (x, ω i, ω o ) cos θ i, vrhneme paprsek z x ve směru ω i,k a pokud paprsek protne nějaký zdroj světla, přičteme L e (r(x, ω i,k ), ω i,k ) f r (x, ω i,k, ω o ) cos θ i,k /pdf. Výsledný estimátor má tedy tvar: ˆL r (x, ω o ) = 1 N N k=1 6 Vzorkování světel L e (r(x, ω i,k ), ω i,k ) f r (x, ω i,k, ω o ) cos θ i,k p(ω i,k ) Vzorec pro vzorkování světel získám z rovnice odrazu, kterou upravíme tak, aby místo integrování přes hemisféru integrovala přes plochy světla: L r (x, ω o ) = L e (y x) f r (y x ω o ) V (y x) G(y x)da y A V je funce viditelnosti, pokud je mezi x a y překážka, je V (y x) = 0, jinak V (y x) = 1. Pro výpočet estimátoru generujeme náhodnou pozici y k na zdroji, otestujeme viditelnost mezi x a y, a pokud je V (y x) = 1, přičteme A L e (y)f r (.) cos /pdf. ˆL r (x, ω o ) = A N N L e (y k x) f r (y k x ω o ) V (y k x) G(y k x) k=1 Přítomnost geometrického faktoru G(y k x) = cos(θ y) cos(θ x ) y x 2 v této formulaci způsobuje úbytek světla se čtvercem vzdálenosti. Povšimněte si, že tento úbytek je dán 3D geometrií prostoru (substituce dω = cos θ/r 2 da), nikoli vlastnostmi světla. 7 Vlastnosti vzorkování BRDF a vzorkování světla Máme dva různé a korektní způsoby, jak vyřešit (spočítat) jeden problém. Kdy je vhodné použít kterou metodu? 4

vzorkování BRDF - výhodnější pro velká světla, pro malé zdroje je malá pravděpodobnost zásahu zdroje vysoký rozptyl, šum vzorkování světla - výhodnější pro malé zdroje, jediná možnost pro bodové zdroje. Pro velké zdroje je mnoho vzorků mimo lalok BRDF vysoký rozptyl, šum Na obrázcích 2a a 2b je identická scéna zobrazená oběma metodami. Ve scéně jsou 4 světla s různými velikostmi a 4 plochy s různou lesklostí (nejvzdálenější jsou nejvíce odrazivé, blízké nejvíce difúzní). Na obrázku 2a vlevo dole je malý zdroj a difúzní plocha. V takové situaci metoda se vzorkování BRDF skoro nikdy netrefí (metoda náhodně volí směry na difúzní ploše a proto zhruba rovnoměrně po celé hemisféře) a výsledkem je náhodný shluk pixelů. Metoda vzorkování světel naopak selhává na obrázku 2b vpravo nahoře (velký zdroj světla s lesklým povrchem). Příčinou tohoto chování je, že když náhodně vygeneruji bod na světle, tak se světelný příspěvek toho bodu musí vynásobit BRDF a na lesklém povrchu se paprsek málokdy trefí do laloku BRDF. (a) Vzorkování BRDF (b) Vzorkování světel (c) MIS Obrázek 2: Ukázka vzorkovacích technik (Autor: Eric Veach) 8 Multiple importance sampling Vzhledem k tomu, že obě techniky selhávají na vzájemně komplementárních případech, by bylo dobré, kdyby bylo možné je zkombinovat do jedné, kde by slabost jedné byla vyvážena sílou druhé. Výsledky obou metod nemůžeme sčítat (výsledek by byl 2L r (x, ω o )), potřebujeme tedy nějaký vážený průměr obou metod. Otázka zní, jak korektně zvolit váhy. Metoda MIS používá váhy závislé na pdf vzorků a dodává velmi dobré výsledky (viz. obrázek 2c). Metoda Multiple Importance Sampling má váhy závislé na pdf vzorků, minimalizuje rozptyl kombinovaného estimátoru a má téměř optimální řešení. Mějme n vzorkovacích technik (=hustot pravděpodobností, protože každé vzorkování má jednoznačně určenou pdf, s jakou vzorkuje), p 1 (x), p 2 (x)... p n (x), z každé pdf vybereme n i vzorků X i,1, X i,1... X i,ni a spočítáme kombinovaný estimátor MIS podle následujícího vzorce: F = n 1 n i n i=1 i j=1 w i (X i,j ) f(x i,j) p i (X i,j ) První suma iteruje přes n vzorkovacích technik, druhá přes všechny vzorky z jednotlivých technik, w i jsou kombinační váhy jednotlivých vzorků a f/p je totéž, jako v klasickém Monte Carlo (2) 5

estimátoru. Kombinovaný estimátor F je nestranný, pokud x : všechna x je součet jejih vah roven jedné): [ n ] E[F ] = w i (x) f(x)dx f(x) 8.1 Vyrovnaná heuristika i=1 n w i (x) = 1 (tj. pokud pro Libovolně definovaná sada vah, která se sečte do 1 nám tedy dává nestranný estimátor MIS. To ale nestačí, chceme také minimalizovat rozptyl. Jako první řešení se nabízí aritmetický průměr: w i = 1/n, která v sobě spojuje to nejhorší z obou technik a není vůbec vhodný. Mnohem lepší volba je vyrovnaná heuristika, kde jsou váhy jednotlivých technik dány následujícím vzorcem: ŵ i (x) = n ip i (x) k n kp k (x) Vyrovnaná heuristika nám tedy dodá váhy, které můžeme dosadit do kombinovaného estimátoru: n n i f(x i,j ) F = k n kp k (X i,j ) i=1 j=1 kde je vidět, že při vyrovnané heuristice hodnota příspěvku libovolného vzorku X i,j k estimátoru nezávisí na tom, ze které vzorkovací techniky byl vzorek pořízen (tato vlastnost je vyjádřena v názvu heuristiky). Vyrovnaná heuristika je téměř optimální, žádný jiný kombinovaný estimátor ve tvaru 2 nemůže mít rozptyl o mnoho menší. Proč funguje tak dobře? V estimátoru je f/p a pokud je někde p malé, tak jsou příspěvky estimátoru na takových místech velké, ačkoliv je to nevhodné (to přesně dělá aritmetický průměr [obrázek 3b], protože sčítá obě hustoty, které mají váhu 0.5 i v místech, kde jedna z nich má velmi malé hodnoty). V kombinovaném estimátoru s vyrovnanou heuristikou jsou ve jmenovateli všechny hustoty a stačí, aby jejich součet nešel k nule a příspěvky jsou v takových místech rozumnější (obrázek 3c). i=1 (a) Hustota pravděpodobnosti (b) Kombinovaný estimátor s p 1 a p 2 aritmetickým průměrem z (c) Kombinovaný estimátor s vyrovnanou heuristikou Obrázek 3: Vztah vah a vzorkovacích technik vzhledem k příspěvku kombinovaného estimátoru 8.2 Aplikace MIS na výpočet přímého osvětlení Vrátíme se k vzorkování světla a BRDF, kde je při použití vyrovnané heuristiky velmi důležité si uvědomit, že obě pravděpodobnosti musí mít stejnou doménu. Uniformní vzorkování plochy světla nemá z pohledu bodu x uniformní pdf. Pokud použijeme vzorkování BRDF a světel, tak 6

Obrázek 4: Příspěvky jednotlivých technik do výsledného obrázku. Vlevo: w 1 * BRDF. Vpravo: w 2 * vzorkování zdroje máme dvě vzorkovací strategie p 1 a p 2, necht obě používají stejný počet vzorků n, v takovém případě mají následující váhy: ŵ 1 (ω) = n p 1 (ω) n p 1 (ω) + n p 2 (ω) = p 1 (ω) p 1 (ω) + p 2 (ω) Jak se spočítají p 1 a p 2? p 1 je hustota vzorkování podle BRDF a závisí tedy na BRDF v bodě x, cos θx např. pro Lambertovskou BRDF p 1 (ω) = π. Uniformní vzorkování zdroje vypadá z pohledu bodu x jako p 2 (x) = 1 x y 2 A cos θ y kde první člen 1/ A je tam kvůli tomu, aby p 2 = 1 (pdf je všude mimo světlo 0), vzdálenostní člen x y 2 korekci vzdálenosti (pokud se světlo dvakrát vzdálí, tak bude jeho plocha z pohledu bodu 4x menší a protože pdf p 2 není nula jen na světle, tak musí mýt větší hodnotu, aby integrál zůstal 1) a cos θ y kvůli natočení. 9 Použití MIS v path traceru V každém bodě potřebujeme spočítat dva příspěvky: přímé a nepřímé osvětlení. Na přímé osvětlení používáme dvě vzorkovací techniky vzorkování světel a BRDF které se spojí v kombinovaném estimátoru. Protože technika vysílání paprsku pro nepřímé osvětlení (vzorkování BRDF) je stejné, jako jedna z technik pro počítání přímé, lze recyklovat paprsek vyslaný podle vzorkování BRDF při výpočtu přímého osvětlení. Pro výpočet osvětlení na bodě x vždy vygeneruji dva paprsky jeden vznikne tak, že vygeneruji bod na povrchu světla a spojím ho s bodem x a druhý vznikne tak, že vyberu směr pomocí BRDF a pošlu paprsek tím směrem. První paprsek bude přispívat pouze na přímé osvětlení, zatímco druhý bude přispívat na přímé osvětlení (pokud se náhodou strefí do světla, což nemusí být moc často, viz obrázek 1b) a na nepřímé osvětlení, kde přijímá světlo od nějakého jiného bodu ve scéně (což může občas být i zdroj světla, protože i na ten dopadá jiné světlo). Je potřeba si uvědomit, že MIS váhy se použijí pouze u výpočtu přímého osvětlení, protože to je počítané pomocí kombinovaného estimátorů dvou technik. Nepřímé osvětlení se připočte celé. Při výpočtu MIS vah je potřeba vzít v úvahu pravděpodobnost ukončení cesty (ruská ruleta) Pokud se ve scéně vyskytuje více světel, je několik možností, jak se s tím vypořádat: Poslat stínový paprsek ke každému zdroji světla. Tento způsob může být nepraktický při vyšším počtu světel (100+) 7

Vybrat na hodne jeden zdroj (idea lne pravde podobnost podle vy konu) a na tom teprve na hodne vybrat bod y urc ujı cı stı novy paprsek. Existuje dobra heuristika, kdy tuto metodu pouz ı va m az po prvnı m neleskle m odrazu, zatı mco pro vs echny ostatnı vrcholy cesty poc ı ta m pr ı me osve tlenı od vs ech zdroju sve tla. Pravde podobnost vy be ru zdroje ovlivn uje hustoty (a tedy i va hy) v MIS Druha technika (BRDF) je pr irozene nezme ne na tı m, kolik je ve sce ne sve tel. Ta vz dy vrhne pra ve jeden paprsek a zjistı, zda jste zasa hli sve tlo. 10 Osve tlenı z mapy prostr edı Mapa prostr edı je jenom jiny typ zdroje sve tla, mı sto zdroje sve tla ve sce ne ma me nekonec ne velkou kouli s obrazem kolem cele sce ny, ktera ji osve tluje. Tato technika je c asto pouz ı va na ve filmech a hra ch. Mapu prostr edı lze na kouli ru zne mapovat. Pro poc ı ta nı osve tlenı se u mapy prostr edı pouz ı vajı dve techniky, vzorkova nı BRDF (generuje paprsky podle BRDF bodu a pokud nezasa hnout z a dny objekt, pouz ije se intenzita definovana koupı mapy prostr edı ) a vzorkova nı podle du lez itosti, importance sampling (paprsky se generujı podle toho, jakou intenzitu ma mapa prostr edı v dane m sme ru, napr. sve tla obloha ma vysokou intenzitu a tudı z i vysokou pravde podobnost). Ma me dve vzorkovacı techniky a proto lze pouz ı t MIS, ktera da va leps ı vy sledek, nez individua lnı pouz itı technik. Obra zek 5: EM pomocı BRDF (300 vzorku ) techniky na difu znı m povrchu. BRDF je konstantnı a ma lokdy se strefı do sve tla a tı m vytva r ı s um Obra zek 6: EM IS (300 vzorku ) - leskly povrch, protoz e BRDF ma veliky lalok, tak se ve ts ina vygenerovany ch vzorku se netrefı do laloku Obra zek 7: MIS (300 BRDF + 300 IS) na Obra zek 8: MIS (300 BRDF + 300 IS) na difu znı povrch leskly povrch 8

11 Vlastnosti estimátorů Řekneme, že estimátor je nestranný, pokud v průměru dává správnou veličinu (bez systematické chyby): E[F ] = Q kde F je estimátor veličiny Q (náhodná veličina) a Q je odhadovaná veličina (např. integrál). Pokud estimátor není nestranný, tak je vychýlený ( biased ), kde systematická chyba (bias) je dána následujícím vztahem: β = Q E[F ] Mějme estimátor, který je funkcí mnoha náhodných veličin (např. v path traceru máme příspěvky cest), pak řekneme, že je konzistentní, pokud { } P r lim F n(x 1, X 2... X n ) = Q = 1 N tj. pokud chyba F N Q jde k nule s pravděpodobností 1. Konzistentnost a nestrannost se liší, např. estimátor, který osciluje kolem své střední hodnoty je nestranný, ale ne konzistentní. Postačující podmínka konzistentnosti estimátoru (musí platit obě rovnosti; nestačí, aby bias šel limitně k nule) je lim β[f N] = lim V [F N] = 0 N N Střední kvadratická chyba (Mean Square Error): Platí, že MSE[F ] = E[(F Q) 2 ] MSE[F ] = V [F ] + β[f ] 2 Z toho vyplývá, že pokud je algoritmus nestranný, tak jediným zdrojem chyby je rozptyl (MSE[F ] = V [F ]). Rozptyl lze odhadnout ze vzorků Y i, nestranný estimátor rozptylu: ( ) ( ) ˆV [F N ] = 1 2 1 N Yi 2 1 N Y N 1 i N N Eficience (účinnost) estimátoru: ɛ[f ] = i=1 1 V [F ]T F V [F ] je rozptyl a T [F ] je čas výpočtu (např. počet operací, počet vržených paprsků či jiná metrika). 12 Zobrazovací algoritmy Zobrazovací algoritmy jsou počítány pomocí estimátorů. Různé algoritmy můžeme rozdělit podle toho, jaké vlastnosti mají: Nestranné: path tracing, bidirectional path tracing, metropolis light transport Konzistentní: progresivní fotonové mapy Nekonzistentní, vychýlené: nekonvergují ke správnému výsledku, ale k něčemu hezkému konvergují rychleji, než jiné algoritmy (=mají z principu chyby, ale uživateli to nevadí). Fotonové mapy, irradiance/radiance caching. i=1 9