41
Photon Mapping Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon Mapping

Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Embed Size (px)

Citation preview

Page 1: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Jörg HedrichLena KohlRuth ReckerAnke SchneiderPascal SproedtBenjamin Zapilko

Projektpraktikum:

Augmentierte Bildsynthese mitPhoton Mapping

Page 2: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Inhalt Photon Mapping

Page 3: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Mapping Algorithmus wurde 1995 vonHENRIK WANN JENSEN

zum ersten Mal veröffentlicht.

Einleitung

Kurzbiographie:1996-1998 arbeitete er an einer

kommerziellen Rendering- Software

1998-1999 Massachusetts Institute of Technology

1999-2002 forschte er an der University Stanford

seit 2002 ist er Prof. an der University of California in San Diego

Für seinen Photon Mapping Algorithmus erhielt er von der technische Uni Dänemarks seinen M.Sc. und Dr. Inf.

Auszeichnungen:- 2004 Academy Award- 2003 Best Paper Award- einer von der ersten 10 Wissenschaftlern

2004- Sloan Fellow Auszeichnung

Page 4: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Warum Photon Mapping?

Photon Mapping ist eine Erweiterung des Ray Tracings.

Einleitung

Ray Tracing ist einfach und elegant, aber diffuse Intereflections und Kaustiken können damit nicht gut oder gar nicht dargestellt werden.

Page 5: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Mapping

Photon Mapping ist eine praktikable Technik, die fähig ist globale Beleuchtung einschließlich Color Bleeding, Motion Blur, Cautics,… zu simulieren.Und stellt die gleiche Flexibilität wie Monte Carlo zur Verfügung, braucht aber nur ein Bruchteil der Berechnungszeit.

Heutzutage wird Photon Mapping meist in high- end Rendering Software eingesetzt und für architektonische Simulationen, Computerspiele und Filme verwendet.

Einleitung

Page 6: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Mapping

2 Pass Methode:

1. - Photon Emission - Photon Scattering - Photon Storing in Photon Maps Photon Map: + können in Szenen von Mio

von Objekten und komplexen Materialien verwendet werden

+ Unabhängig von der Geometrie der Szene

+ Speichern pro Photon den Lichtstrom, den Einfallswinkel und die Treffer-Position + Organisiert als kd-trees SCHLÜSSELCHARAKTERISTIK 2. - Rendering

Einleitung

Page 7: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● Aussenden von Photonen● Gewinn der photometrischen Energie aus HDRI● Möglichst homogene Energieverteilung

Page 8: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● HDRI als beleuchtende Umgebung● Projektion der Bounding-Sphere des Objekts● Setzen der Photonen

Page 9: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● LatLong-2D-Mapping● Bestimmen der Beleuchtung● Energiehomogenität● Gleichverteilung der Photonen eines Pixels auf

projizierter Kreisscheibe

Page 10: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● HDR-Shop● Mappen des Light-Probe-HDRI auf eine

Latitude/ Longitude-2D-Repräsentation

Page 11: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● Ges.: Pixelspezifische Anzahl an Photonen● Lichtstrom/Pixel= Leuchtdichte * Raumwinkel *

Empfängerfläche

Page 12: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● Farbiger Lichtstrom/Pixel aus Lichtstrom und Leuchdichte des Pixels sowie Leuchtdichte der einzelnen Kanäle

● Skalieren der Pixel-Farbe durch Photonenanzahl auf Photonen-Farbe

Page 13: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● Richtung entlang z˜-Achse● Achsen x˜, y˜ in Tangentialebene an Einheitskugel

Page 14: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● Position● Energie● Herkunftsrichtung● kd-Tree-Flag

Page 15: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● Projektion der Szene aus Sicht des beleuchtenden Pixels

● Rückprojektion der Photonen auf BS des Objekts

Page 16: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● “Zielen” des Photons an tatsächlicher Pixelposition auf Objektzentrum

● Verteilen der Photonen über gleichverteilten Wert

● Simulation eines entfernten directional Lights

Page 17: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS

3. Photon Scattering

4. Kd-Tree

5. Rendering

● Zu verhindern: Direktes Treffen realer Objekte● Vorraussetzung: keine realen Objekte in der BS● Projektion des Kreispunktes p auf die BS

Page 18: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

Photon Emission Photon Mapping

1. Einleitung

2. Photon Emission2.1. HDRI-Environment2.1.1. LatLong-Mapping2.1.2. Beleuchtung2.1.3. Photonenfarbe2.1.4. Photonenkoordinaten2.1.5. Photon-Datenstruktur2.2. Projektion der BS2.2.1. Verteilung auf Scheibe2.2.2. Rückprojektion auf BS2.3. Klassendiagramm

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Emission

Emission

Photon Lighting

Projection

BSProjection BackProjection

float x,y,z; char p[4]; char theta, phi; short flag;

Photon *ph; HDRI env; BVH bs;

BVH bs; Photon *ph;

BVH bs; Photon *ph;

Page 19: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon MappingPhoton Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Scattering

Scattering:

Nach der Emission werden die Photonen durch die Szene geschickt. --> Photonenpfade

Wenn ein Photon auf ein Objekt trifft, kann es reflektieren, absorbieren, oder transmittieren. --> Verwendung von Russian Roulette

Page 20: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Scattering

Photonenpfade:

Photonen werden gleichverteilt von der 'Kreisscheibe' in Richtung der Bounding Sphere geschickt

real virtuell

Vorsicht vor eventuellen Schnittpunkten mit realer Szene, bevor Photon auf Bounding Sphere trifft

Page 21: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Scattering

Photonenpfade (1.Schnittpunkt):

- Photon trifft auf virtuelles Objekt:- Objekt hat diffuse Oberfläche:

- Photon speichern- Zufälliges Photon weiterverfolgen- Schattenphoton speichern

- Objekt hat spekulare Oberfläche:- Photon nicht speichern- reflektiertes/gebrochenes Photon weiterverfolgen (Fresnel Reflexion)- Schattenphoton speichern

Page 22: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Scattering

Photonenpfade:

Schattenphotonen:Wenn ein Photon auf ein virtuelles Objekt trifft, wirdberechnet, wo es auftreffen würde, wenn das virtuelleObjekt nicht da wäre. Der negative Lichtstrom wird für diese Stelle gespeichert.

real virtuell

Page 23: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Scattering

Photonenpfade (1.Schnittpunkt):

- Photon trifft auf reales Objekt:- Photon wird verworfen

- Photon trifft auf gar kein Objekt:- Photon wird verworfen

Page 24: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Scattering

Photonenpfade nach dem 1. Schnittpunkt:- Photon trifft auf virtuelles Objekt:

- Diffuse Oberfläche:- Photon speichern- Strahl weiterverfolgen

- Spekulare Oberfläche:- Reflektieren oder transmittieren- Strahl weiterverfolgen

- Photon trifft auf gar kein Objekt:- Photon wird ignoriert

- Photon trifft auf reales Objekt:- Photon speichern- Color Bleeding berücksichtigen

Page 25: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

Russisches Roulette

● Stochastische Technik● Entscheidung, ob ein Photon diffus oder

spekular reflektiert oder absorbiert wird● Nur „wichtige“ Photonen werden

weitergeleitet● Dadurch: Alle Photonen tragen ungefähr den

gleichen Anteil vom Lichtstrom

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Scattering

Page 26: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

Zunächst für monochromatisches Licht:● Gegeben: Oberfläche mit sowohl diffuser als

auch spekularer Reflexion● Ob ein Photon nun diffus oder spekular

reflektiert oder absorbiert wird, hängt von den Materialeigenschaften ab:

● Diffuser Reflexionskoeffizient: ● Spekularer Reflexionskoeffizient:

Photon Scattering

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

d

s

Page 27: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

Trifft ein Photon auf eine Oberfläche, so verwenden wir eine gleichmäßig verteilte Zufallsvariable und treffen so die Entscheidung über die Art der Reflexion:

diffuse Reflexion

spekulare

Reflexion

Absorption

Photon Scattering

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

0,1

0, d

d , s d

s d ,1

Page 28: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

Farbiges Licht:● Wahrscheinlichkeit für Reflexion wird z.B.

anhängig von der totalen reflektierten Energie berechnet

● Wahrscheinlichkeit für diffuse Reflexion

● Mit = als Reflexionskoeffizient für den roten Farbkanal usw.

● Die durchschnittliche Wahrscheinlichkeit für spekulare Reflexion kann analog berechnet werden

Photon Scattering

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering d , avgd , r d , g d ,b

3d , r

Page 29: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

● Wahrscheinlichkeit für Absorption:

Entscheidung wird getroffen über:

diffuse Reflexion

spekulare Reflexion

Absorption

Photon Scattering

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

a , avg 1 d , avg s , avg

0, d , avg

d ,avg , s , avg d , avg

s ,avg d , avg ,1

Page 30: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

● Die Energie des reflektierten Photons muss jetzt noch skaliert werden:

● Bei spekularer Reflexion erhalten wir:

● Wobei die Energie des reflektierten Photons und die Energie des eintreffenden Photons ist

Photon Scattering

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

s , r i ,r s ,r s , avg

s , g i , g s , g s , avg

s , b i , b s ,b s , avg

s , r , s , g , s ,b

i ,r , i , g , i , b

Page 31: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Photon Scattering

Klassendiagramm:

Page 32: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon MappingPhoton Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Kd-Tree

PMkdTreePMkdTree(PhotonMap: array)search(x: int, d²: int): heap hgetRadianceEstimateAt(x: int, w: vector): LrgetfilteredREAt(x: int, w: vector): Lrf

PhotonMapm_Photons: Photon*

Klassendiagramm:

Page 33: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon MappingPhoton Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Kd-Tree

Radiance Estimate:

• Berechnung der reflektierten Leuchtdichte an Schnittpunkt x• Zu Punkt x werden in Radius r die maximal n nächsten Photonen gesucht• Durch Aufspannung einer Kugel können evtl. in Ecken und an Kanten Fehler auftreten Verwendung eines Filters

Page 34: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4.. Kd-Tree

5. Rendering

Rendering

Klassendiagramme:

Page 35: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4.. Kd-Tree

5. Rendering

Rendering

Klassendiagramme:

Page 36: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Rendering● Erweiterung des Raytracers● überschreiben der entsprechenden

Methoden– Raytracer::renderToFile( scene : Scene*,

filename : char*)– Raytracer::trace(ray : const Ray&, depth :

int)– Raytracer::shade(hit : Intersection&,

depth int)● radiance estimate aus kd-Tree

Photon Mapping

Page 37: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping● Für jedes Pixel Strahl aus Kameraursprung

und Pixel bilden und weiterverfolgen1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Rendering Photon Mapping

realreal

Bildschirmpixel

virtuell

• Fallunterscheidung je nach Schnittpunkt

Page 38: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon MappingReal:

– Radiance Estimate auf Pixel von Bild aufrechnen

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Rendering Photon Mapping

realvirtuell

real

Page 39: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Rendering

realvirtuell

real

Virtuell: Diffus – Radiance Estimate darstellen

Photon Mapping

Page 40: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4. Kd-Tree

5. Rendering

Rendering Photon Mapping

realreal

virtuell

Virtuell: Spiegelnd/Transparent– Rekursive Strahlverfolgung bis diffuses

Objekt oder maximale Rekursionstiefe:● Kein Schnittpunkt: Pixel aus EnvMap

darstellen● Real: Radiance Estimate Foto Pixel

aufrechenen und Ergebins darstellen● Virtuell: Radiance Estimate darstellen

Page 41: Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon

Photon Mapping Photon Mapping

1. Einleitung

2. Photon Emission

3. Photon Scattering

4.. Kd-Tree

5. Rendering

Rendering

Superklasse: