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

Slides:



Advertisements
Podobné prezentace
Fourierova transformace Filtrování obrazu ve frekvenční doméně
Advertisements

Počítačová grafika III Odraz světla, BRDF – Cvičení Jaroslav Křivánek, MFF UK
Počítačová grafika III - Cvičení Integrováví na jednotkové kouli
Počítačová grafika III – Monte Carlo integrování II Jaroslav Křivánek, MFF UK
Počítačová grafika III – Důležitost, BPT Jaroslav Křivánek, MFF UK
Jaroslav Křivánek, MFF UK
Počítačová grafika III – Zobrazovací rovnice a její řešení
Počítačová grafika III – Zobrazovací rovnice a její řešení Jaroslav Křivánek, MFF UK
Počítačová grafika III – Monte Carlo integrování
Počítačová grafika III – Path tracing II Jaroslav Křivánek, MFF UK
Medians and Order Statistics Nechť A je množina obsahující n různých prvků: Definice: Statistika i-tého řádu je i-tý nejmenší prvek, tj., minimum = statistika.
Optimalizace v simulačním modelování. Obecně o optimalizaci  Optimalizovat znamená maximalizovat nebo minimalizovat parametrech (např. počet obslužných.
Získávání informací Získání informací o reálném systému
Pravděpodobnost a statistika opakování základních pojmů
Počítačová grafika III – Monte Carlo integrování Jaroslav Křivánek, MFF UK
Počítačová grafika III – Monte Carlo integrování Přímé osvětlení
Počítačová grafika III – Sekvence s nízkou diskrepancí a metody quasi-Monte Carlo Jaroslav Křivánek, MFF UK
Počítačová grafika III Úvod Jaroslav Křivánek, MFF UK
Generování náhodných veličin (2) Spojitá rozdělení
1 Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 – Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím.
Počítačová grafika III Světlo, Radiometrie – Cvičení Jaroslav Křivánek, MFF UK
Počítačová grafika III – Cvičení 3 Jaroslav Křivánek, MFF UK
Počítačová grafika III – Multiple Importance Sampling Jaroslav Křivánek, MFF UK
Normální (Gaussovo) rozdělení
O metodě konečných prvků Lect_6.ppt M. Okrouhlík Ústav termomechaniky, AV ČR, Praha Liberec, 2010 Pár slov o Matlabu a o zobrazení čísla na počítači.
OSNOVA: a) Příkazy pro větvení b) Příkazy pro cykly c) Příkazy pro řízení přenosu d) Příklad Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače.
1 Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 – Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím.
Počítačová grafika III – Monte Carlo rendering 2 Jaroslav Křivánek, MFF UK
Počítačová grafika III – Monte Carlo integrování Jaroslav Křivánek, MFF UK
1 Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 – Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím.
Počítačová grafika III – Path tracing Jaroslav Křivánek, MFF UK
Náhodné výběry a jejich zpracování Motto: Chceme-li vědět, jak chutná víno v sudu, nemusíme vypít celý sud. Stačí jenom malý doušek a víme na čem jsme.
Počítačová grafika III – Důležitost, BPT Jaroslav Křivánek, MFF UK
1 Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 – Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím.
Počítačová grafika III – Cvičení 4 Jaroslav Křivánek, MFF UK
Počítačová grafika III – Zobrazovací rovnice a její řešení Jaroslav Křivánek, MFF UK
Directions – prepositions and verbs Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Romana Petrová. Dostupné z Metodického portálu
2. Vybrané základní pojmy matematické statistiky
Počítačová grafika III – Radiometrie
Náhodný vektor Litschmannová, 2007.
Opakování lekce 4,5,
Monte Carlo simulace Experimentální fyzika I/3. Princip metody Problémy které nelze řešit analyticky je možné modelovat na základě statistického chování.
Distribuční funkce diskrétní náhodná proměnná spojitá náhodná proměnná
Počítačová grafika III Organizace Jaroslav Křivánek, MFF UK
Počítačová grafika III ZS 2014 Organizace Jaroslav Křivánek, MFF UK
Počítačová grafika III Organizace Jaroslav Křivánek, MFF UK
Počítačová grafika III Úvod Jaroslav Křivánek, MFF UK
Počítačová grafika III – Světlo, Radiometrie
Počítačová grafika III – Path tracing Jaroslav Křivánek, MFF UK
1 Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 – Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím.
Funkce náhodné proměnné nová náhodná proměnná: a stará náhodná proměnná: x hustota pravděpodobosti: f(x) hustota pravděpodobosti: g(a)
Hustota pravděpodobnosti – případ dvou proměnných
Úvod do praktické fyziky Seminář pro I.ročník F J. Englich, ZS 2003/04.
Počítačová grafika III – Monte Carlo rendering 3 Jaroslav Křivánek, MFF UK
Náhodná veličina. Nechť (, , P) je pravděpodobnostní prostor:
Počítačová grafika III – Bidirectional path tracing
Metropolis © Josef Pelikán, 1 / 38 © 2008 Josef Pelikán, CGG MFF UK Praha
Počítačová grafika III NPGR 010 © Josef Pelikán KSVI MFF UK Praha WWW:
Stochastické procesy a Markovovy řetězce
PICTURES FOR DESCRIPTION
Monte Carlo Typy MC simulací
Induktivní statistika
Základy zpracování geologických dat Rozdělení pravděpodobnosti
ANALÝZA A KLASIFIKACE DAT
Lineární kongruentní generátor
Počítačová grafika III Monte Carlo estimátory – Cvičení
Počítačová grafika III Monte Carlo estimátory – Cvičení
Lineární kongruentní generátor
ANALÝZA A KLASIFIKACE DAT
Základy statistiky.
Transkript prezentace:

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

Monte Carlo integrování Obecný nástroj k numerickému odhadu určitých integrálů 11 f(x)f(x) 01 p(x)p(x) 22 33 44 55 66 Integrál: Monte Carlo odhad I: „V průměru“ to funguje: PG III (NPGR010) - J. Křivánek

Generování vzorků z distribuce

1D diskrétní náhodná veličina Dána p-nostní fce p(i), distribuční fce P(i) Postup 1. Vygeneruj u z R(0,1) 2. Vyber x i pro které (definujeme P(0) = 0 ) Nalezení i se provádí půlením intervalu PG III (NPGR010) - J. Křivánek Distribuční funkce

2D diskrétní náhodná veličina Dána p-nostní fce p I,J (i, j) Možnost 1:  Interpretovat jako 1D vektor pravděpodobností  Vzorkovat jako 1D distribuci PG III (NPGR010) - J. Křivánek

2D diskrétní náhodná veličina PG III (NPGR010) - J. Křivánek

2D diskrétní náhodná veličina Možnost 2 (lepší) 1. „Sloupec“ i sel vybrat podle marginálního rozdělení, popsaného 1D marginální p-nostní fcí 2. „Řádek“ j sel vybrat podle podmíněného rozdělení příslušejícího vybranému „sloupci“ i sel PG III (NPGR010) - J. Křivánek

Vzorkování 1D spojité náhodné veličiny Transformací rovnoměrné náhodné veličiny Zamítací metoda (rejection sampling) PG III (NPGR010) - J. Křivánek

Vzorkování 1D spojité náhodné veličiny transformací Je-li U je náhodná veličina s rozdělením R(0,1), pak náhodná veličina X má rozdělení popsané distribuční funkcí P. Pro generování vzorků podle hustoty p potřebujeme  Spočítat cdf P(x) z pdf p(x)  Spočítat inverzní funkci P -1 (x) 9 PG III (NPGR010) - J. Křivánek 2014

Kombinace vzorkování po částech s transformační metodou PG III (NPGR010) - J. Křivánek stratifikace v prostoru náhodných čísel transformace pomocí inverzní distribuční fce

Vzorkování 1D spojité náhodné veličiny zamítací metodou Algoritmus  Vyber náhodné u 1 z R(a, b)  Vyber náhodné a u 2 z R(0, MAX)  Přijmi vzorek, pokud p(u 1 ) > u 2 Přijaté vzorky mají rozložení dané hustotou p(x) Účinnost = % přijatých vzorků  Plocha funkce pod křivkou / plocha obdélníka  Transformační metoda vždy efektivnější (ale vyžaduje integrovat hustotu a invertovat distribuční fci) PG III (NPGR010) - J. Křivánek p(x)p(x) a 0 MAX b

Vzorkování 2D spojité náhodné veličiny Jako pro 2D diskrétní veličinu Dána sdružená hustota p X,Y (x, y) = p X (x) p Y|X (y | x) Postup 1. Vyber x sel z marginální hustoty 2. Vyber y sel z podmíněné hustoty PG III (NPGR010) - J. Křivánek

Transformační vzorce P. Dutré: Global Illumination Compendium, PG III (NPGR010) - J. Křivánek

Importance sampling Phongovy BRDF Paprsek dopadne na plochu s Phongovou BRDF. Jak vygenerovat sekundární paprsek pro vzorkování nepřímého osvětlení? Path tracing  Pouze 1 sekundární paprsek – je třeba zvolit komponentu BRDF (druh interakce)  Postup: 1. Vyber komponentu BRDF (difúzní odraz / lesklý odraz / lom) 2. Vzorkuj vybranou komponentu 3. Vyhodnoť celkovou PDF a BRDF 14 PG III (NPGR010) - J. Křivánek 2014

Fyzikálně věrohodná Phongova BRDF Kde: Zachování energie: 15 PG III (NPGR010) - J. Křivánek 2014

Výběr interakce pd = max(rhoD.r, rhoD.g, rhoD.b); ps = max(rhoS.r, rhoS.g, rhoS.b); pd /= (pd + ps); // pravd. výběru difúzní komponenty ps /= (pd + ps); // pravd. výběru lesklé komponenty if (rand(0,1) <= pd) genDir = sampleDiffuse(); else genDir = sampleSpecular(incDir); pdf = evalPdf(incDir, genDir, pd, ps); 16 PG III (NPGR010) - J. Křivánek 2014

Vzorkování difúzního odrazu Importance sampling s hustotou p(  ) = cos(  ) /    …úhel mezi normálou a vygenerovaným sekundárním paprskem  Generování směru: r1, r2 … uniformní na  Zdroj: Dutre, Global illumination Compendium (on-line)  Odvození: Pharr & Huphreys, PBRT 17 PG III (NPGR010) - J. Křivánek 2014

sampleDiffuse() // generate spherical coordinates of the direction float r1 = rand(0,1), r2 = rand(0,1); float sinTheta = sqrt(1 – r2); float cosTheta = sqrt(r2); float phi = 2.0*PI*r1; float pdf = cosTheta/PI; // convert [theta, phi] to Cartesian coordinates Vec3 dir (cos(phi)*sinTheta, sin(phi)*sinTheta, cosTheta); return dir; 18 PG III (NPGR010) - J. Křivánek 2014

Vzorkování lesklého odrazu Importance sampling s hustotou p(  ) = (n+1)/(2  ) cos n (  )   …úhel mezi ideálně zrcadlově odraženým  o a vygenerovaným sekundárním paprskem  Generování směru: r1, r2 … uniformní na 19 PG III (NPGR010) - J. Křivánek 2014

sampleSpecular() // build a local coordinate frame with R = z-axis Vec3 R = 2*dot(N,incDir)*N – incDir; // ideal reflected direction Vec3 U = arbitraryNormal(R); // U is perpendicular to R Vec3 V = crossProd(R, U); // orthonormal basis with R and U // generate direction in local coordinate frame Vec3 locDir = rndHemiCosN(n); // formulas form prev. slide, n=phong exp. // transform locDir to global coordinate frame Vec3 dir = locDir.x * U + locDir.y * V + locDir.z * R; return dir; 20 PG III (NPGR010) - J. Křivánek 2014

evalPdf(incDir, genDir, pd, ps) PG III (NPGR010) - J. Křivánek return pd * getDiffusePdf(genDir) + ps * getSpecularPdf(incdir, genDir); formulas from prev. slides

Image-based lighting

Introduced by Paul Debevec (Siggraph 98) Routinely used for special effects in films & games 23 Image-based lighting PG III (NPGR010) - J. Křivánek 2014

24 Image-based lighting Eucaliptus grove Grace cathedral Uffizi gallery Illuminating CG objects using measurements of real light (=light probes) © Paul Debevec PG III (NPGR010) - J. Křivánek 2014

25 Point Light Source © Paul Debevec PG III (NPGR010) - J. Křivánek 2014

26 © Paul Debevec PG III (NPGR010) - J. Křivánek 2014

27 © Paul Debevec PG III (NPGR010) - J. Křivánek 2014

28 © Paul Debevec PG III (NPGR010) - J. Křivánek 2014

29 © Paul Debevec PG III (NPGR010) - J. Křivánek 2014

Mapping Eucaliptus grove Grace cathedral Debevec’s spherical“Latitude – longitude” (spherical coordinates) Cube map PG III (NPGR010) - J. Křivánek

“Latitude – longitude” (spherical coordinates) Mapping Uffizi gallery St. Peter’s Cathedral Debevec’s spherical Cube map PG III (NPGR010) - J. Křivánek

Mapping from direction in Cartesian coordinates to image UV. 32 Mapping float d = sqrt(dir.x*dir.x + dir.y*dir.y); float r = d>0 ? *acos(dir.z)/d : 0.0; u = dir.x * r; v = dir.y * r; Quote from “ The following light probe images were created by taking two pictures of a mirrored ball at ninety degrees of separation and assembling the two radiance maps into this registered dataset. The coordinate mapping of these images is such that the center of the image is straight forward, the circumference of the image is straight backwards, and the horizontal line through the center linearly maps azimuthal angle to pixel coordinate. Thus, if we consider the images to be normalized to have coordinates u=[-1,1], v=[-1,1], we have theta=atan2(v,u), phi=pi*sqrt(u*u+v*v). The unit vector pointing in the corresponding direction is obtained by rotating (0,0,-1) by phi degrees around the y (up) axis and then theta degrees around the -z (forward) axis. If for a direction vector in the world (Dx, Dy, Dz), the corresponding (u,v) coordinate in the light probe image is (Dx*r,Dy*r) where r=(1/pi)*acos(Dz)/sqrt(Dx^2 + Dy^2). PG III (NPGR010) - J. Křivánek 2014

Technique (pdf) 1: BRDF importance sampling Generate directions with a pdf proportional to the BRDF Technique (pdf) 2: Environment map importance sampling  Generate directions with a pdf proportional to L(  ) represented by the EM 33 Sampling strategies PG III (NPGR010) - J. Křivánek 2014

Sampling strategies BRDF IS 600 samples EM IS 600 samples MIS samples Diffuse only Ward BRDF,  =0.2 Ward BRDF,  =0.05Ward BRDF,  =0.01 PG III (NPGR010) - J. Křivánek

Vzorkování směrů podle mapy prostředí Intenzita mapy prostředí definuje hustotu (pdf) na jednotkové kouli Pro účely vzorkování ji aproximujeme jako 2D diskrétní distribuci nad pixely mapy Pravděpodobnost výběru pixelu je dána součinem  Intenzity pixelu  Velikostí pixelu na jednotkové kouli (závisí na mapování) Detaily  Writeup  PBRT - PG III (NPGR010) - J. Křivánek