Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn &...

33
Photon-Mapping University of Bonn & GfaR mbH

Transcript of Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn &...

Page 1: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon-Mapping

University of Bonn & GfaR mbH

Page 2: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Monte Carlo Ray TracingUniversity of Bonn & GfaR mbH

unterschiedlich stark empfundenes Rauschen in beiden Bildern

hochfrequente und niederfrequente Details der Mehrfachstreuung

einige Szenen konvergieren besonders langsam

kritische Pfade enthalten oft spekulare Reflektionen/Transmissionen

diffus reflektierend spiegelnd

Page 3: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

effiziente Berechnung der indirekten Beleuchtung

Methode mit systematischen Fehlern

(Bias) Photon-Mapping

University of Bonn & GfaR mbH

A Practical Guide to Global Illumination using Photon Mapping,

Siggraph 2001 Course 38, August 2001,

Realistic Image Synthesis Using Photon Mapping, A K Peters,

2001

direkte Beleuchtung Direkte+indirekte Beleuchtung

Page 4: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon-Mapping

Beobachtung: diffuser Strahlungsaustausch (LD+E): : indirekte Beleuchtung ändert sich relativ langsam (niederfrequent-nf)

Kaustiken (LS+DE): starke „Konzentration“ des einfallenden Lichtes (hochfrequent-hf)

University of Bonn & GfaR mbH

Idee:Caching ( und Wiederverwendung) der indirekten Beleuchtung

verwende spezielle Datenstruktur: Photon Map (kd-Baum)

Speicherung von einfallender indirekter Beleuchtung

nicht direkt an Geometrie gekoppelt

unabhängig von Blickrichtung

nur Einfachstreuung

Einfach + Mehrfachstreuung

nf

hf

Page 5: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon-Mapping: Schritte

Photon tracing

Emission

Streuung

Speicherung

University of Bonn & GfaR mbH

Aufbereiten der Photon Map fürs Rendering

Kd-Baum

Schätzung der Leuchtdichte

Schätzung des einfallenden Flusses

Auswerung der BRDF

Filterung

Rendering

Photon Map

Page 6: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon tracing - Emission

Aussenden von Photonen von der Lichtquelle

diffuse Punktlichtquelle

gleichmäßiges Sampling auf der Einheitskugel (Rejection Sampling)

sphärische Lichtquelle

generiere wie oben zufällige Richtung auf der Lichtquelle.

University of Bonn & GfaR mbH

generiere wie oben zufällige Richtung auf der Lichtquelle.

erzeuge auf der Halbkugel über der zufällig generierten Position eine

zufällige Richtung.

Für eine diffuse Lichtquelle sollte die Wahrscheinlichkeit der Abstrahlrichtung

proportional zum Cosinus zwischen Normale und Abstrahlrichtung sein.

( , ) (arccos( ), 2 )x yθ φ π=

Page 7: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon tracing - Emission

Komplexe Lichtquelle

approximiere die Abstrahlfunktion durch sphärische Dreiecke

verwende gleichmäßiges Abtasten für die sphärischen Dreiecke

University of Bonn & GfaR mbH

Page 8: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon tracing - Emission

rejection Sampling für diffuse LQ:

erzeuge gleichmäßig verteilte Zufallsvektoren (Samples) innerhalb eines

Einheitswürfels

falls Vektor innerhalb der Einheitskugel wird Sample verwendet, sonst nicht.

University of Bonn & GfaR mbH

Page 9: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon tracing - Emission

„Rezept“ für Sampling Algorithmen(vgl. State of the Art in Monte Carlo Ray

Tracing for Realistic Image Synthesis,

Siggraph 2001 Course 29)

University of Bonn & GfaR mbH

Page 10: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon tracing - Streuung

Photonen (beim Photon Mapping) propagieren durch Lichtquelle abgegebene Leistung (Φ [W]).

Strahlen dagegen Radianz (L [W/sr/m2])

Leistung eines einzelnen Photons hängt von der Abstrahlrichtung und von der Anzahl insgesamt ausgesandter Photonen ab

Auftreffen auf spiegelnde Flächen

University of Bonn & GfaR mbH

Auftreffen auf spiegelnde FlächenPhoton wird in Richtung des reflektierten Strahls weitergeleitet.

Auftreffen auf andere Flächen (mit diffusem Anteil) aktueller Zustand des Photons (Energie,Ort,Richtung) wird gespeichert

Energie des Photons wird gemäß BRDF abgeschwächt und eine neue Richtung stochastisch ausgewählt.

ggf. Verwendung von Importance-Sampling

Page 11: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon tracing - Streuung

wünschenswerte Zieleunwichtige Photonen nicht weiterverfolgen

alle gespeicherten Photon soll ungefähr gleiche Leistung repräsentieren um Varianz zu minimieren

Realisierung: Russian Roulette

Beispiel: Oberfläche mit diffusem Reflektionskoeffizient d und

University of Bonn & GfaR mbH

Beispiel: Oberfläche mit diffusem Reflektionskoeffizient d und spekularem Reflektionskoeffizienten s. Erzeuge identisch verteilte Zufallszahl ξ ∈ [0,1]

Page 12: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon tracing - StreuungUniversity of Bonn & GfaR mbH

“Cornell Box” Mit Glass und Chrome Kugel. Links: Ergebnis nach Ray Tracing mit

direkter Beleuchtung und spekularer Reflektion und Transmission. Rechts: die

Photonen in der zugehörigne Photon Map.

Page 13: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Speichern der PhotonenPhotonen werden nur gespeichert, wenn sie auf nicht spiegelnde

Flächen treffen.

University of Bonn & GfaR mbH

Dabei werden 65536 unterschiedliche Richtungen gespeichert.

wird keine Kompression der R,G,B – Werte verwendet, so können einfach 3 float-Werte verwendet werden.

Achtung: Photonen werden nicht in der Geometrie gespeichertes wird ein Kd-Baum als Datenstruktur zur Speicherung der Photon Map verwendet

Page 14: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Speicherung der Photonen bezüglich der Raumlkoordinate in

einem balancierten kd-Baum

Photon Map

8

4 52

University of Bonn & GfaR mbH

In einem balancierten kd-Baum mit N Photonen kann ein Photon

in O(log N) Zeit gefunden werden.wichtig für effiziente Nachbarschaftssuche

3

3 6 4 2

1

6

4 5

7

2

1 7 5 8

Page 15: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Suchen der Photonen

Nutze den kd-Baum,

um die n benachbarte

Photonen zu einem Punkt x

auf der Oberfläche zu finden.

University of Bonn & GfaR mbH

Page 16: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Schätzung des der Irradianz aus Photonendichte (in Umgebung des Punktes)

Schätzung der Irradianz

),( oxL ω)(xnr

x

University of Bonn & GfaR mbH

2∆ =A r π),,(

1),,(),(

1 12 oj

n

j

n

j

BRDFj

Kugel

ojBRDF

j

o xfr

xfA

xL ωωπ

ωωω ∑ ∑= =

∆Φ=∆

∆Φ≈

∫∫Φ

== ωωθ

θωθω dfddA

ddfLxL BRDFBRDFio

coscoscos),(

2

Kugelr

x

iE

j

iE

Page 17: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Filterung

Problem: vollständige „Verschmierung“ der geschätzten Irradianz

über Kugelradius

alle Photonen innerhalb des Suchvolumens werden gleich gewichtet

Eine mögliche Verbesserung ist es, die Photonen entsprechend zu

filtern, d.h. Photonen in der Nähe der betrachteten Position x höher

University of Bonn & GfaR mbH

filtern, d.h. Photonen in der Nähe der betrachteten Position x höher

zu gewichten.

Cone Filter (d Abstand von zum Photon, k Konstante, r Radius):

Page 18: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Filterung

Gauss Filter (d Abstand von zum Photon, α=0.918,β=1.953, Radius r):

University of Bonn & GfaR mbH

pgoi

n

i

BRDFio wxfxL ),,(),(1

ωωω ∑=

∆Φ≈

Page 19: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Rendering

Die Photon Map kann mit Hilfe eines einfachen Ray Tracers

visualisiert werden:

auf diffusen Flächen wird die reflektierte Leuchtdichte aus der Photon Map

geschätzt

auf spiegelnden Flächen wird Ray-Tracing verwendet

University of Bonn & GfaR mbH

auf spiegelnden Flächen wird Ray-Tracing verwendet

mit dieser einfachen Strategie werden prinzipiell alle Lichtpfade zwischen den

Lichtquellen und dem Auge berücksichtigt:

L(S|D)*D: Photon Map

(LS*E)|(DS*E): Ray-Tracing

Alternative: Betrachte alle gespeicherten Photonen als Lichtquellen

und verwende Path-Tracing

Dieser Photon Gathering Ansatz kann als spezielles bidirektionales Path

Tracing aufgefaßt werden.

Page 20: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Hybrider Ansatz

Kaustiken sind besonders problematisch

(Varianz!)

verwende Path Tracer für:

direkte Beleuchtung

University of Bonn & GfaR mbH

direkte Beleuchtung

indirekte Beleuchtung (außer Kaustiken)

Kaustiken mit Photonmap

Renderinggleichung entsprechend aufgespalten

werden:

Page 21: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Rendering

Photon Map ist unabhängig vom Betrachter!

spalte BRDF in spekularen und diffusen Anteil auf:1

( , ) ( , ) ( , )

( , ) ( , , ) ( , ) cos( )

o r e r r r

e r r i i i i i

L x L x L x

L x x L x d

ω ω ω

ω ρ ω ω ω θ ωΩ

= +

= + ∫

University of Bonn & GfaR mbH

spalte einfallende Leuchtdichte auf

, , ,

( , ) ( , ) ( , ) ( , )i p i l p i c p i d p

direktesLicht Kaustik diffus reflektiert

L x L x L x L xω ω ω ω= + +14243 14243 14243

( , , ) ( , , ) ( , , )r i s r i d r i

x x xρ ω ω ρ ω ω ρ ω ω= +

Page 22: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Rendering

Damit ergibt sich:

1

,

( , ) ( , , ) ( , ) cos( )

( , , ) ( , ) cos( )

r r r i i i i

r i i l i i i

L x x L x d

x L x d

ω ρ ω ω ω θ ω

ρ ω ω ω θ ω

Ω

=

=

University of Bonn & GfaR mbH

( )1

1

1

1

,

, ,

,

,

( , , ) ( , ) cos( )

( , , ) ( , ) ( , ) cos( )

( , , ) ( , ) cos( )

( , , ) ( , ) cos( )

r i i l i i i

s r i i c i i d i i i

d r i i c i i i

d r i i d i i

x L x d

x L x L x d

x L x d

x L x d

ρ ω ω ω θ ω

ρ ω ω ω ω θ ω

ρ ω ω ω θ ω

ρ ω ω ω θ ω

Ω

Ω

Ω

Ω

=

+ +

+

+

∫ i

Page 23: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Rendering

spalte Photon Map auf in:

Caustic Map (LS+D Pfade)

mind. eine spekulare Reflektion bevor diffuse Fläche getroffen

wird

University of Bonn & GfaR mbH

wird

Pfad terminiert, falls diffuse Fläche getroffen wird

Berechnung durch Sampling der spekularen Flächen (vgl.

Light-Source Sampling)

Globale Photon Map (restliche Pfade)

Page 24: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Rendering

Direkte Beleuchtung( )

1

1

1

1

, ,

, ,

,( , ) ( , , ) ( , ) ( , ) cos(( , , ) )

( , , ) ( , ) cos

( , ) cos( )

( ) ( , , ) ( , ) cos( )

r r s r i i c i i d i i i

d r i i

r i i l i i i

c i i i d r i i d i i i

L x x L x L x d

x L x d x L x d

x L x dω ρ ω ω ω ω θ ω

ρ ω ω ω θ ω ρ ω ω ω

ρ ω ω ω θ ω

θ ω

ΩΩ

Ω Ω

= + +

+ +

∫ ∫

∫ ∫

University of Bonn & GfaR mbH

mit Ray-Tracing Methoden und Lichtquellen Sampling

Page 25: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Rendering

spekulare Reflektion

( )1

1 1

1

, ,

, ,

,( , , ) ( , ) ( , ) cos(( , ) ( , , ) ( , ) cos( )

( , , ) ( , ) cos( ) ( , , ) ( , ) cos( )

)r r r i i l i i

d r i i c

i s r i i c i i

i i i d r i i d i i

d i

i

i ix L x L x dL x x L x d

x L x d x L x d

ω ρ ω ω ω θ ω

ρ ω ω ω θ

ρ ω ω ω ω θ ω

ω ρ ω ω ω θ ω

ΩΩ

Ω Ω

= +

+

+

+

∫ ∫

University of Bonn & GfaR mbH

Da dieser Term sehr stark von der BRDF abhängt,

müßte man die Photon Map sehr hoch auflösen.

daher: vollständig mit Ray-Tracing Methoden und

BRDF Sampling

Page 26: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Rendering

Kaustiken

( )1 1

,

, , ,

,

( , ) ( , , ) ( , ) cos( ) ( , , ) ( , ) ( , ) cos(

( ,

)

( , , ), ) ( , ) ( , ) cos(os( ) )c

r r r i i l i i s r i i c i i d i i i

d r i i d i i i

i

d r i i c i i ix L

L x x L x d x L x L x d

x L xx d dρ ω

ω ρ ω ω ω θ ω ρ ω ω ω ω θ ω

ρ ω ω ωω ω θω ω θ

Ω

Ω

Ω

Ω

= + +

+ +

University of Bonn & GfaR mbH

Durch Schätzen der Leuchtdichte in der Photon Map

1 1Ω Ω

Page 27: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Rendering

mehrfache diffuse Reflektion

( )1 1

, , ,

, ,

( , ) ( , , ) ( , ) cos( ) ( , , ) ( , ) ( , ) cos( )

( , , ( , , ) ( , ) co) ( , ) cos( ) s( )

r r r i i l i i s r i i c i i d i i i

d r i i c i

i

d r i i d i ii i i

L x x L x

x

d x L x L x d

x L x d L x d

ω ρ ω ω ω θ ω ρ ω ω ω ω θ ω

ρ ω ω ρ ω ω ω θ ωω θ ω

Ω Ω

= + +

+ +

∫ ∫

∫ ∫

University of Bonn & GfaR mbH

genaue Berechnung: Verwende MC-Ray Tracing. Verwende optional Globale Photon Map um Importance Sampling zu verbessern.

approximativ: Schätze der Irradianz aus globaler Photon Map.

ggf. Final Gathering: Erstes Streuevent mit MC-Ray Tracing, danach Schätzung der Irradianz aus Photon Map.

1 1

, ,d r i i c i d r i i d i ii i i

ΩΩ

∫ ∫

Page 28: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

Photon-Mapping

Resultate:

Fehler dieser Schätzung sind niederfrequent, im Gegensatz zum

hochfrequenten Rauschen des MC-Ray Tracing.

oft schnellere Konvergenz als MC-Ray Tracing

Methode ist nicht mehr rein stochastisch (unbiased), d.h. der Erwartungswert

University of Bonn & GfaR mbH

Methode ist nicht mehr rein stochastisch (unbiased), d.h. der Erwartungswert

beim Photon-Mapping stimmt nicht unbedingt mit dem korrekten Resultat

überein.

Page 29: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

ErgebnisseUniversity of Bonn & GfaR mbH

Ray Tracing mit scharfen Schatten Ray Tracing mit weichen Schatten

Page 30: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

ErgebnisseUniversity of Bonn & GfaR mbH

Mit Kaustiken Vollständige globale Lösung, 200000

Photonen. Erst jetzt ist die Decke hell!

Page 31: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

ErgebnisseUniversity of Bonn & GfaR mbH Globale Photon Map mit 100 Photonen

zur Schätzung der Irradianz (ohne Final Gathering)

Globale Beuchtung mit 500 Photonen zur

Schätzung der Irradianz (ohne Final Gathering)

Page 32: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

ErgebnisseUniversity of Bonn & GfaR mbH

Insgesamt 500000 Photonen, 100 Photonen zur Berechnung der Leuchtdichte, 20000 Dreicke

zur Modellierung der Wasseroberfläche, 11 Minuten Rechenzeit.

Page 33: Photon-Mapping - Goethe University Frankfurt€¦ · (Bias) Photon-Mapping University of Bonn & GfaR mbH A Practical Guide to Global Illumination using Photon Mapping, Siggraph 2001

ErgebnisseUniversity of Bonn & GfaR mbH