94
Fachbereich 4: Informatik Selektives spektrales High-Quality Photon-Splatting Diplomarbeit zur Erlangung des Grades einer Diplom-Informatikerin im Studiengang Computervisualistik vorgelegt von Nina Damasky Erstgutachter: Prof. Dr.-Ing. Stefan Müller (Institut für Computervisualistik, AG Computergraphik) Zweitgutachter: Dipl. Inf. Niklas Henrich (Institut für Computervisualistik, AG Computergraphik) Koblenz, September 2010

Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Fachbereich 4: Informatik

Selektives spektrales High-QualityPhoton-Splatting

Diplomarbeitzur Erlangung des Grades einer Diplom-Informatikerin

im Studiengang Computervisualistik

vorgelegt von

Nina Damasky

Erstgutachter: Prof. Dr.-Ing. Stefan Müller(Institut für Computervisualistik, AG Computergraphik)

Zweitgutachter: Dipl. Inf. Niklas Henrich(Institut für Computervisualistik, AG Computergraphik)

Koblenz, September 2010

Page 2: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Erklärung

Ich versichere, dass ich die vorliegende Arbeit selbständig verfasst und kei-ne anderen als die angegebenen Quellen und Hilfsmittel benutzt habe.

Ja Nein

Mit der Einstellung der Arbeit in die Bibliothek bin ich einverstanden.

Der Veröffentlichung dieser Arbeit im Internet stimme ich zu.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .(Ort, Datum) (Unterschrift)

I

Page 3: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Danksagung—————————————————————————————————

Ich danke Prof. Dr. Stefan Müller für die Erstbetreuung meiner Diplom-arbeit und die begeisternde Einführung in die photorealistische Compu-tergraphik.

Ein großes Danke geht an meinen Betreuer Niklas Henrich für das ehrli-che Interesse an meiner Arbeit und meinen Experimenten, das Gegenlesendieser Ausarbeitung und dass seine Tür immer für mich offen stand.

Esther Leibfried danke ich für das Korrekturlesen und den durch sie ge-wonnenen romantischen Blickwinkel auf den Vergleich zwischen Weltpo-sition eines Photons und Weltkoordinaten einer Szene.

Jan Hermes möchte ich für die gemeinsamen Studienjahre, die Verleihungdes Dr. glor. univers (doctor rerum peccaminum gloriosum ad linea univer-sa) und all die alltagserhellenden Wetten danken.

Darüber hinaus bedanke ich mich bei allen, die in den letzten zwölf Mona-ten bei mir waren.

II

Page 4: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Inhaltsverzeichnis

1 Einleitung 11.1 Globale Beleuchtung . . . . . . . . . . . . . . . . . . . 21.2 Motivation und Ziel . . . . . . . . . . . . . . . . . . . . 3

2 Theorie des Lichts 52.1 Lichtmodelle . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.1 Quantenoptik . . . . . . . . . . . . . . . . . . . . . . 52.1.2 Wellenmodell . . . . . . . . . . . . . . . . . . . . . . 62.1.3 Geometrische Optik . . . . . . . . . . . . . . . . . . 6

2.2 Radiometrie und Photometrie . . . . . . . . . . . . 72.2.1 Größen . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2.2 V (λ)-Kurve . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3 BRDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3.1 Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.4 Rendering-Equation . . . . . . . . . . . . . . . . . . . . 12

3 Stochastik 133.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2 Inverse Verteilungsfunktions-Methode . . . . . 143.3 Monte-Carlo-Integration . . . . . . . . . . . . . . . . 15

4 Photometrische Konsistenz 16

5 Related Work 185.1 Raytracing . . . . . . . . . . . . . . . . . . . . . . . . . . . 185.2 Photon Mapping . . . . . . . . . . . . . . . . . . . . . . 19

5.2.1 Das Photon . . . . . . . . . . . . . . . . . . . . . . . . 195.2.2 Photon-Tracing . . . . . . . . . . . . . . . . . . . . . 195.2.3 Radiance-Estimate . . . . . . . . . . . . . . . . . . . 21

5.3 Photon Splatting . . . . . . . . . . . . . . . . . . . . . . 225.4 Zusammenspiel . . . . . . . . . . . . . . . . . . . . . . . 23

6 Technische Hilfsmittel 246.1 PB und AUGENBLICK . . . . . . . . . . . . . . . . . 246.2 OpenGL und GLSL . . . . . . . . . . . . . . . . . . . . 24

III

Page 5: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7 Selektives Photon Splatting 257.1 Photon Splatting . . . . . . . . . . . . . . . . . . . . . . 257.2 Analyse der Fehlerbereiche . . . . . . . . . . . . . . 27

7.2.1 Fehler durch perspektivische Projektion . . . . . 277.2.2 Unterschätzung und Überschätzung der Bestrah-

lungsstärke . . . . . . . . . . . . . . . . . . . . . . . . 307.2.3 Unschärfe . . . . . . . . . . . . . . . . . . . . . . . . . 32

7.3 Entwurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347.4 Implementierung . . . . . . . . . . . . . . . . . . . . . . 35

7.4.1 Zeichnen der Splats . . . . . . . . . . . . . . . . . . 357.4.2 Analyse der Fehlerbereiche und Maskierung . . 387.4.3 Auswertung der Strahldichte mittels Photon Map-

ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397.4.4 Zusammenführen der Komponenten . . . . . . . 39

7.5 Ergebnisse Selektives Photon Splatting . . . . . 407.5.1 Geschwindigkeit . . . . . . . . . . . . . . . . . . . . 407.5.2 Qualität . . . . . . . . . . . . . . . . . . . . . . . . . . 46

7.6 Bewertung . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

8 Adaptives Photon Splatting 518.1 Entwurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518.2 Implementierung . . . . . . . . . . . . . . . . . . . . . . 598.3 Ergebnisse Adaptives Photon Splatting . . . . . 60

8.3.1 Geschwindigkeit . . . . . . . . . . . . . . . . . . . . 618.3.2 Qualität . . . . . . . . . . . . . . . . . . . . . . . . . . 63

8.4 Bewertung . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

9 Caustic Gimmicks 729.1 Sharpness . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729.2 Gimmick . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749.3 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . 769.4 Implementierung . . . . . . . . . . . . . . . . . . . . . . 779.5 Ergebnisse Caustic Gimmicks . . . . . . . . . . . . 77

9.5.1 Sharpness . . . . . . . . . . . . . . . . . . . . . . . . . 779.5.2 Gimmick . . . . . . . . . . . . . . . . . . . . . . . . . 79

9.6 Bewertung . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

10 Zusammenfassung 83

11 Future Work 83

IV

Page 6: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

12 Literatur 85

V

Page 7: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

1 Einleitung—————————————————————————————————Die Computergraphik als Teilgebiet der Informatik befasst sich mit der Er-

zeugung virtueller Welten und kommt in unzähligen Gebieten der realenWelt zum Einsatz. In Filmen beispielsweise lassen sich immer mehr com-putergenerierte Effekte finden, Flugsimulatoren ermöglichen es Piloten, fürdie Praxis zu trainieren und in der Industrie lassen sich virtuelle Modelleerstellen, die der Entwicklung des realen Produktes dienen.

Die Synthese computergenerierter Bilder erfolgt hierbei durch Model-lierung der virtuellen Welt mittels 3-dimensionaler Daten, die gemeinsammit Materialeigenschaften wie etwa der Farbe eines Gegenstandes die Aus-gangsbasis für den Prozess der Abbildung darstellen, dem Rendern. Dahin-ter verbirgt sich eine lange Geschichte der Erforschung der realen Welt undder Entwicklung von Verfahren zur Umsetzung der gewonnenen Kenntnis-se durch den Computer. Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung auf eine 2-dimensionaleBildebene. [6][13]

Ein Gebiet der Computergraphik ist die globale Beleuchtung, deren Ziel esist, unter Verwendung des bisherigen Wissens über Licht und den zur Ver-fügung stehenden technischen Möglichkeiten eine möglichst naturgetreueVerteilung von Licht zu simulieren. Hierbei helfen Theorien der Physik undder Physiologie bei der Beschreibung der Lichtquellen und Theorien derOptik (als Teilgebiet der Physik) bei der Verteilung des Lichts.

Die Geschichte der Optik beginnt bereits in der Antike: 300 v. Chr. etwabeschrieb Euklid in Kapaoptrik das Reflexionsgesetz und im Laufe der Jahr-hunderte folgten unzählige weitere Entdeckungen. Über die fresnelschenFormeln von Augustin Jean Fresnel beispielsweise lässt sich der Reflexions-grad von elektromagnetischen Wellen, die auf eine Oberfläche treffen, be-schreiben [11]. Sie können in der Computergraphik verwendet werden, umden Anteil des reflektierten Lichts zu bestimmen [6].

Daneben hat die Malerei Einfluss auf die Computergraphik: Leonardoda Vinci etwa widmete sich in seinem Buch von der Malerei ausgiebig demThema Licht und führte Begriffe wie Körperschatten (ombra primitiva) undSchlagschatten (ombra derivitive) ein, die heute in der Computergraphik ver-wendet werden. Um 1600 gelang es Caravaggio erstmals, die Verteilungvon Licht und sich daraus ergebende Schattenbereiche derart realistisch zumodellieren, dass sich alles Licht einer Szene einer konkreten Lichtquellezuordnen lässt. Dem folgte eine gesamte Epoche des Barocks, in der sichausgiebig dem Spiel mit Licht gewidmet wurde. [17][18][28]

Mit dem Computer als neues Werkzeug fließen nun die Bereiche ”Nach-ahmung der vom Auge wahrgenommenen Welt” der Malerei und ”theore-tische Erkenntnisse über die Natur von Licht und Materie” der Physik weit

1

Page 8: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

mehr zusammen, als sie es bereits zuvor getan hatten. Durch immer leis-tungsfähigere Computer lassen sich zunehmend mehr Theorien über Lichtund Materie einsetzen, um immer realistischere Abbilder der Natur zu er-zeugen (photorealistic Rendering) oder bewusst ignorieren, um neue Infor-mationen zu gewinnen (non-photorealistic Rendering).

Der Beginn der Computergraphik wird oft auf das Jahr 1963 datiert,in dem Ivan Sutherland das Programm SketchPad vorstellte, mit dem esmöglich war, einfache geometrische Formen auf einen Bildschirm zu zeich-nen. Es wurden erste Modelle zur Verteilung von Licht entwickelt (z.B. dasPhong-Beleuchtungsmodell von Bui Tui Phong) und Wege gefunden, Objektezu texturieren. Die ersten Schritte in Richtung globale Beleuchtung könnenmit der Entwicklung des Raytracings und Radiosity-Verfahren verbundenwerden. Ein Meilenstein stellt die Veröffentlichung der Rendering-Equationim Jahr 1986 durch James Kajiya dar [16], über die sich das Gleichgewichtdes Lichts innerhalb einer virtuellen Szene zu einem bestimmten Zeitpunktbeschreiben lässt. [6]

1.1 Globale Beleuchtung—————————————————————————————————Erste Beleuchtungsalgorithmen berücksichtigten lediglich den Weg des Lichtsvon der Lichtquelle über eine reflektierende Oberfläche in Richtung Be-trachterposition. In diesem Fall spricht man von direktem Licht oder lokalerBeleuchtung. Zum Bestimmen des reflektierten Lichts ist eine mathemati-sche Beschreibung der Wechselwirkung von einfallendem Licht und Mate-rie notwendig – dies geschieht über die BRDF (Bidirectional Reflectance Dis-tribution Function). Hierzu wurden verschiedene Modelle entwickelt, mitdenen sich das Abstrahlverhalten verschiedener Materialien annähernd si-mulieren lässt.

Für die Erzeugung photorealistischer Bilder ist jedoch neben einer phy-sikalisch fundierten Beschreibung der Wechselwirkung von Licht und Ma-terie die ebenfalls physikalisch fundierte Verteilung des Lichts nötig (vgl.[6]). Licht hat die Eigenschaft, sobald es auf eine Oberfläche trifft, abhän-gig von deren physikalischer Beschaffenheit in verschiedene Richtungenreflektiert, transmittiert oder absorbiert zu werden. Die Farbe eines Gegen-standes ist also die Summe von direktem Licht, Materialeigenschaft undaus der Umgebung durch Reflexion indirekt empfangenem Licht. Die Be-stimmung des Lichts entspricht der Bestimmung des Gleichgewichts vonLicht und somit Energie, deren theoretische Grundlage die Rendering-Equation[16] liefert. Das Lösen dieser Gleichung hat sich die globale Beleuchtungzum Ziel gemacht.

2

Page 9: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Verfahren, mit denen sich globale Beleuchtung simulieren lässt, sind z.B.stochastisches Raytracing, Radiosity oder Photon Mapping.

Beim stochastischen Raytracing wird das einfallende Licht mit Hilfe derMonte-Carlo-Integration bestimmt, beim Radiosity findet der Austauschdes Lichts über finite Elemente statt und beim Photon Mapping werdenPhotonen als Energieträger ebenfalls mit Hilfe der Stochastik von der Licht-quelle aus in der Szene verteilt. [6]

1.2 Motivation und Ziel—————————————————————————————————Die Beschreibung von Licht bzw. Farbe kann in der Computergraphik überverschiedene Modelle geschehen. Meist wird das RGB-Farbmodell verwen-det, da hierüber die Ausgabe auf dem Bildschirm erfolgt. Den Ansprü-chen des photorealistischen Renderings genügt dies jedoch nicht: Einerseitskann ein und derselbe RGB-Wert durch eine fehlende Normierung auf un-terschiedlichen Ausgabemedien zu leicht unterschiedlichen Farb- und Hel-ligkeitswerten führen, andererseits stellt die Beschreibung von Licht durchdrei Primärfarben eine starke und verfälschende Vereinfachung dar: Na-türliches Licht setzt sich aus unzähligen Wellenlängen verschiedener Fre-quenzen zusammen – für eine photorealistische Simulation von Licht mussdies berücksichtigt werden (photometrische Konsistenz). [20]

Das Bestimmen des Gleichgewichts des Lichts hingegen erfordert das Ver-arbeiten einer großen Menge an Daten und geschieht selten in Echtzeit,weshalb der Beschleunigung der Berechnungen viel Aufmerksamkeit ge-widmet wird. Eine viel versprechende und häufig eingesetzte Möglichkeitist es, Berechnungen auf die GPU (Graphics Processing Unit) auszulagern:Seit wenigen Jahren sind Teile der zuvor fixen Grafikpipeline, realisiertdurch die GPU, durch Vertex-, Geometry- und Fragment-Shader frei program-mierbar. Gleichzeitig steigert sich die Leistung der Grafikkarten von Gene-ration zu Generation weit mehr, als bei der CPU (Central Processing Unit),weshalb die GPU schon heute in vielen anderen Bereichen als nur der Syn-these von Bildern zum Einsatz kommt (GPGPU) [26].

Für die Erzeugung photorealistischer Bilder existieren bereits verschiedeneVerfahren, von denen alle ihre Stärken und Schwächen haben. Daher kom-biniert man häufig Verfahren, um möglichst schnell möglichst realistischeBilder erzeugen zu können. Raytracing wird in der Regel verwendet, umdirektes Licht der ursprünglichen Lichtquelle sowie Spiegelungen darzu-stellen und Photon Mapping kann verwendet werden, um indirektes Lichtdarzustellen, das sich durch mehrfache Reflexion ergibt. Ein dem PhotonMapping verwandtes Verfahren ist das Photon Splatting, das sich sehr ein-

3

Page 10: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

fach und schnell durch die GPU realisieren lässt, in manchen Bildbereichenjedoch zu einer sichtbar fehlerhaften Bestimmung des Lichts führt.

Ziel dieser Ausarbeitung ist es, ein GPU-basiertes Photon Splatting um-zusetzen und in ein existierendes CPU-basiertes System zur photometrischkonsistenten Bildsynthese zu integrieren, das wiederum auf Raytracing undPhoton Mapping basiert, um dadurch ohne Qualitätsverlust einen Perfomance-Vorteil zu erlangen.

4

Page 11: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

2 Theorie des Lichts—————————————————————————————————Dieses Kapitel liefert einen Einblick in die physikalische Beschreibung vonLicht, dessen Wirkung auf den Menschen und die daraus resultierende ma-thematische Grundlage zur Berechnung von Licht durch den Computer.

Zuerst werden im Kapitel Lichtmodelle die drei Modelle der Optik zumBeschreiben verschiedener Phänomene des Lichts vorgestellt. Dem folgtdas Kapitel Radiometrie und Photometrie, das sich mit der Messung von Lichtund dessen Wirkung auf den Menschen befasst. Einsatz finden die dort be-schriebenen radiometrischen und photometrischen Größen in der BRDF(Bidirektionalen Reflektanzverteilungsfunktion), mittels der sich die Abstrahl-charakteristik eines Materials, also die Reaktion eines Materials auf einfal-lendes Licht, beschreiben lässt. Die BRDF wiederum ist Teil der Rendering-Equation, mit deren Hilfe sich das reflektierte Licht eines Punktes der vir-tuellen Szene bestimmen lässt.

Details aus Perspektive der Physik sind in [8] und [11] zu finden, aus Per-spektive der Computergraphik in [6] und [5] und aus Perspektive der Psy-chophysik in [19].

2.1 Lichtmodelle—————————————————————————————————In der Optik gibt es drei Modelle zur Beschreibung von Licht: Das Modellder Quantenoptik ist das detaillierteste und umfasst sämtliche Theorienüber Eigenschaften des Lichts. Das Wellenmodell und das Modell der geo-metrischen Optik stellen Vereinfachungen dar, die jedoch zur Beschreibungeiniger Phänomen ausreichend sind. Vgl. [6, 11, 19].

2.1.1 Quantenoptik

—————————————————————————————————Das Verhalten von Licht ist sehr komplex und bis heute noch nicht vollendsentschlüsselt. Nachdem sich lange Zeit die Teilchentheorie und die Wellen-theorie entgegenstanden, nimmt man heute an, dass Licht sowohl aus Teil-chen als auch aus Wellen besteht und sich einige Phänomene durch denTeilchencharakter und einige durch den Wellencharakter beschreiben las-sen.

Das umfassendste Modell der Optik zur Beschreibung von Licht liefertdie Quantenoptik, die eben diesen Welle-Teilchen-Dualismus berücksich-tigt. Mittels dieses Modells lassen sich Phänomene auf submikroskopischerEbene beschreiben. In der Computergraphik wird es in der Regel jedochnicht verwendet, da es zu detailliert ist.

5

Page 12: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

2.1.2 Wellenmodell

—————————————————————————————————Das Wellenmodell basiert auf den Maxwellschen Gleichungen und ist eineVereinfachung des Quantenmodells, da es den Teilchencharakter des Lichtsunberücksichtigt lässt. Mit diesem Modell lassen sich Phänomene wie Beu-gung von Licht, Interferenzen oder Polarisation beschreiben. Wie auch dasModell der Quantenoptik wird das Wellenmodell in der Computergraphikin der Regel nicht eingesetzt.

2.1.3 Geometrische Optik

—————————————————————————————————Das Lichtmodell der geometrischen Optik ist das vereinfachendste allerhier vorgestellten Modelle und liefert in der Regel die Grundlage für Rendering-Verfahren in der Computergraphik.

In diesem Modell geht man davon aus, dass Licht emittiert, reflektiertund transmittiert wird. Phänomene wie Beugung, Interferenzen oder derEinfluss von z.B. Gravitation und Magnetfeldern werden vernachlässigt.

6

Page 13: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

2.2 Radiometrie und Photometrie—————————————————————————————————Die Radiometrie befasst sich mit der Messung von elektromagnetischerStrahlung und liefert die physikalische Basis für die Photometrie, die sichmit der Auswirkung von Licht, also elektromagnetischer Strahlung der Be-reiche 380nm bis 730nm, auf das menschliche Auge befasst. Hintergrundder Photometrie ist die Tatsache, dass das menschliche Auge unterschied-lich empfindlich auf verschiedene Wellenlängen reagiert. Eine grüne 50Watt-Lampe etwa erscheint dem Menschen trotz gleicher Leistung hellerals eine rote 50 Watt-Lampe. Um eine realistische Helligkeit und Farbigkeiteines Punktes bestimmen zu können, muss dies berücksichtigt werden. DieUmrechnung zwischen radiometrischen und photometrischen Werten ge-lingt über das Strahlungsäquivalent und die V (λ)-Kurve. Vgl. [6, 19].

2.2.1 Größen

—————————————————————————————————

Raumwinkel ω. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Der Raumwinkel ω ist das 3D-Pendant des Bogenmaß und ist definiertdurch das Verhältnis zwischen einer Fläche auf einer Kugel und dem Radi-us der Kugel im Quadrat:

ω =A

r2

Einheit ist der Steradiant r.

Unter Verwendung von Polarkoordinaten zur Beschreibung der Kugel lässtsich der Raumwinkel berechnen über:

dω =dA

r2=r2 · sinθ · dθ · dϕ

r2= sinθ · dθ · dϕ

ω =

∫Ω

sinθ · dθ · dϕ =

ϕ∫0

θ∫0

sinθ · dθ · dϕ

Dies entspricht einer Projektion der untersuchten Fläche auf die Oberflächeeiner Einheitskugel, wodurch sich der Raumwinkel ergibt.

7

Page 14: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Strahlungsmenge (Radiant Energy) Q. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Die radiometrische Größe Strahlungsmenge Q gibt an, wie viel Energie eineLichtquelle bis zu einem bestimmten Zeitpunkt verbraucht hat. Sie wirdgemessen in Joule oder Watt · s und wird für eine einzelne Wellenlängedurch das Produkt aus Anzahl der Photonen nλ und der Energie eines ein-zelnen Photons eλ berechnet:

Qλ = nλeλ

Die Gesamtenergie einer Mischstrahlungs-Lichtquelle errechnet sich durchIntegration über den entsprechenden Wellenlängenbereich:

Q =

λmax∫λmin

Qλ · dλ

Das photometrische Pendant ist die Lichtmenge (Luminos Energy) und wirdgemessen in Lumen · Sekunde (lm · s) .

Strahlungsfluss (Radiant Power / Flux) Φ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Die radiometrische Größe Strahlungsfluss Φ ist definiert durch

Φ =dQ

dt

und gibt an, wie viel Strahlungsmenge zu einem bestimmten Zeitpunktverbraucht wird und beschreibt somit die Leistung einer Lichtquelle zu ei-nem Zeitpunkt t. Er wird in Watt (W ) gemessen. Durch Regulierung desStrahlungsflusses lässt sich die Helligkeit einer Lichtquelle zum Zeitpunktt bestimmen.Das photometrische Pendant ist der Lichtstrom (Luminos Power) und wirdgemessen in Lumen (lm).

Strahlstärke (Radiant Intensity) I. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Die radiometrische Größe Strahlstärke I ist definiert durch

I =dΦ

Sie wird gemessen in Wsr und gibt an, wie viel Strahlungsfluss Φ in welche

Richtung ω abgegeben wird.

8

Page 15: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Das photometrische Pendant ist die Lichtstärke (Luminos Power) und wirdgemessen in Candela (cd). Über die Lichtstärke, genauer gesagt die Licht-stärkeverteilungsfunktion (LVK) wird die Abstrahlcharakteristik einer Licht-quelle beschrieben.

Spezifische Ausstrahlung (Radiosity) B. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Die radiometrische Größe Spezifische Ausstrahlung bzw. Radiosity B ist de-finiert durch

B =dΦ

dAs

Sie wird gemessen in Wm2 und beschreibt, wie viel Strahlungsfluss Φ eine

Senderfläche As verlässt. .

Das photometrische Pendant ist die Spezifische Lichtausstrahlung (Radiosi-ty) und wird gemessen in lm

m2 (Lumem/m2).

Bestrahlungsstärke (Irradiance) E. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Die radiometrische Größe Bestrahlungsstärke E ist definiert durch

E =dΦ

dAe

Sie wird gemessen in Wm2 und beschreibt, wie viel Strahlungsfluss Φ eine

Empfängerfläche Ae empfängt.

Das photometrische Pendant ist die Beleuchtungsstärke (Illuminance) undwird gemessen in lm

m2 (Lumem/m2).

9

Page 16: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Strahldichte (Radiance) L. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Die radiometrische Größe Strahldichte L ist definiert durch

L =dI

dA · cos Θ

und wird gemessen in Wm2 · sr

.

Das photometrische Pendant ist die Leuchtdichte (Luminance) und wird ge-messen in cd

m2 (Candela/m2). Sie beschreibt, wie hell eine Lichtquelle demMenschen erscheint. Die empfundene Helligkeit wird also bestimmt durchdie Lichtstärke I und der Größe der gesehenen Fläche, die angenähert wirddurch dA · cos Θ, wobei Θ der Winkel zwischen der Oberflächennormalender Lichtquelle und der Richtung zum Empfänger ist.

2.2.2 V (λ)-Kurve

—————————————————————————————————Die Umrechnung zwischen radiometrischen und photometrischen Größengelingt durch die V (λ)-Kurve. Sie entstand, indem Testpersonen mono-chrome Lichtquellen von gleicher Leistung gezeigt wurden und sie diesenach ihrer empfundenen Helligkeit bewerten sollten. Es stellte sich heraus,dass das menschliche Auge auf gelb-grün-Töne am empfindlichsten rea-giert und die Helligkeitsempfindung in Richtung Violett und Rot abnimmt.

Die Ermittlung des photometrischen Pendants einer über radiometri-sche Werte beschriebene Mischstrahlungs-Lichtquelle gelingt über:

Xphoto = Km ·730∫

380

Xradioλ · V (λ) · dλ

mit dem photometrischen Strahlungsäquivalent von λ = 555nm, das fest-gelegt wurde durch

Km = 683lm

W

10

Page 17: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

2.3 BRDF—————————————————————————————————Die Bidirektionale Reflektanzverteilungsfunktion (BRDF) beschreibt die Refle-xionseigenschaften von Materialien, mit deren Hilfe sich das Verhalten vonauftreffendem Licht bestimmen lässt [6, 33]. Die BRDF ist eine Funktion, diejedem Punkt einer Oberfläche und jedem möglichen Einfalls-Ausfallswinkel-Paar (d~ωi, d~ωo) den Verhältniswert ”ausgehende Leuchtdichte” zu ”einge-hender Beleuchtungsstärke” zuordnet:

fr(d~ωi, d~ωo) =dLo(d~ωo)

dEi(d~ωi)=

dLo(d~ωo)

Li(d~ωi) · cos θi · d~ωi

Bei gegebenem BRDF-Wert lässt sich damit ein Teil der ausgehenden Leucht-dichte abhängig von der eingehenden Beleuchtungsstärke eines Einfalls-winkels d~ωi berechnen:

dLo(d~ωo) = fr(d~ωi, d~ωo) · Li(d~ωi) · cos θi · d~ωi

2.3.1 Beispiele

—————————————————————————————————Diffuse OberflächenMan spricht von diffusem Abstrahlverhalten, wenn das einfallende Licht,unabhängig vom Einfallswinkel, gleichermaßen in die Hemisphäre reflek-tiert wird. In diesem Fall ist die BRDF definiert durch:

fr(d~ωi, d~ωo) = fr(d~ωo) =ρdπ

Der Reflexionsfaktor ρd bezeichnet den Anteil der Energie, der von einerOberfläche reflektiert wird und befindet sich i.d.R. im Bereich 0 6 ρd < 1.

Spiegelnde OberflächenBei perfekt spiegelnden Oberflächen wird das gesamte aus einer Richtungeinfallende Licht in eine einzige Richtung reflektiert. Ist die ausgehendeStrahldichte aus einer bestimmten Betrachterposition zu bestimmen, giltes also lediglich, die Strahldichte des korrespondierenden Spiegelwinkelseinzuholen:

Lo(θo, φo) = Li(θo, φo ± π)

11

Page 18: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Glänzende OberflächenGlänzende (glossy) Oberflächen setzen sich aus diffuser und spiegelnderReflexion zusammen. BRDFs derartiger Materialien können sehr komplexsein, weshalb man in der Regel mit vereinfachten Beleuchtungsmodellenwie z.B. dem Phong-Modell arbeitet. Das Phong-Modell bietet hierbei Pa-rameter zum Steuern des diffusen und des spiegelnden Anteils.

2.4 Rendering-Equation—————————————————————————————————Die Rendering-Equation [16] beschreibt das Gleichgewicht des Lichts in-nerhalb einer Szene und liefert die Grundlage aller globalen und lokalenBeleuchtungsmodelle. Aufgestellt von James Kajiya im Jahr 1986 stellt siedamit einen Meilenstein in der Computergraphik dar.

Beleuchtungsverfahren wie Raytracing und Radiosity wurden zwar vorder Rendering-Equation entwickelt, doch die Rendering-Equation verhalfbesonders den Raytracing-Techniken zu elementaren Fortschritten in Rich-tung Photorealismus. [6]

Lo(dAe, d~ωo) = Le(dAe, d~ωo) +

∫2π

fr(dAe, d~ωi, d~ωo) · Li(dAe, d~ωi) · cos θi · dωi

• Lo(dAe, d~ωo): Gesamte Strahldichte, die ein dA in Richtung ~dωo ver-lässt

• Le(dAe, d~ωo): ”Eigene Strahldichte” des dA’s in Richtung ~dωo

• fr(dAe, d~ωi, d~ωo): BRDF-Wert für dA in Richtung dωo aus Richtung~dωi

• Li(dAe, d~ωi)·cos θi ·dωi: Eingehende Bestrahlungsstärke dEi(dAe, d~ωi)

Die ausgehende Strahldichte Lo in eine spezielle Richtung d~ωo ergibt sichalso aus der Summe der ”eigenen” Strahldichte und aller in reflektierteStrahldichte umgerechnete eingehende Strahldichten Li.

12

Page 19: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

3 Stochastik—————————————————————————————————Zum Lösen bzw. Annähern der Rendering-Equation muss die infinitesima-le Theorie auf die finit modellierte 3D-Welt übertragen werden. Das kanndurch Werkzeuge der Stochastik geschehen.

Mittels der inversen Verteilungsfunktions-Methode lässt sich in diesem Kon-text eine finite Anzahl an zufälligen Richtungen bestimmen, für die die ein-fallende Strahldichte Li ausgewertet werden kann. Durch die Monte-Carlo-Integration lässt sich darauf aufbauend das infinitesimale Integral durchdiskrete Stichproben numerisch annähern. Vgl. [6].

3.1 Grundlagen—————————————————————————————————

• Diskrete Zufallsvariable XUnter einer diskreten Zufallsvariable versteht man ein mögliches dis-kretes Ergebnis eines Zufallsexperiments.

• Stetig verteilte Zufallsvariable X

Liefert ein Experiment keine diskreten Ergebnisse, wie beispielsweisebei der zufälligen Erzeugung von Winkeln der Fall, handelt es sichum eine stetig verteilte Zufallsvariable.

• Wahrscheinlichkeit einer diskreten ZufallsvariableJeder diskreten Zufallsvariable X lässt sich eine WahrscheinlichkeitP (X) zuordnen, mit der das Zufallsexperiment den entsprechendenWert annimmt.

• Dichtefunktion p(X)

Einer einzelnen stetig verteilten Zufallsvariable lässt sich keine kon-krete Wahrscheinlichkeit zuordnen. In diesem Fall verwendet mandie Dichtefunktion, welche die WS angibt, mit der das Zufallsexperi-ment eine Zufallsvariable in einem infinitesimalen Intervall annimmt.

• Verteilungsfunktion F (X)

Die Verteilungsfunktion beschreibt die Wahrscheinlichkeit, mit derein Experiment eine Zufallsvariable aus einem bestimmten Bereichannimmt. F (x) = P (X ≤ x) z.B. beschreibt die Wahrscheinlichkeit,dass die Zufallsvariable einen Wert zwischen −∞ und x annimmt

13

Page 20: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

• Erwartungswert E(X)

Unter dem Erwartungswert versteht man das arithmetische Mitteleiner Messreihe und beschreibt damit den Wert, der sich bei oftma-ligem Wiederholen des Experiments als Mittelwert ergibt. Für einestetig verteilte Zufallsvariable mit Dichte p gilt:

E(X) =

∞∫−∞

x · p(x) dx

• Gesetz der großen ZahlenDas Gesetz der großen Zahlen besagt, dass eine Messreihe zum Er-wartungswert konvergiert, sofern genügend Samples erzeugt wer-den

3.2 Inverse Verteilungsfunktions-Methode—————————————————————————————————Mittels der inversen Verteilungsfunktions-Methode lassen sich bei gegebe-ner Dichtefunktion p(x) und dadurch gegebener Verteilungsfunktion F (X)Zufallsvariablen von beliebiger Größe erzeugen. Hierbei interpretiert manden Wertebereich [0, 1] der Verteilungsfunktion F (X) als (0, 1)-verteilte Zu-fallsvariable:

ξ = F (X)

Durch Invertierung erhält man die gesuchte Funktion, die als Eingabe eine(0, 1)-verteilete Zufallsvariable erhält und eine Zufallsvariable von beliebi-ger Größe ausgibt:

X = F−1(ξ)

Zum numerischen Lösen der Rendering-Equation werden zwei zufälligeWinkel benötigt, die gemeinsam eine Richtung beschreiben:

F (θ, ϕ) =

ϕ∫ϕmin

θ∫θmin

p(θ′, ϕ′) dθ′dϕ′

Für die zwei (0, 1)-verteilten Zufallsvariablen gilt:

ξ1 = F (θ, ϕmax)

ξ2 =F (ξ1, ϕ)

F (ξ1, ϕmax)

Durch Invertierung gelangt man zur gewünschten Form [22].

14

Page 21: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

3.3 Monte-Carlo-Integration—————————————————————————————————Durch die Monte-Carlo-Integration lässt sich die Lösung eines Integrals beigegebener Dichtefunktion numerisch durch Samples annähern:

b∫a

f(x) ≈ 1

N

N∑i=1

f(xi)

p(xi)

Bei der Messreihe geht man davon aus, dass sie durch Erzeugung von ge-nügend Samples f(xi) gegen den Erwartungswert E(x) und dieser wie-derum gegen die korrekte Lösung konvergiert (Gesetz der großen Zahlen).

15

Page 22: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

4 Photometrische Konsistenz—————————————————————————————————Nach der Berechnung des Lichts bzw. der Farbe geschieht die Ausgabei.d.R. über den Bildschirm und damit über den RGB-Farbraum. Eine Mög-lichkeit ist es, die Berechnungen direkt im RGB-Farbraum durchzuführen.Zum Erzeugen natürlicher Bilder muss jedoch berücksichtigt werden, dasssich Licht in der Natur aus unzähligen verschiedenen Wellenlängen zu-sammensetzt und nicht aus drei Primärfarben. Für eine physikalisch fun-dierte Simulation von Licht ist also eine spektrale Beschreibung nötig. Hier-zu werden die Berechnungen mit spektralen Werten durchgeführt. Vor derAusgabe des Bildes erfolgt dann eine Konvertierung in den RGB-Farbraum.Die Brücke zwischen spektralen Gößen und RGB-Farbraum ist das CIEXYZ-Farbsystem. Vgl. [20].

Spektrale Größe(z.B. Strahlungsfluss Φ(λ), Strahldichte L(λ))

|Normspektralkurven

↓CIE XYZ-Farbraum

|Farbmatrix M

↓RGB-Farbraum

|Gammakorrektur

↓RGB-Farbraum mit Gammakorrektur

Abbildung 1: Photometrische Konsistenz

Spektrale Größe

Zu Beginn setzt sich das Licht aus verschiedenen Wellenlängen zusammen,deren Beitrag z.B. durch die radiometrische Größe Strahldichte beschriebenwerden kann.

CIE XYZ-Farbraum

Der nächste Schritt ist die Umrechnung in den XYZ-Farbraum mit Hilfe derdrei Normspektralkurven x(λ), y(λ) und z(λ):

X =

730nm∫380nm

L(λ) · x(λ) dλ

16

Page 23: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Y =

730nm∫380nm

L(λ) · y(λ) dλ

Z =

730nm∫380nm

L(λ) · z(λ) dλ

Sie resultieren aus Nutzertests, bei denen der Nutzer angewiesen war, dieFarbe des Lichts einer monochromen Lichtquelle mittels dreier ”Farbreg-ler” für die Primärfarben des CIE XYZ-Farbsystems so weit wie möglichanzunähern und beschreiben, wie empfindlich die drei verschiedenen Pho-torezeptoren des menschlichen Auges auf einzelne Wellenlängen reagieren.

Durch eine Gewichtung mit dem StrahlungsäquivalentKm = 683 lmW er-hält man das photometrische Pendant zu dem radiometrischen Wert, da al-le Normspektralkurven so skaliert wurden, dass y(λ) der V (λ)-Kurve ent-spricht.

RGB-Farbraum

Die Umrechnung vom XYZ-Farbraum in den RGB-Farbraum geschieht durchdie Farbmatrix M :RG

B

= M−1 ·

XYZ

=

Xr Xg Xb

Yr Yg YbZr Zg Zb

−1

·

XYZ

Jedes Ausgabemedium hat seine eigene Farbmatrix, weil die Leuchtkraftder einzelnen Farbkanäle von Ausgabemedium zu Ausgabemedium vari-iert. Die Farbmatrix wandelt die XYZ-Werte unter Berücksichtigung der Ei-genschaften des Ausgabemediums in RGB-Werte um, so dass das sichtbareErgebnis auf jedem Ausgabemedium gleich erscheint.

Gamma-Korrektur

In dunklen Bereichen kann das Auge Helligkeitsunterschiede differenzier-ter wahrnehmen als in hellen Bereichen. Dadurch führt ein linearer Zu-wachs von RGB-Werten nicht zu einem linearen Zuwachs der Leuchtdich-te. Die Gammakorrektur gleicht dieses Sehverhalten aus, indem sie dieRGB-Werte nicht linear wachsen lässt: kleine (dunkle) Werte werden ge-staucht und große werden gestreckt.

17

Page 24: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

5 Related Work—————————————————————————————————Da alle Techniken ihre Vor- und Nachteile haben, wird die Synthese pho-torealistischer Bilder häufig durch Kombination verschiedener Verfahrenrealisiert. In diesem Kapitel werden zuerst die eingesetzten Verfahren Ray-tracing, Photon Mapping und Photon Splatting vorgestellt und dann die Ein-satzgebiete im Rahmen dieser Ausarbeitung erläutert.

5.1 Raytracing—————————————————————————————————Heutzutage versteht man unter Raytracing Verfahren, mit denen es möglichist, globale Beleuchtung in 3D-Szenen zu simulieren [6]. Grundidee desRaytracings ist es, einen Strahl von der Betrachterposition durch die Bilde-bene in die virtuelle 3D-Szene zu erzeugen, dann den vordersten Schnitt-punkt mit der Geometrie zu bestimmen um daraufhin das reflektierte Lichtabhängig von Materialeigenschaft und einfallendem Licht des Punktes zuberechnen. Hierzu werden erneut abhängig vom Reflexionsverhalten desMaterials Strahlen generiert.

Ursprünglich ein Algorithmus zur Verdeckungsberechnung wurde Ray-tracing durch T. Whitted im Jahr 1980 um Rekursion erweitert [32]. Ne-ben dem Einführen stochastischer Mittel durch R. Cook et al. [3] folgtendiverse Weiterentwicklungen, wodurch Raytracing neben dem Radiosity-Verfahren zu einem der zwei großen globalen Beleuchtungsverfahren wur-de. In diesem Fall spricht man von Stochastischem Raytracing, Monte CarloRaytracing oder Path Tracing. Zum Lösen der Rendering-Equation wird dieMonte-Carlo-Integration eingesetzt:

Lo(dAe, d~ωo) ≈ Le(dAe, d~ωo) +1

N

N∑i=1

Li(dAe, d ~ωi) · fr(d~ωi, d ~ωo) · cos θip(d~ωi)

Obige Gleichung stellt hierbei lediglich das Grundprinzip dar und wirdso in der Praxis nicht eingesetzt, da beispielsweise die Wahrscheinlichkeitsehr gering ist, eine Lichtquelle zu treffen, was zu einer sehr ungenauenBestimmung des direkten Lichts führt. In [6] finden sich einige in der Praxisangewendete Techniken.

18

Page 25: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

5.2 Photon Mapping—————————————————————————————————Photon Mapping wurde von H. W. Jensen im Jahr 1995 vorgestellt [15]. DieBerechnung der Beleuchtung geschieht durch zwei Phasen: In der erstenPhase, dem Photon-Tracing, werden Photonen von der Lichtquelle aus inder Szene verteilt und in einer Photon-Map abgespeichert. In der zweitenPhase, dem Radiance-Estimate, werden die gespeicherten Photonen zur Be-stimmung der Strahldichte verwendet.

5.2.1 Das Photon

—————————————————————————————————Bei einem Photon handelt es sich um eine einfache Datenstruktur mit An-gaben zu Lichtstrom, Position und Einfallswinkel:

struct photonfloat position; Positionchar p[4]; Lichstromchar phi, theta; Einfalls-Winkelshort plane; support plane kd

5.2.2 Photon-Tracing

—————————————————————————————————Ziel der ersten Phase ist es, die Photonen in der Szene zu verteilen und diePhoton-Map zu erstellen. Dies geschieht durch die Photonen-Emission, beider die Photonen abhängig von den Lichtquelleneigenschaften in die Sze-ne gesendet werden, dem Photonen-Scattering, bei dem entschieden wird,was mit einem Photon geschieht, nachdem es eine Oberfläche getroffen hatund letztlich der Speicherung in der Photon-Map.

Photonen-Emission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Zuerst wird die Energie der Lichtquelle, genauer der Lichtstrom, auf al-le N Photonen aufgeteilt, wodurch jedes Photon den 1/N -ten Anteil desLichtstroms mit sich führt. Mittels Sampling wird die Richtung, in die einPhoton gesendet werden soll, bestimmt. Die Sampling-Strategie bestimmthierbei, wie viel Lichtstrom in welche Richtung gesendet wird und orien-tiert sich an der Lichtstärkeverteilungsfunktion (LVK).

19

Page 26: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Photonen-Scattering. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Sobald ein Photon auf eine Oberfläche trifft, wird anhand der Materialei-genschaft bestimmt, was mit dem Photon geschehen soll. Ein Photon kannhierbei diffus oder spiegelnd (transmittiert) weitergeleitet oder absorbiertwerden.

Per Russischem Roulette kann bestimmt werden, ob es sich um ein diffu-ses, spiegelndes oder absorbiertes Photon handelt. Hierzu wird eine Zu-fallszahl ξ zwischen 0 und 1 erzeugt und mit variablen Schwellwerten,durch die die Materialeigenschaft gesteuert werden kann, verglichen:

ξ ∈ [0, ρd] → führt zu diffuser Reflexionξ ∈ [ρd, ρd + ρs] → führt zu spiegelnder Reflexionξ ∈ [ρd + ρs, 1] → führt zu Absorption

Photon-Maps. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Eine Photon-Map ist eine Datenstruktur (in der Regel ein kd-Tree), welchedie auf der Geometrie zum Liegen gekommenen Photonen unter Berück-sichtigung der Position abspeichert. Sie wird verwendet, um Nachbarpho-tonen ausfindig zu machen, die zur Bestimmung der Strahldichte benötigtwerden (Radiance-Estimate).

Zur Verfügung stehen zwei verschiedene Photon-Maps: die Global-Mapund die Caustic-Map. Abhängig vom Weg, den ein Photon hinter sich hat,wird das Photon einer der beiden Maps hinzugefügt.

• Global-Map

In der Global-Map werden alle Photonen abgespeichert, die auf eindiffuses Material treffen, unabhängig davon, welchen Weg sie hintersich haben: L(S|D)?D (L=Lichtquelle, S=Spiegelung, D=Diffus).

• Caustic-Map

In der Caustic-Map hingegen werden nur Kaustik-Photonen abge-speichert – also Photonen, die den Weg LS+D durchlaufen haben.

Die Unterteilung in diffuse Photonen und Kaustik-Photonen wird vorge-nommen, weil diese unterschiedliche Eigenschaften haben, die bei der Dar-stellung berücksichtigt werden sollten.

20

Page 27: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

5.2.3 Radiance-Estimate

—————————————————————————————————Nachdem alle Photonen in der Szene verteilt wurden, gilt es, die reflektierteStrahldichte zu bestimmen:

Lr(dAe, d~ωo) =

∫Ω

fr(dAe, d~ωi, d~ωo) · Li(dAe, d~ωi) · cos θi · dωi

=

∫Ω

fr(dAe, d~ωi, d~ωo) ·d2Φi(dAe, d~ωi)

cos θ · dAi · dωi· cos θ · dωi

=

∫Ω

fr(dAe, d~ωi, d~ωo) ·d2Φi(dAe, d~ωi)

dAi

Für einen Punkt x führt eine Diskretisierung und Annäherung des einge-henden Lichtstroms durch Verwendung der n nächsten Photonen zu:

Lr(x, ωo) ≈n∑p=1

fr(x, ωp, ωo) ·∆Φp(x, ωp)

∆A

mit ωp = Einfallswinkel des Photons und ωo = Richtung des Empfängers.

Zum Bestimmen der n nächsten Photonen spannt man um den untersuch-ten Punkt x eine Kugel mit Radius r auf und vergrößert r so lange, bis nPhotonen in der Kugel enthalten sind. Unter der Annahme, dass die Flächeum x eben ist, ergibt sich damit

∆A = πr2

und somit

Lr(x, ωo) ≈1

πr2

n∑p=1

fr(x, ωp, ωo) ·∆Φp(x, ωp)

In der ursprünglichen CPU-basierten Umsetzung werden die Photonen fürden Radiance-Estimate innerhalb eines kd-Trees abgespeichert. Die Sucheinnerhalb des kd-Trees kann sehr lange dauern, weshalb auch hier Ver-fahren entwickelt wurden, Photon Mapping mit Hilfe der GPU zu reali-sieren. Erste Ansätze ermöglichten jedoch noch keine interaktiven Frame-raten [25], weshalb sich der Forschungsschwerpunkt zwischenzeitlich aufdie Darstellung einzelner Lichteffekte, insbesondere Kaustiken, verlagerte[12]. Interaktive Frameraten bei globaler Beleuchtung können auf Kostenphysikalischer Korrektheit erst seit kürzester Zeit erreicht werden [7].

21

Page 28: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

5.3 Photon Splatting—————————————————————————————————Beim Photon Splatting handelt es sich im Kern um die gleiche Idee wiebeim Photon Mapping: Es erfolgt eine Photon-Tracing-Phase, in der Pho-tonen abhängig von Geometrie, Material- und Lichtquelleneigenschaftenin der Szene verteilt werden und darauf aufbauend die Bestimmung derStrahldichte.

Zentraler Unterschied zwischen Photon Mapping und Photon Splat-ting ist der Ansatz zur Berechnung der Strahldichte: Laut [31] entsprichtdie Suche (Gathering) nach Photonen innerhalb der Nachbarschaft mit ei-nem Abstand kleiner r dem ”splatten” der Energie eines Photons auf dieOberfläche. Hierdurch lässt sich der Beitrag eines Photons unabhängig vonseiner Nachbarschaft bestimmen, wodurch die Bestimmung der gesamtenStrahldichte wesentlich schneller erfolgen kann. Problem bei diesem An-satz ist, dass keine Informationen über die Dichte der Photonen der Nach-barschaft vorliegen, ein adaptiver Radius diese aber benötigt. In den meis-ten Splatting-Ansätzen wurde daher eine Analyse der Dichte der Photonenintegriert.

In einem der ersten Ansätze wurden hierzu vier benachbarte Strah-len (die den Weg des Lichts repräsentieren) verwendet, um ein Polygonaufzuspannen, das den Splat ummantelt [2]. Die Dichte der Strahlen be-stimmt damit den Radius. Diverse Weiterentwicklungen zur Bestimmungder Strahldichte und zur Beschleunigung des Photon-Tracings erfolgten: In[14] etwa wird während des Photon-Tracings der Radius abhängig von derAnzahl der für den Strahl gefundenen Schnittpunkte mit der Geometriebestimmt. In [21] hingegen findet eine Korrektur des konstanten Radius ei-nes ersten Renderdurchlaufs durch Analyse der Nachbarpixel im Bildraumstatt und in [4] findet ebenfalls im Bildraum die Bestimmung des Radiusnach dem Photon-Tracing statt, indem die Intensität des Lichts eines Pixelsund der Abstand zur Kameraposition ausgewertet wird. Einen Überblicküber verschiedene Photon Splatting-Ansätze bis zum Jahr 2008 ist in [24]zu finden.

Auch mit Photon Splatting werden mittlerweile interaktive Framera-ten bei der Bestimmung indirekter Beleuchtung erreicht, dies geschieht je-doch, wie auch beim Photon Mapping, auf Kosten physikalischer Korrekt-heit [23].

22

Page 29: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

5.4 Zusammenspiel—————————————————————————————————Alle Bleuchtungsverfahren haben ihre Vor- und ihre Nachteile, weshalbman in der Praxis häufig mit einer Kombination aus verschiedenen Ver-fahren arbeitet.

Raytracing etwa eignet sich sehr gut für direktes Licht und Spiegelun-gen, wohingegen Kaustiken nicht einfach zu realisieren sind. Das hat denGrund, dass Raytracing das Licht entgegen der Ausbreitungsrichtung un-tersucht. Für Spiegelungen ist das der effizienteste Weg, da diese von derBetrachterposition abhängen. Bei Kaustiken hingegen ist nicht die Betrach-terposition ausschlaggebend, sondern der Weg von der Lichtquelle durchein transmittierendes oder spiegelndes Objekt hin zu einem diffus reflek-tierenden Material.

Photon Mapping simuliert den natürlichen Weg des Lichts, also von derLichtquelle durch die Szene und geht damit den entgegengesetzten Wegdes Raytracings. Dadurch lassen sich mit Photon Mapping z.B. Kaustikensehr effizient realisieren, für direktes Licht hingegen eignet sich PhotonMapping nur bedingt, da (um Unschärfe im Bild zu vermeiden) eine im-mens hohe Anzahl an Photonen nötig ist. In der Praxis wird Photon Map-ping daher als zusätzliches Verfahren eingesetzt, um die Strahldichte desindirekten Lichts zu bestimmen.

Das hier verwendete Photon Splatting hat die gleichen oben genanntenStärken und Schwächen wie das Photon Mapping. Unterscheiden tun siesich in der Genauigkeit der Bestimmung der Strahldichte und der dazu be-nötigten Zeit. Beim Photon Splatting geschieht die Berechnung wesentlichschneller, erfolgt dafür an manchen Stellen nicht so exakt.

23

Page 30: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

6 Technische Hilfsmittel—————————————————————————————————

6.1 PB und AUGENBLICK—————————————————————————————————Zum Realisieren des selektiven Photon Splattings standen zwei Frame-works zur Verfügung:

PB

PB wurde von der Arbeitsgruppe Computergraphik der Universität Ko-blenz zur Verfügung gestellt. Hierbei handelt es sich um ein System, mitdem sich über verschiedene Algorithmen photometrisch konsistente Bil-der erzeugen lassen. [1]

AUGENBLICK

AUGENBLICK1 wurde von Numenus GmbH zur Verfügung gestellt undist ein auf Raytracing basierendes System zur Bildsynthese.

6.2 OpenGL und GLSL—————————————————————————————————Als graphische Hilfsbibliothek wurde OpenGL (Open Graphics Library)3.0 gemeinsam mit der Shader-Sprache GLSL (OpenGL Shading Langua-ge) 1.3 eingesetzt.

1in der nachfolgenden Version: RenderGin

24

Page 31: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7 Selektives Photon Splatting—————————————————————————————————Ziel dieser Ausarbeitung ist es, ein Programm zu entwickeln, mit dem esmöglich ist, ein photometrisch konsistentes Bild zu erzeugen, dessen direk-tes Licht durch Raytracing und dessen indirektes Licht durch Photon Map-ping und Photon Splatting berechnet wurde. Hierbei ist darauf zu achten,dass es an den Schnittstellen nicht zu sichtbaren Artefakten kommt. EinEinsatz der in 5.2.3 bzw. 5.3 erwähnten Weiterentwicklungen von PhotonMapping bzw. Photon Splatting eignen sich für das selektive Photon Splat-ting nicht, da der Performance-Vorteil jeweils auf Kosten einer geringerenphysikalischen Korrektheit erfolgt.

Ausgangssituation ist eine durch PB und AUGENBLICK gegebene Imple-mentierung von Photon Mapping bzw. Raytracing. Da beim Photon Map-ping und Photon Splatting die zwei Teile Photon Tracing und RadianceEstimate getrennt voneinander realisert werden können, kann das Pho-ton Splatting die durch Photon Mapping verteilten Photonen verwenden.Demzufolge gilt es, die Rekonstruktion der Strahldichte durch Photon Splat-ting zu implementieren. Hierbei wurde sich für eine einfache Umsetzungmit konstantem Radius entschieden – Konsequenz daraus sind sichtbargroße Fehlerbereiche. Ziel ist es, die fehlerhaften Bildbereiche zu maskie-ren und dort die Strahldichte mittels Photon Mapping auszuwerten.

7.1 Photon Splatting—————————————————————————————————Im Rahmen dieser Ausarbeitung wird Photon Splatting verwendet, um dasindirekte Licht in Bildbereichen zu bestimmen, in denen ein konstanter Ra-dius zu keinem offensichtlichen Fehler bei der Bestimmung der Strahldich-te führt, um einen Performance-Vorteil zu erlangen. Daher wurde eine ein-fache bildbasierte Variante des Photon Splattings ohne adaptiven Radiusverwendet [12].

Hierzu wird den Photonen nach dem gegebenen Photon-Tracing einfester Radius r zugewiesen, mit dem die Splats im Bildraum gezeichnetwerden. Die Bestimmung der Bestrahlungsstärke für einen Splat X ge-schieht hierbei nach [21]:

E(X) =Φ

πr2

woraus sich für die gesamte Bestrahlungsstärke eines Pixels xij ergibt:

E(xij) =

n∑p=1

Φ

πr2= N

Φ

πr2

25

Page 32: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

mit N= Anzahl der Splats pro Pixel und Φ = Strahlungsfluss des Photons.

Um die Photonen wird ein Quadrat aufgespannt, dessen Seitenlänge min-destens so groß ist wie der Durchmesser des Splats:

Abbildung 2: Quadrat um Splat

Anhand der Weltposition des Photons und den Weltkoordinaten der Sze-ne wird für jedes Fragment des Quadrates entschieden, ob das Photon denentsprechenden Teil der Szene beleuchtet oder nicht. Hierzu wird der Ab-stand zwischen Koordinaten der Szene und des Photons bestimmt und –sofern dieser Wert kleiner ist als der Radius – die Strahldichte berechnet.Durch aktiviertes Alpha-Blending summieren sich alle Strahldichtewerteder Splats während dem Rendern auf:

Abbildung 3: Summe der Strahldichtewerte durch Alpha-Blending

26

Page 33: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.2 Analyse der Fehlerbereiche—————————————————————————————————Durch den (im Vergleich zum Radiance-Estimate des Photon Mappings)naiven Ansatz der im Rahmen dieser Ausarbeitung verwendeten Varian-te des Photon Splattings zur Bestimmung der Strahldichte ergeben sich anvier Stellen teils offensichtliche Fehler:

1. Unterschätzung der Bestrahlungsstärke durch die perspektivische Pro-jektion der Splats auf die Bildebene

2. Unterschätzung der Bestrahlungsstärke, wenn ein Splat einen merk-lich kleineren Bereich beleuchtet, als er groß ist

3. Überschätzung der Bestrahlungsstärke, wenn ein Splat einen merk-lich größeren Bereich beleuchtet, als er sollte

4. Unschärfe, wenn der Radius des Splats zu groß gewählt wurde

Ziel ist es in allen Fällen, eine Maske zu erstellen, mittels der sich die fehler-haften Bereiche des Bildes maskieren lassen, um dann an den entsprechen-den Stellen die Strahldichte mittels Photon Mapping auswerten zu können.

7.2.1 Fehler durch perspektivische Projektion

—————————————————————————————————Werden die Quadrate parallel zur Bildebene ausgerichtet und die Größedes Quadrats genau dem Splat angepasst, führt die Projektion der Splatsauf die Bildebene dazu, dass der Beleuchtungstest im Fragment-Shader fürzu wenige Pixel durchgeführt wird, was wiederum dazu führt, dass man-che Bildbereiche fälschlicherweise nicht beleuchtet werden:

Bildebene

Photon

Kamera

Testbereich durch Splat parallel zur

Bildebenekorrekter

Testbereich Ausrichtung der Oberfläche

Splat parallel zur Bildebene

Abbildung 4: Fehler durch perspektivische Projektion

27

Page 34: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Eine Möglichkeit ist es, einen Skalierungsparameter einzuführen. Dies bringtjedoch den Nachteil mit sich, dass durch die Skalierung der Beleuchtungs-test für zusätzlich unnötige Pixel durchgeführt wird und somit zu Gunstender Qualität länger dauert.

Da hier zur Erzeugung der Quadrate ein Geometry-Shader verwendetwird, lassen sich die Quadrate jedoch beliebig ausrichten, was zu dem imFolgenden erläuterten Lösungsansatz führte.

Lösungsansatz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Abbildung 4 ist zu entnehmen, dass der Splat idealerweise parallel zurOberfläche orientiert ist. Das entspricht einer Orientierung orthogonal zurNormalen der Oberfläche. Ein weiterer Vorteil dieser Orientierung ist, dassder Beleuchtungstest für wesentlich weniger Pixel durchgeführt werdenmuss, da die Quadrate die gleiche Orientierung haben wie die resultie-renden Splats, was zur gleichen perspektivischen Verkürzung (und damitVerkleinerung der Fläche) führt. Die untere Abbildung demonstriert einenFall:

parallel zur Bildebene parallel zur Oberfläche

Abbildung 5: Orientierung der Quadrate

Es ist zu sehen, dass der Test für eine wesentlich kleinere Fläche durchge-führt werden muss und trotz dem zum gleichen Ergebnis führt.

Zur Erzeugung des Quadrats wird die Normale der Oberfläche an der Po-sition des Photons ausgelesen und ein beliebiger orthogonaler Vektor be-stimmt. Mit Hilfe des Kreuzproduktes wird durch den neuen Vektor undder Normalen ein dritter Vektor errechnet, der damit orthogonal zum ers-ten Vektor ist:

vector1 vector2

n

Abbildung 6: Bestimmung der Eckpunkte

28

Page 35: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Über die zwei erzeugten Vektoren lassen sich dann durch eine vom Radi-us abhängige Skalierung die vier benötigten Punkte zum Aufspannen desQuadrates erzeugen.

Abbildung 7 zeigt die Unterschiede. Im Hintergrund ist die Textur mit demdirekten Licht zu sehen. Bei beiden Bildern wurde zur Verdeutlichung dieFarbe der Splats auf Weiß gestellt und Alpha-Blending abgestellt. Somitzeigen sie eine ”Schicht” weißer Splats. An den Stellen, an denen das di-rekte Licht zu sehen ist, wurde beim Rendern der Splats ein negativer Be-leuchtungstest durchgeführt:

(a) Bildebene (b) Oberfläche

Abbildung 7: Orientierung der Splats

29

Page 36: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.2.2 Unterschätzung und Überschätzung der Bestrahlungsstärke

—————————————————————————————————Die Bestrahlungsstärke eines Splats und darauf aufbauend die Strahldichtewird unter der Annahme berechnet, dass ein Splat eine Größe von πr2 hat.An Geometriekanten führt diese Annahme zu einer teils stark sichtbarenfalschen Bestimmung der Bestrahlungsstärke.

Beleuchtet ein Splat einen merklich kleineren Bereich als πr2, wird die Be-strahlungsstärke unterschätzt:

Abbildung 8: Unterschätzung der Bestrahlungsstärke

Für den Splat im Beispiel gilt also für die korrekte Bestrahlungsstärke E2

E1 =Φ

πr2→ E2 =

Φ

(πr2)/2=

Φ · 2πr2

Beleuchtet der Splat hingegen einen merklich größeren Bereich als πr2,wird die Bestrahlungsstärke überschätzt. Dies geschieht, wenn sich inner-halb der Kugel eine konkave oder konvexe Fläche befinden:

Abbildung 9: Überschätzung der Bestrahlungsstärke

In diesem Fall müsste also aus der Bestrahlungsstärke des Splats

E1 =Φ

πr2→ E2 =

Φ

(πr2) · x

werden.

30

Page 37: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Lösungsansatz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Die Fehlerbereiche Unterschätzung und Überschätzung lassen sich durchAuffinden von Kanten bestimmen. Dies kann mit Hilfe des Sobel-Operatorsund der Normalen der Geometrie geschehen [10]. Hierzu wird separat fürdie x-, y- und z-Koordinaten die horizontale und vertikale Ableitung be-

stimmt (Gx und Gy) und dann durch G =√G2x +G2

y zu einem richtungs-

unabhängigen Wert zusammengefasst. Überschreitet einer der drei Werteeinen zu Beginn festgelegten Schwellwert, handelt es sich um eine Kanteund das Pixel wird durch eine 1 maskiert.

1 2 1

0 0 0

-1 -2 -1

1 0 -1

2 0 -2

1 0 -1

GxGy

Abbildung 10: SobelOperator

Da die Größe des Fehlerbereichs von der Splat-Größe abhängt, werden dieKanten anschließend entprechend skaliert.

31

Page 38: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.2.3 Unschärfe

—————————————————————————————————Ein gleicher Radius für alle Splats führt in Bildbereichen mit hoher Photo-nendichte zu sichtbaren Fehlern bei der Bestimmung der Strahldichte, dadie Energie zu sehr entbündelt wird. Durch die Wahl eines sehr kleinenRadius lässt sich dieser Fehler minimieren, hat allerdings zur Folge, dasssehr viele Photonen erzeugt werden müssen, wenn das Bild in Bereichenmit geringer Photonendichte nicht verrauscht aussehen soll.

Beim Photon Mapping gibt es zwei Parameter zur Bestimmung des Ra-dius: der maximale Suchradius und die maximal einzubeziehenden Nach-barphotonen. Hierdurch sind weniger Photonen nötig, um das Bild in Be-reichen mit geringer Photonendichte rauschfrei erscheinen zu lassen, ohneauf Highlights verzichten zu müssen.

Die untere Abbildung zeigt einen Vergleich:

Photon Mapping Photon Splatting

Abbildung 11: Radien der Photonen

Beim Photon Mapping verkleinert sich der Radius abhängig von der Dich-te der Photonen der Nachbarschaft, beim Photon Splatting hingegen istder Radius konstant, was zu einer sichtbar fehlerhaften Entbündelung derEnergie führt.

Lösungsansatz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Dem im Folgenden vorgestellten Lösungsansatz ging folgende Überlegungvoraus:

In Bereichen, in denen sich maximal so viele Photonen befinden, wie esdie maximal einzubeziehenden Photonen des Photon Mappings festlegen,wird das Licht eines Photons auf den maximalen Radius verteilt und ent-spricht somit dem Splat des Photon Splattings. In Bereichen, in denen sichmehr Photonen befinden, wird der Radius entsprechend verkleinert, wasbeim Photon Splatting nicht geschieht.

32

Page 39: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Idee war es, beim Photon Splatting einen Parameter maxPhotons einzu-führen, der auf den gleichen Wert gesetzt wird, wie die maximal einzu-beziehenden Photonen beim Photon Mapping. In einem ersten Render-durchlauf werden die Splats mit dem maximalen Radius des Photon Map-pings gezeichnet. In die Ziel-Textur wird eine 1 für ”Splat beleuchtet Pixel”oder eine 0 für ”Splat beleuchtet Pixel nicht” eingetragen. Durch aktiviertesAlpha-Blending wird dadurch die Anzahl der Splats pro Pixel gezählt.

Zur Erstellung der Maske werden die Werte in der zuvor erstellten Tex-tur mit maxPhotons verglichen. Ist dieser Wert kleiner als die Anzahl derSplats, wird in der Textur das Pixel durch eine 1 maskiert.

33

Page 40: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.3 Entwurf—————————————————————————————————Beim selektiven Photon Splatting gilt es, drei Komponenten zusammenzu-führen: Das direkte Licht und das indirekte Licht, dargestellt durch PhotonMapping und Photon Splatting.

Raytracing

PhotonMappingPhotonSplatting

Abbildung 12: Komponenten

Das direkte Licht und das indirekte Licht des Photon Mappings lässt sichdurch die zur Verfügung gestellten Frameworks bestimmen. Daher gilt es,den Photon Splatting-Prozess zu implementieren und einen Weg zu entwi-ckeln, über den sich die drei Verfahren kombinieren lassen.

Die untere Abbildung zeigt den Ablauf des selektiven Photon Splatting:

Photon-Tracing

Auswertung der Radiance für Fehlerbereiche

mittes Photon-Mapping

Zeichnen der Splats

Maskieren der Splats Analyse der Fehlerbereiche

Direktes Licht undAnalyse der Szene

Zusammenführen vondirektem Licht und indirektem Licht

Abbildung 13: Selektives Photon Splatting

34

Page 41: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.4 Implementierung—————————————————————————————————Die Informationen über das direkte Licht und die Geometrie der Szenewurden in Arrays der Größe des Bildes abgelegt, die damit die Schnittstel-le zum Photon Splatting sind. Da Photon Mapping und Photon Splattingauf dem gleichen Photon-Tracing-Prozess aufbauen können, muss auch dasPhoton-Tracing nicht selbst implementiert werden – die Photonen könnendirekt über einen Vektor eingelesen werden.

Mit Ausnahme des letzten Schritts werden alle im Fragment-Shaderberechneten Werte per Offscreen-Rendering in Texturen geschrieben. Ei-ne Ausgabe auf dem Bildschirm geschieht erst im letzten Schritt, wenn alleKomponenten zusammengeführt wurden.

7.4.1 Zeichnen der Splats

—————————————————————————————————Zum Zeichnen der Splats werden die Photonen mittels VertexArrayObjectals Punkt-Primitive mit den zugehörigen Attributen an die GPU überge-ben. Innerhalb des Geometry-Shaders wird das den Splat umspannendeQuadrat erzeugt und im Fragment-Shader wird die Strahldichte bestimmt.Per Offscreen-Rendering werden die Werte in eine Textur gerendert.

Die Energie der Photonen wird durch 36 Strahlungsflusswerte beschrieben.Da eine Textur nur 4 Werte speichern kann, müssen die 36 zu berechnen-den Strahldichtewerte auf 9 Texturen aufgeteilt werden. Idealerweise er-folgt das Erstellen der 9 Texturen in einem Renderdurchlauf, um die Splatsnur ein Mal zeichnen zu müssen. Da die Anzahl der Color-Buffer jedochbegrenzt ist, wurde das Zeichnen der 9 Texturen auf drei Renderdurchläu-fe aufgeteilt, wobei in jedem Renderdurchlauf 3 Texturen erzeugt werden.

Zudem ist die Anzahl der Daten, die eine Grafikkarte im Speicher be-reithalten kann, begrenzt, was bedeutet, dass nicht alle Photonen gleich-zeitig an die GPU übergeben werden können. Daher wurde der Zeichen-prozess erneut unterteilt. Hierbei lässt sich variabel bestimmen, wie vielePhotonen in einer Runde übergeben werden. Abbildung 14 auf S. 36 zeigtden Zeichen-Prozess.

35

Page 42: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Alpha-Blending

for (i<3)

for (j<=rounds)

Vertex Array Object

drawQuad

glDrawArrays(GL_POINTS, 0, photonsToDrawPerRound)

if (distance(sceneWorldPosition,photonWorldPosition) <= Radius) compute 3x4 Radiance-Valueselse 0

store results in 3 Textures

Geometry Shader

Fragment Shader

Frame Buffer Object

Abbildung 14: Zeichnen der Splats

Zum Zeichnen der Splats erhält der Geometry-Shader die Weltkoordinatendes Photons und den Radius des Splats. Dann wird, wie in 7.1 beschrie-ben, ein Quadrat um das Photon parallel zur Oberfläche aufgespannt. ImFragment-Shader wird mit Hilfe der Weltkoordinaten des Photons und denWeltkoordinaten der Szene, die über eine Textur geliefert werden, für je-des Fragment geprüft, ob sich der untersuchte Bereich innerhalb des Ra-dius befindet oder nicht. Wird der Test positiv bewertet, werden pro Tex-tur vier Strahldichtewerte berechnet. Bei diffuser Oberfläche geschieht dies(beispielhaft für einen) für ein Pixel xij durch:

Lr(xij(λ)) =ρd(λ)

π· Φ(λ)

πr2

Die vier korrespondierenden Reflexionskoeffizienten ρd(λ) werden durcheine Textur geliefert und die vier Strahlungsflusswerte Φ(λ) überglVertexAttribPointer.

36

Page 43: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Ergebnis sind 9 Texturen mit jeweils vier Strahldichtewerten pro Pixel:

λ11 λ21 λ12 λ22 λ13 λ23

λ31 λ41 λ32 λ42 λ33 λ43

λ14 λ24 λ15 λ25 λ16 λ26

λ34 λ44 λ35 λ45 λ36 λ46

λ17 λ27 λ18 λ28 λ19 λ29

λ37 λ47 λ38 λ48 λ39 λ49

λ331 λ341 λ332 λ342 λ333 λ343

λ351 λ361 λ352 λ362 λ353 λ363

λ334 λ344 λ335 λ345 λ336 λ346

λ354 λ364 λ355 λ365 λ356 λ366

λ337 λ347 λ338 λ348 λ339 λ349

λ357 λ367 λ358 λ368 λ359 λ369

Textur 9

Textur 1

Abbildung 15: Speicherung der 36 Strahldichtewerte

Danach gilt es, die Strahldichtewerte in den CIE XYZ-Farbraum zu kon-vertieren. 36 spektrale Werte führen zu einer Diskretisierung und einemdλ-Wert von 10nm. Durch Gewichtung mit Km = 683 lmW erfolgt eine Um-rechnung in photometrische Werte. Beispielhaft für den X-Wert ergibt sichdamit:

X = 683 ·730nm∑

λ=380nm

Lλ · xλ · 10

Bei 9 Texturen führt das zu folgender Umformung:

X = 683 · (410nm∑

λ=380nm

Lλ · xλ +

450nm∑λ=420nm

Lλ · xλ +

490nm∑λ=460nm

Lλ · xλ

+530nm∑

λ=500nm

Lλ · xλ +570nm∑

λ=5400nm

Lλ · xλ +610nm∑

λ=580nm

Lλ · xλ

+650nm∑

λ=620nm

Lλ · xλ +690nm∑

λ=6600nm

Lλ · xλ +730nm∑

λ=700nm

Lλ · xλ) · 10

Hierzu wird dem Fragment-Shader jeweils eine Textur mit 4 Strahldich-tewerten gemeinsam mit den 4 korrespondierende xλ-, yλ bzw. zλ-Wertenübergeben und in X-,Y- bzw. Z-Werte konvertiert. Zum Schluss werden die9 erzeugten Texturen addiert.

37

Page 44: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.4.2 Analyse der Fehlerbereiche und Maskierung

—————————————————————————————————Zum Erzeugen der Maske für die Bereiche, die von zu vielen Splats abge-deckt sind, werden die Splats nach obigem Prinzip gezeichnet. In die Tex-tur werden jedoch keine Strahldichtewerte eingetragen, sondern eine 1 für”Splat beleuchtet Pixel” oder eine 0 für ”Splat beleuchtet Pixel nicht”. Diefertige Textur enthält damit die Anzahl der Splats pro Pixel. Im nächstenSchritt erhält der Fragment-Shader diese Textur gemeinsam mitmaxPhotonsund maskiert das Pixel, sofern es von zu vielen Splats beleuchtet wird.

Zum Maskieren der Kanten wird dem Fragment-Shader die Textur mit denNormalen übergeben und mittels des Sobel-Operators entschieden, ob essich um eine Kante handelt oder nicht. Wurde eine Kante vorgefunden,wird in die Ziel-Textur eine 1 eingetragen. Zum Skalieren der Kanten wer-den im Fragment-Shader die Werte der Nachbarfragmente innerhalb ei-nes bestimmten Bereichs ausgelesen und ebenfalls maskiert, sofern in derNachbarschaft ein maskiertes Pixel gefunden wurde.

Im nächsten Schritt werden die drei erzeugten Masken (zu viele Splatsder Global- und Kaustik-Photonen und die Kantenmaske) innerhalb desFragment-Shaders addiert, was zur fertigen Maske führt. Abbildung 16zeigt ein vereinfachtes Beispiel:

1 1 11 1 1 11 1 1

1 1 1 1 1 1 1

Abbildung 16: Maske

Zum Erzeugen der Texturen mit den maskierten Splats werden dem Fragment-Shader die Maske und die zwei Splat-Texturen (globale Photonen und Kaustik-Photonen im XYZ-Farbraum) übergeben. Befindet sich an der untersuchtenStelle in der Maske eine 0, wird in die Textur der XYZ-Wert geschrieben,ansonsten eine 0.

38

Page 45: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.4.3 Auswertung der Strahldichte mittels Photon Mapping

—————————————————————————————————Zentrales Element dieser Photon Mapping-Impementierung ist ein Arrayder Größe des Bildes. Um die Strahldichte für ein einzelnes Pixel bestim-men zu können, muss die zum Pixel korrespondierende Position im Ar-ray bekannt sein. Hierzu wurde nach dem Erstellen der Maske der Color-Buffer ausgelesen und in ein Array geschrieben. Steht dort ein Wert größer1, wird mittels Photon Mapping die Strahldichte ausgewertet. Danach er-folgt eine Konvertierung der Strahldichte in den XYZ-Farbraum und dasBinden des Arrays an eine Textur.

7.4.4 Zusammenführen der Komponenten

—————————————————————————————————Zum Berechnen des fertigen Bildes werden die Texturen des direkten Lichts,der Splats und des Photon Mappings addiert, gemeinsam in den RGB-Farbraum konvertiert und auf dem Bildschirm ausgegeben:

XYZ = texDirectLight + texSplatsGlobal + texSplatsCaustic + texPhotonMapping

RGB = mMatrix * XYZ

fragColor = RGBgamma

Fragment Shader

Abbildung 17: Konvertierung in den RGB-Farbraum

39

Page 46: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.5 Ergebnisse Selektives Photon Splatting—————————————————————————————————Für die Bewertung des selektiven Photon Splattings wurden Tests bezüg-lich der Geschwindigkeit und der Qualität durchgeführt, wobei als Refe-renz das durch PB gegebene Photon Mapping verwendet wurde.

Die Tests wurden auf einer NVIDIA GeForce 9400M und einem Intel Core2 Duo Prozessor (2.26 GHz , 4GB RAM) durchgeführt.

Als Testszene wurde die Cornell Box [9] und der Stanford Bunny [34] ausGlas eingesetzt.

7.5.1 Geschwindigkeit

—————————————————————————————————Da die Geschwindigkeit des selektiven Photon Splattings sowie des PhotonMappings von vielen verschiedenen Faktoren abhängt, wurden verschie-dene Tests durchgeführt.

Im ersten Test wurde die Anzahl der Photonen erhöht und die Radi-en und maximal einzubeziehenden Photonen konstant gehalten. Im zwei-ten Test wurde der Radius im gleichen Verhältnis wie maxPhotons erhöhtund die Anzahl der Photonen konstant gehalten, wodurch sich lediglichdie Kantenmaske vergrößert. Im dritten Test wurde der Radius vergrö-ßert und maxPhotons sowie die Anzahl der Photonen konstant gehalten– hierdurch vergrößert sich die Maske durch größere Kanten und fehler-hafte Splat-Radien.

40

Page 47: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Variable Anzahl an Photonen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Der Radius der globalen Photonen wurde auf 0.1 gesetzt und der der Kaustik-Photonen auf 0.03. Die Werte von maxPhotons wurden so gewählt, dasslediglich die Kanten maskiert wurden. Abbildung 18 zeigt die Maske:

Abbildung 18: Maske

Begonnen wurde mit etwa 44.000 Photonen. Abbildung 19 ist zu entneh-men, dass selektives Photon Splatting und Photon Mapping bei diesemWert etwa gleich schnell sind (Abweichung von etwa 1%). Je größer aberdie Anzahl an Photonen, desto deutlicher wird der Geschwindigkeitsvor-teil des selektiven Splattings: Bei gut 1 Millionen Photonen ergab sich einUnterschied von knapp 10 Sekunden (etwa 15%). An dieser Stelle musstendie Test abgebrochen werden, da die Grafikkarte überlastet war.

10

20

30

40

50

60

44.000 140.000 300.000 500.000 800.000 1.000.000Photonen

Sekunden

ReferenzSelektives Photon Splatting

Abbildung 19: Variable Anzahl an Photonen

41

Page 48: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Variabler Radius mit variablem maxPhotons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .In dieser Testreihe wurden die Radien gemeinsam mitmaxPhotons vergrö-ßert, wodurch die Größe der Maske lediglich durch die Kanten bestimmtwurde. Versendet wurden etwa 500.000 Photonen.

Da eine Vergrößerung der Radien zu größeren Fehlerbereichen um dieKanten herum führt, vergrößerte sich die Maske bei einem Radius von 0.15(Abbildung 21 auf S. 43). Abbildung 20 ist zu entnehmen, dass der Ge-schwindigkeitsvorteil des selektiven Splattings bei gleicher Maske leichtzunimmt, eine Vergrößerung der Maske allerdings zu einem verhältnismä-ßig geringeren Vorteil führt. Bei einem Radius von 0.05 der globalen Photo-nen ergab sich ein Vorteil von etwa 4%, bei einem Radius von 0.2 hingegennur von etwa 2%.

10

20

30

40

50

60

0.05 / 5000.001 / 5Maske 1

0.1 / 10000.006 / 30Maske 1

0.15 / 15000.011 / 55Maske 2

0.2 / 20000.016 / 80Maske 2

Radius global / maxPhotonsRadius caustic / maxPhotons

Sekunden

70

80

90

ReferenzSelektives Photon Splatting

Abbildung 20: Variabler Radius mit variablem maxPhotons

42

Page 49: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

(a) Maske 1 (b) Maske 2

Abbildung 21: Masken bei variablem maxPhotons

43

Page 50: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Variabler Radius mit konstantem maxPhotons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Um den Zusammenhang zwischen Geschwindigkeit und Größe der Maskenäher zu untersuchen, wurden die Radien vergrößert, maxPhotons jedochkonstant gehalten. Dadurch wurden zusätzlich zu den Kanten die maskier-ten Bereiche durch zu viele Splats größer. Erzeugt wurden etwa 500.000Photonen.

Der unteren Grafik ist zu entnehmen, dass eine größer werdende Maskegravierenden Einfluss auf die Rechenzeit hat und das selektive Splattingab einem Radius der globalen Photonen von 0.15 mehr als doppelt so langebraucht.

10

20

30

40

50

60

0.05 / 5000.001 / 20Maske 1

0.1 / 5000.006 / 20Maske 2

0.15 / 5000.011 / 20Maske 3

0.2 / 5000.016 / 20Maske 4

Radius global / maxPhotonsRadius caustic / maxPhotons

Sekunden

70

80

90

100

110

ReferenzSelektives Photon Splatting

Abbildung 22: Variabler Radius mit konstantem maxPhotons

44

Page 51: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Abbildung 23 zeigt die erzeugten Masken 1 und 3. Bei Maske 4 wurde derkomplette Bildbereich maskiert. Das bedeutet, dass der gesamte Splatting-Prozess plus eine Auswertung der Strahldichte für jeden Bildpunkt durchdas integrierte Photon Mapping im Vergleich zum reinen Photon Mappinggut die doppelte Zeit benötigen.

(a) Maske 1 (b) Maske 3

Abbildung 23: Masken bei konstantem maxPhotons

45

Page 52: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.5.2 Qualität

—————————————————————————————————Da beim selektiven Photon Splatting alle Bereiche maskiert werden, bei de-nen sich Unterschiede zum Photon Mapping ergeben, sind alle Bilder vongleicher Qualität. Abbildung 24 zeigt eine Szene mit deutlichen Kanten, diedurch Maske 2 (Abbildung 21 auf S. 43) maskiert wurden:

Abbildung 24: Selektives Photon Slatting(780.000 Photonen, 140 Sek.)

Abbildung 25: Referenz(780.000 Photonen, 143 Sek.)

46

Page 53: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Auf den folgenden Abbildungen ist ein Bereich mit einer hohen Dichte anPhotonen zu sehen. Maskiert wurden (neben den Kanten) die Highlights:

Abbildung 26: Selektives Photon Slatting(780.000 Photonen, radiusCaustic = 0.015, maxPhotons = 50, 115 Sek.)

Abbildung 27: Referenz(780.000 Photonen, radiusCaustic = 0.015, maxPhotons = 50, 118 Sek.)

47

Page 54: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Abbildung 28: Selektives Photon Slatting(510.000 Photonen, radiusCaustic = 0.1, maxPhotons = 50, 115 Sek.)

Abbildung 29: Referenz(510.000 Photonen, radiusCaustic = 0.1, maxPhotons = 50, 81 Sek.)

48

Page 55: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

7.6 Bewertung—————————————————————————————————Es wurde ein Programm entwickelt, mit dem es möglich ist, Photon Map-ping und Photon Splatting zu vereinen, ohne dass die Schnittstellen sicht-bar sind. Hierzu wurde analysiert, in welchen Bereichen die Bestimmungder Strahldichte durch Photon Splatting im Vergleich zum Radiance-Estimatedes Photon Mappings fehlerhaft ist und ein Weg entwickelt, die Strahldi-che dieser Bereiche durch Photon Mapping auswerten zu lassen. Es stelltesich heraus, dass die Strahldichte, berechnet durch Photon Splatting, in Be-reichen um Kanten und bei zu großen Splats fehlerhaft ist. Um die Fehlerrund um die Kanten zu maskieren, wurde ein Kantendetektor verwendetund um die Fehler, erzeugt durch zu große Splats, zu maskieren, wurde einParameter maxPhotons eingeführt, der sich an der Anzahl der beim Pho-ton Mapping berücksichtigten Photonen zur Bestimmung der Strahldich-te orientiert. Die Qualität der durch selektives Photon Splatting erzeugtenBilder entspricht damit der Qualität der Bilder, erzeugt durch Photon Map-ping und hängt von den Einstellungen des Photon Mappings ab.

Die Ergebnisse der Performance-Tests haben gezeigt, dass das selektivePhoton Splatting bei konstanter Maske und größer werdendem Radius ge-ring und bei einer Erhöhung der verteilten Photonen stärker im Vorteil ist.Die Tests mit einer erhöhten Anzahl an Photonen mussten jedoch relativfrühzeitig abgebrochen werden, da die Grafikkarte überlastet war. Die in7.5.2 gezeigten Bilder stellen die qualitativ hochwertigsten Bilder dar, diesich abhängig von Größe der Splats und Anzahl der Photonen erzeugenließen.

Ein weiterer Performance-Vorteil ergäbe sich durch Beschreibung derEnergie der Photonen im RGB-Format: Durch die spektrale Beschreibungin Form von 36 Strahlungsflusswerten müssen zum Darstellen der Splatsalle Photonen drei Mal gezeichnet und pro Photon 12 Werte an den Fragment-Shader übergeben werden. Eine Reduzierung auf 3 RGB-Werte würde nureinen Renderdurchlauf mit 3 an den Fragment-Shader zu übergebene Wer-te benötigen. Die Rechenzeit würde sich damit voraussichtlich um mehr alsdas Dreifache reduzieren. Anders verhält es sich beim Photon Mapping: Ei-ne Beschreibung der Energie im RGB-Format ändert nichts daran, dass einerechenintensive Suche nach Photonen in der Nachbarschaft durchgeführtwerden muss, wodurch sich die Geschwindigkeit des Radiance-Estimatekaum reduzierte.

Unter den Bedingungen, unter denen die Tests durchgeführt wurden, über-wiegen dennoch die Nachteile: Es ist nicht möglich, genug Splats darzu-stellen, um nicht-diffuses Licht qualitativ hochwertig erscheinen zu lassenund der maximale Radius kann ohne Erhöhung der Anzahl der zu berück-

49

Page 56: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

sichtigenden Photonen der Nachbarschaft nicht vergrößert werden, ohnedass es zu einem deutlichen Performance-Nachteil führt. Letzteres lässtsich aber beim Photon Mapping verwenden, um bei konstanter Anzahl anPhotonen Rauschen zu eliminieren, ohne auf den wesentlichen Verlauf vonHighlights verzichten zu müssen.

Gleichzeitig lassen die Testergebnisse das Potential des selektiven PhotonSplattings erahnen: Um photorealistische Bilder erzeugen zu können, isteine große Menge an Photonen und ein kleiner maximaler Radius nötig.Dies gilt für das Photon Splatting sowie für das Photon Mapping, da eineVergrößerung der Splats sowie eine Vergrößerung des maximalen Such-Radius beim Photon Mapping bei nicht-diffusen Photonen zu sichtbarenFehlern führt. Beim Photon Mapping wird dieser Fehler lediglich durchdie maximal zu berücksichtigenden Photonen innerhalb des Such-Radiuseingedämmt, weshalb an diesen Stellen beim selektiven Photon Splattingdie Strahldichte durch Photon Mapping ausgewertet wird.

Die Testergebnisse, die den Zusammenhang zwischen Anzahl der Pho-tonen und Rechenzeit zeigen, lassen stark vermuten, dass sich der Performance-Vorteil des selektiven Photon Splattings bei mehr Photonen weiter steigert.

Es wurde also ein Weg gefunden, qualitativ hochwertige Bilder zu erzeu-gen, in denen das indirekte Licht durch Photon Splatting und Photon Map-ping bestimmt wird. Das entwickelte Programm eignet sich aus den obengenannten Gründen nicht für leistungsschwache Systeme und wegen demEinsatz des verhältnismäßig neuen Geometry Shaders und GLSL 1.30 nichtfür Grafikkarten älterer Generationen. Die voraussichtlichen Performance-Vorteile durch Verwenden einer leistungsstärkeren Grafikkarte (evtl. dernächsten Generation) legen jedoch nah, dass es sich um ein Verfahren mitZukunft handelt.

50

Page 57: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

8 Adaptives Photon Splatting—————————————————————————————————Durch die Einführung des Geometry-Shaders ist es möglich, innerhalb derGrafikpipeline neue Geometrie zu erzeugen. Für das bildbasierte PhotonSplatting bedeutet das, dass die Radien der Splats ohne Probleme unab-hängig voneinander bestimmt werden können, was zu einer wesentlichenVerbesserung des Photon Splattings führen kann. Daher wurde der Feh-lerbereich ”Unschärfe”, der durch zu große Splats verursacht wird, näheranalysiert und ein Weg entwickelt, die Radien in diesen Bereichen anzu-passen.

8.1 Entwurf—————————————————————————————————Wie [21] zu entnehmen, entspricht die Bestimmung der Bestrahlungsstär-ke E(x, λ) bei einer Dichtefunktion p(x, λ), mit der die Photonen auf derOberfläche verteilt wurden und einer Gesamtzahl an n Photonen mit ei-nem Strahlungsfluss-Wert von Φ dem Lösen folgender Gleichung:

E(x, λ) = p(x, λ) · nΦ

Problem hierbei ist die unbekannte Dichtefunktion p(x, λ), die sich jedochbei genügend bekannten Datenpunkten durch verschiedene von B. W. Sil-verman vorgestellte Verfahren durch Analyse der direkten Nachbarschaftannähernd rekonstruieren lässt [30]. Ein Weg ist der Kernel-Estimator, aufdem basierend in [21] für die Bestrahlungsstärke eines Pixels xij bei einemSplat-Radius von h gefolgert wurde:

E(xij) =

n∑p=1

Φ

πh2= N

Φ

πh2

Der Splat-Radius h, im Folgenden nach [30] Fensterbreite genannt, entsprichtbei der Rekonstruktion der Dichtefunktion der Größe des Bereichs, ausdem Funktionswerte berücksichtigt werden. Die Qualität der rekonstru-ierten Dichtefunktion und damit der rekonstruierten Bestrahlungsstärkehängt hierbei gravierend von der Wahl von h ab: Bei einem zu großenh wird die Dichtefunktion so sehr geglättet, dass Details verloren gehen.Beim Photon Splatting äußert sich das z.B. durch eine Entartung von Kaus-tiken. Bei einem kleinen h bleiben Details erhalten – für das Photon Splat-ting bedeutet dies jedoch, dass eine große Anzahl an Photonen erzeugtwerden muss, um Randbereiche nicht verrauscht erscheinen zu lassen.

51

Page 58: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Eine weitere Möglichkeit ist die Rekonstruktion der Dichtefunktion überdie Variable-Kernel-Methode, bei der die Fensterbreite in Abhängigkeit vonder Dichte bestimmt wird. In [21] beispielsweise wird hierzu der Radiusin Bereichen mit hohem Bias und geringer Varianz iterativ verkleinert, bisjedes Pixel abhängig von nutzerdefinierten Werten als korrekt anerkanntwurde. In [27] ist eine Zusammenfassung verschiedener Ansätze mit va-riablem Kernel bis zum Jahr 2009 zu finden.

Bei der Variablen-Kernel-Methode handelt es sich um eine Art Nearest-Neighbor-Methode, bei der die Fensterbreite h zusätzlich durch einen Wertk bestimmt wird, über den sich steuern lässt, wie viele Datenpunkte derNachbarschaft für die Rekonstruktion berücksichtigt werden sollen. Beidieser Variante verläuft die Fensterbreite um einen untersuchten PunktXj proportional zum Abstand des k-ten Nachbarn, was bedeutet, dass dieFensterbreite in Bereichen mit wenigen Datenpunkten groß wird und inBereichen mit vielen Datenpunkten klein wird. Laut [30] führt dieser An-satz zu einer besseren Rekonstruktion als über eine konstante Fensterbreite– auch wenn diese klein gewählt wurde.

Für das adaptive Photon Splatting entstand hieraus die Idee, einen Pa-rameter maxPhotons einzuführen, der den Radius eines Splats abhängigvon der Anzahl der Photonen der Nachbarschaft bestimmt (der damit kvon [30] entpricht). Zusätzlich gibt es einen maximalen Radius (entspre-chend der Fensterbreite h bzw. dem maximalen Such-Radius des PhotonMappings).

Der im Folgenden vorgestellte Weg zur Bestimmung eines adaptiven Radi-us basiert hierbei auf der Annahme, dass bei ebener Oberfläche nach einemRenderdurchlauf mit gleichem maximalen Radius aller Splats ausreichendInformationen vorliegen, um in wenigen weiteren Schritten den gesuchtenRadius mit geringem Fehler anzunähern, ohne eine eigene Datenstrukturfür Nachbarschafts-Informationen zu benötigen.

52

Page 59: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Im ersten Schritt werden alle Splats mit dem gleichen maximalen Radiusgezeichnet. Danach sind folgende Informationen bekannt:

Abbildung 30: Nachbarschaftsanalyse

Auf Abbildung 30 ist zu sehen, dass der Punkt, auf dem sich das Photonin der Mitte befindet, von 6 Splats beleuchtet wird. Da alle Nachbarphoto-nen den gleichen Splat-Radius haben, entspricht dies der Anzahl an Photo-nen innerhalb des Radius des Photons in der Mitte. Übersteigt dieser WertmaxPhotons, soll der Splat verkleinert werden.

Der Adaption des Radius liegen zwei Überlegungen zugrunde:

1. Soll die Bestrahlungsstärke eines Punktes X durch die Bestrahlungs-stärke von maximal maxPhotons bestimmt werden, ergibt sich derverhältnismäßige Wert tooMuch, von wie vielen Photonen der Punktzu viel beleuchtet wird, durch:

tooMuch =nrSplats

maxPhotons

Bei konstantem Radius aller Splats bedeutet das wiederum, dass sichinnerhalb des Radius des untersuchten Punktes (bzw. Photons, des-sen Splat-Radius bestimmt werden soll) tooMuch-mal zu viele Pho-tonen befinden. Ist nrSplats kleiner als maxPhotons ergibt sich alsoein Wert kleiner 1 und bei zu vielen Splats ein Wert größer 1.

Bei einer gleichmäßigen Verteilung von Photonen auf einer ebenenOberfläche entspricht eine Verkleinerung der Fläche des Splats umden Faktor tooMuch einer Verringerung der Anzahl an Photonen in-nerhalb des Splats um den Faktor tooMuch.

Für die Fläche eines Splats bei maximalem Radius gilt:

areaRadiusMax = π · r2max

53

Page 60: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Der Radius zur Verkleinerung des Splats um den Faktor tooMuch er-rechnet sich hierbei über:

areaRadiusNew = π · r21 =

areaRadiusMax

tooMuch

r21 =

areaRadiusMax

tooMuch · π

r1 =

√areaRadiusMax

tooMuch · π=

√r2max

tooMuch(1)

Abbildung 31 stellt beispielhaft einen Splat dar, dessen Radius zugroß ist (äußerer Radius). Abhängig von tooMuch ergibt sich der neueinnere Radius. Da die Photonen gleichmäßig auf der Oberfläche ver-teilt sind, befinden sich innerhalb des neuen RadiusmaxPhotons unddamit ist er korrekt.

Abbildung 31: Gleichmäßige Verteilung von Photonen

2. Laut [30] ist der Fehler einer rekonstruierten Dichtefunktion p(x) beieiner Fensterbreite von h proportional zu h2 · p′′(x). Da die Bestim-mung des adaptiven Radius auf der Rekonstruktion der Bestrahlungs-stärke nach [21] und damit auf der Rekonstruktion der Dichtefunkti-on nach [30] beruht, wurde der Verlauf von möglichen Dichtefunk-tionen und zugehörigen zweiten Ableitungen näher betrachtet.

Der Verlauf von Kaustik-Photonen (und damit Photonen, bei denenein konstanter Radius die offensichtlichsten Fehler liefert), erinnertan eine logarithmische Normalverteilung, weshalb der im Folgendenvorgestellte Weg zur Bestimmung des adaptiven Radius mit Hilfe derlogarithmischen Normalverteilung

p(x > 0) =1√

2πσx· e(−(ln(x)− µ)2

2σ2

)

54

Page 61: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

mit µ = 0.0 und σ = 0.3 erläutert wird. Zur Veranschaulichung wur-de mittels Gnuplot der Graph von p(x) und dessen zweite Ableitungp′′(x) gezeichnet. Abbildung 32 bzw. 33 zeigt einen Ausschnitt derGraphen:

Abbildung 32:p(x)

0

Abbildung 33:p′′(x)

Ist p′′(x) positiv, bedeutet das, dass die Dichtefunktion um den unter-suchten Punkt überschätzt wird, was bei der Berechnung des Radiusnach Formel 1 auf S. 54 zu einem zu kleinen Radius führt, da eineÜberschätzung der Dichtefunktion einer Überschätzung der Anzahlan Photonen um das untersuchte Photon herum entspricht. Abbil-dung 34 demonstriert den Fall. Der innere Radius stellt (beispielhaft)den über Formel 1 berechneten Radius dar und der mittlere den kor-rekten – der errechnete Radius ist also zu klein:

Abbildung 34: Überschätzung der Dichte

Ist p′′(x) hingegen negativ, wird die Dichte unterschätzt, was kon-sequenterweise zu einem zu großen Radius führt. Abbildung 35 de-monstrieren diesen Fall. Der mittlere Radius stellt den berechnetenRadius dar, der innere den korrekten:

Abbildung 35: Unterschätzung der Dichte

55

Page 62: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Abbildung 36 soll den Zusammenhang verdeutlichen. Alle Graphenentsprechen den von Gnuplot ausgegebenen Graphen. Die obere Funk-tion beschreibt tooMuch(rmax), die proportional zu p(x) verläuft, daes sich lediglich um eine konstante Skalierung abhängig von der Ge-samtzahl der Photonen und dem Wert 1/maxPhotons handelt (hier-zu wurden willkürliche Werte gewählt, so dass sich für den Werte-bereich von tooMuch(rmax) [1:16] ergab). Die mittlere Funktion stelltdie zweite Ableitung p′′(x) dar und die untere Funktion die Größe derRadien, berechnet nach Formel 1 mit rmax = 0.5 und maxPhotons =50. Da die Bestimmung des adaptiven Radius unabhängig von abso-luten Werten sein soll, wurde sich entschieden, keine weiteren abso-luten Werte anzugeben.

0

WPWP

Highlight

Radius korrekt

Radius zu groß

Radius zu klein

Radius zu klein

f(x) = tooMuch

p‘‘(x)

r1= sqrt(rmax*rmax/tooMuch)

1

Abbildung 36: Zusammenhang zwischen tooMuch(rmax), p”(x) und r1

Für den gewählten Ausschnitt ist r1 an vier Stellen laut Definitionkorrekt: In den Randbereichen, da hier gilt

nrSplats <= maxPhotons

tooMuch(rmax) <= 1

56

Page 63: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

(der maximale Radius führt also nicht zu einem zu großen Splat) undan den Wendepunkten von p(x), da hier gilt

p′′(x) = 0→ bias = 0

Der bias von 0 an den Wendepunkten ergibt sich aus der Definitioneines Wendepunktes: Die Steigung ist konstant – das Maß der Über-schätzung der Dichte um einen untersuchten Punkt x im Bereich x−rentspricht dem Maß einer Unterschätzung im Bereich x + r, was zueinem Ausgleich führt.

Der Korrektur der verbliebenen Fehlerbereiche ging folgende Über-legung voraus: Alle der Autorin bekannten Dichtefunktionen strebenin den Randbereichen gegen Null und haben Wendepunkte, was be-deutet, dass die zweite Ableitung negative sowie positive Werte an-nimmt. Eine Anpassung der Radien, die lediglich auf diesen Gege-benheiten beruht, gilt damit für beliebige zugrunde liegende Dichte-funktionen.

Unabhängig vom genauen Verlauf der Dichtefunktion bedeutet dasfür r1 also: Es gibt Bereiche, in denen der neue Radius zu klein istund es gibt Bereiche, in denen der neue Radius nach wie vor zu großist.

Durch Bestimmung der Radien nach Formel 1 ergeben sich unter-schiedliche Radien benachbarter Photonen, weshalb man in diesemFall nrSplats(r1) des untersuchten Punktes bzw. Photons nicht mitder Anzahl der Photonen innerhalb des Radius gleichsetzen kann(wie im Fall nrSplats(rmax)). Da sich benachbarte Radien jedoch durchdie kontinuierliche zugrunde liegende Dichtefunktion nur gering un-terscheiden, liefert nrSplats(r1) einen guten Anhaltspunkt für dieKorrektur des Radius.

Das bedeutet:

tooMuch(r1) ≈ nrSplats(r1)

maxPhotons< 1→ r1 ist zu klein

tooMuch(r1) ≈ nrSplats(r1)

maxPhotons= 1→ r1 ist korrekt

tooMuch(r1) ≈ nrSplats(r1)

maxPhotons> 1→ r1 ist zu groß

57

Page 64: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Berechnet man nun einen weiteren Radius durch

r2 =

√r2

1

tooMuch(r1)

folgt daraus

tooMuch(r1) < 1→ r2 > r1

tooMuch(r1) = 1→ r2 = r1

tooMuch(r1) > 1→ r2 < r1

Die Berechnung für r1 und r2 wurden nachprogrammiert. Die Bil-der, erzeugt durch r1 wurden mit dem Referenzbild, berechnet überPhoton Mapping, verglichen und es stellte sich (wie zu erwarten) her-aus, dass die Highlights unschärfer sind (Highlights entsprechen denBereichen, in denen p′′(x) negativ ist, was zu einem zu großen Splatführt). Radius r2 hingegen ließ die Splats mancher Highlights so kleinwerden, dass sie nicht mehr dargestellt werden konnten – sie warenalso zu klein. Hieraus entstand folgende Idee zur Bestimmung desgesuchten Radius:

radaptive =r1 + r2

2(2)

58

Page 65: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

8.2 Implementierung—————————————————————————————————Beim adaptiven Photon Splatting ergeben sich im Vergleich zum selekti-ven Photon Splatting nur geringe Unterschiede: Die Integration des Pho-ton Mappings findet nicht statt, wodurch zusätzlich sämtliche Schritte rundum die Fehlerdetektion entfallen. Hinzu kommen zwei zusätzliche Render-druchläufe für die Splats, in denen der Radius angepasst wird. Daher wirdan dieser Stelle lediglich auf die zwei zusätzlichen Renderdurchläufe nähereingegangen.

Das Zeichnen der Splats geschieht wie in Abbildung 37 zu sehen:

Photonen Radius = RadiusMax

Geometry-Shader

zähle Splats

Fragment-Shader

texSplatsRadiusMax

Radius = Radius1

Geometry-Shader

zähle Splats

Fragment-Shader

texSplatsRadius1

Radius = (Radius1+Radius2)/2

Geometry-Shader

zeichne Splats

Fragment-ShadertexSplatsRadiusAd-

aptive

Abbildung 37: Adaptives Photon Splatting

Im ersten Renderdurchlauf werden die Splats mit maximalem Radius ge-zählt. Im nächsten Renderdurchlauf erhält der Geometry-Shader die ent-standene Textur und prüft, ob nrSplats(rmax) > maxPhotons ist (und essich somit um einen definierten Fehlerbereich handelt). Trifft dies zu, lässtsich für jedes Photon

tooMuch(rmax) =nrSplats(rmax)

maxPhotons

bestimmen wodurch sich wiederum

r1 =

√r2max

tooMuch(rmax)

berechnen lässt. Durch den Fragment-Shader werden wieder die Splats ge-zählt. Im dritten Renderdurchlauf erhält der Geometry-Shader rmax, dieTextur mit nrSplats(rmax) undmaxPhotons. Dadurch lässt sich tooMuch(rmax)und r1 rekonstruieren. Dann wird

tooMuch(r1) =nrSplats(r1)

maxPhotons

59

Page 66: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

und

r2 =

√r2

1

tooMuch(r1)

berechnet, wodurch sich der gesuchte Radius bestimmen lässt:

radaptive =r1 + r2

2

In diesem Renderdurchlauf werden die Splats mit ihren Strahldichtewer-ten gezeichnet.

8.3 Ergebnisse Adaptives Photon Splatting—————————————————————————————————Zur Bewertung des adaptiven Photon Splattings wurden Tests bzgl. derGeschwindigkeit und der Qualität durchgeführt. Als qualitative Referenzwurden die durch Photon Mapping erzeugten Bilder verwendet, wobei beiallen Tests Photon Mapping, Photon Splatting und das adaptive PhotonSplatting gegenübergestellt wurden.

Zur Überprüfung der Performance wurden zwei verschiedene Tests durch-geführt: Ein Mal wurden die Radien der Splats bei konstantemmaxPhotonsvergrößert und ein Mal die Anzahl der Photonen bei konstantem Radiuserhöht.

Die Tests wurden unter den gleichen Bedingungen wie in 7.5 beschriebendurchgeführt.

60

Page 67: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

8.3.1 Geschwindigkeit

—————————————————————————————————

Variable Anzahl an Photonen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Wie schon die Testergebnisse des selektiven Photon Splattings erwarten lie-ßen, ist auch das adaptive Photon Splatting bei wachsender Menge an Pho-tonen im Vergleich zum Photon Mapping klar im Vorteil (Abbildung 38).Ergab sich bei 45.000 Photonen ein Unterschied von etwa drei Sekunden(20%), wurden bei 780.000 Photonen knapp 60 Sekunden weniger benö-tigt (50%). Im Vergleich zum Photon Splatting ergab sich jedoch ein gerin-ger Performance-Nachteil, der sich bei größerer Menge an Photonen weiterausbaute.

10

20

30

40

Photonen

Sekunden

45.000 307.000 780.000

adaptives Photon Splatting ReferenzPhoton

Splatting

50

100

60

80

90

70

110

Abbildung 38: Variable Anzahl an Photonen

61

Page 68: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Variabler Radius mit konstantem maxPhotons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Erzeugt wurden 300.000 globale Photonen und 6.700 Kaustik-Photonen.Abbildung 39 zeigt die gemessenen Zeiten. Für das adaptive Photon Splat-ting ergab sich auch hier ein geringer Nachteil im Vergleich zum ursprüng-lichen Photon Splatting, wohingegen das adaptive Splatting wieder schnel-ler war als Photon Mapping und sich der Geschwindigkeitsvorteil bei grö-ßer werdendem Radius vergrößerte. Bei einem Radius von 0.05 der globa-len Photonen ergab sich ein Vorteil von unter einer Sekunde (etwa 3%), beieinem Radius von 0.25 ein Vorteil von etwa 15 Sekunden (35%).

Ab einem Radius von 0.25 der globalen Photonen kam die Grafikkartebeim Photon Splatting an ihre Grenzen, weshalb die Zeit nicht gemessenwerden konnte. Das zeigt einen Vorteil des adaptiven Photon Splattings:Da eine Verkleinerung der Radien erfolgt, müssen ab einem gewissen Ver-hältnis zwischen Splat-Größe und zu korrigierendem Bereich weniger Da-ten durch die GPU verarbeitet werden.

10

20

30

40

Radius global / maxPhotonsRadius caustic / maxPhotons

Sekunden

0.05 / 5000.05 / 50

0.15 / 5000.11 / 50

0.25 / 5000.17 / 50

adaptives Photon Splatting ReferenzPhoton

Splatting

?

Abbildung 39: Variabler Radius mit konstantem maxPhotons

62

Page 69: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

8.3.2 Qualität

—————————————————————————————————Um die Verbesserung der Qualität durch den adaptiven Radius in Berei-chen mit hoher Dichte an Photonen deutlich zu machen, wurden die Radi-en der Kaustik-Photonen mit 0.1 in beiden abgebildeten Szenen verhältnis-mäßig groß gewählt.

Um die Kaustikbereiche zu vergrößern, ohne die Gesamtzahl der Photonenerhöhen zu müssen, wurde in Testszene 2 auf S. 66 die Lichtquelle in denStanford Bunny aus Glas gesetzt.

Ein Vergleich der Bilder des Photon Splattings und des adaptiven PhotonSplattings zeigen die deutliche Verbesserung: Ein großer maximaler Radiusbeim Photon Splatting entartet die Kaustiken regelrecht, wobei diese beimadaptiven Photon Splatting noch deutlich als solche zu erkennen sind.

Sogar im Vergleich mit den Bildern des Photon Mappings zeigt sich einebessere Qualität: Auf den ersten beiden Abbildungen auf S. 65 lässt sich se-hen, dass das adaptive Photon Splatting die Energie der Randbereiche ho-her Photonendichte besser bündelt als das Photon Mapping. Nach [30] lässtsich dies mit den unterschiedlichen Rekonstruktionsansätzen von PhotonMapping und Photon Splatting erklären:

Beim Photon Mapping wird die Bestrahlungsstärke eines Punktes t durchdie klassische Nearest-Neighbor-Methode bestimmt. Hierzu wird die Fens-terbreite (bzw. der Radius) um einen Punkt t so lange vergrößert, bis kDatenpunkte (Photonen) gefunden wurden. Die Fensterbreite wird hier-bei durch den Abstand zwischen Ausgangspunkt t und k-tem Nachbarnbestimmt. Dieser Ansatz führt jedoch laut [30] bei der Rekonstruktion ei-ner Dichtefunktion in manchen Bereichen zu Unstetigkeit und in Rand-bereichen zu langen Ausläufern (tails), weshalb Silverman davon ausgeht,dass diese Methode nicht geeignet ist, um eine gesamte Dichtefunktion zurekonstruieren. Beim Photon Mapping äußern sich die langen Ausläuferdurch Blurring in Randbereichen hoher Dichte, wenn der maximale Such-Radius zu groß gewählt wurde.

Die Bestimmung des adaptiven Radius beim Photon Splatting hinge-gen wurde der Rekonstruktion einer Dichtefunktion durch die Variable-Kernel-Methode nachempfunden. Hierbei wird die Fensterbreite (der Ra-dius) abhängig von k (maxPhotons) durch den Abstand benachbarter Da-tenpunkte (Photonen) bestimmt. Dieser Weg führt bei der Rekonstrukti-on einer Dichtefunktion nach [30] nicht zu Unstetigkeit und langen Aus-läufern, wodurch dies vermutlich auch für das adaptive Photon Splattinggilt. Unter der Annahme, dass diese Vermutung korrekt ist, ergibt sich dar-aus eine Erklärung für die bessere Rekonstruktion der Bestrahlungsstärke

63

Page 70: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

in Randbereichen durch das adaptive Photon Splatting im Vergleich zumPhoton Mapping.

Diese zwei verschiedenen Ansätze zur Rekonstruktion einer Dichte-funktion wurden im Kontext der globalen Beleuchtung bereits durch [14]gegenübergestellt. Aus oben genannten Gründen wird dort empfohlen, dieVariable-Kernel-Methode der Nearest-Neighbor-Methode vorzuziehen.

64

Page 71: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

AdaptivesPhoton SplattingglobalPhotons = 760.000Radius globalPhotons = 0.2maxPhotons global = 2000causticPhotons = 170.000Radius causticPhotons = 0.1maxPhotons caustic = 50

59 Sekunden

Referenz118 Sekunden

Photon Splatting55 Sekunden

65

Page 72: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

AdaptivesPhoton SplattingglobalPhotons = 700.000Radius globalPhotons = 0.2maxPhotons global = 2000causticPhotons = 175.000Radius causticPhotons = 0.1maxPhotons caustic = 50

58.65 Sekunden

Referenz135.29 Sekunden

Photon Splatting53.4 Sekunden

66

Page 73: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Zur nicht-visuellen Überprüfung der Ergebnisse wurde die Konsole zurHilfe genommen. Hierzu wurden im letzten Renderdurchlauf nicht die Strahl-dichtewerte in die Textur geschrieben sondern über den bekannten Weg dieAnzahl der Splats pro Pixel gezählt. MaxPhotons wurde zu Beginn auf 50gesetzt. Danach wurde der Color-Buffer ausgelesen und über die Konsolealle Werte, die größer als maxPhotons waren, ausgegeben.

Abbildung 40 zeigt einen Ausschnitt aus der Konsolenausgabe bei maxi-malem Radius (also dem ursprünglichen Photon Splatting) und bei adap-tiertem Radius:

(a) Photon Splatting (b) Adaptives Photon Splatting mitmaxPhotons = 50

Abbildung 40: Anzahl der Splats

Zusätzlich wurde das jeweilige Maximum ausgegeben. Es hat sich gezeigt,dass aus dem Wertebereich

nrSplats(rmax) ∈ [0 : 976]

der Wertebereich

nrSplats(radaptive) ∈ [0 : 191]

wurde. Das bedeutet, dass bei diesem Beispiel der maximale Fehler beimun-korrigierten Photon Splatting das 19.5-fache der maximal einzubezie-henden Photonen von 50 beträgt und beim adaptiven Photon Splatting das3.8-fache.

67

Page 74: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Vergleich von radaptive und r1

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Eine Korrektur von r1 erfordert einen zusätzlichen Renderdurchlauf undbenötigt damit mehr Zeit. Daher wurde zusätzlich Qualität und Zeit desunkorrigierten Radius r1 mit dem des korrigierten Radius radaptive vergli-chen.

Es stellte sich heraus, dass die Korrektur auf Kosten eines geringenPerformance-Nachteils eine geringe Verbesserung mit sich führt. Auf Ab-bildung 41 erscheinen die Highlights im linken Bild (korrigierter Radius)leicht schärfer als auf dem rechten Bild. Das lässt sich mit der Beobachtungvon Silverman vergleichen: Bei der Rekonstruktion einer Dichtefunktionlassen sich verschiedene Kerne verwenden (konstant, linear, Epanechnikov-und Gauß-Kern). Der Kern bestimmt die Gewichtung der berücksichtigtenDatenpunkte der Nachbarschaft in Abhängigkeit vom Abstand zum unter-suchten Datenpunkt. Laut [30] hat die Wahl des Kerns jedoch nur geringenEinfluss auf die Genauigkeit, weshalb in [21] der konstante Kern verwen-det wurde.

Beim adaptiven Photon Splatting wurde nach [21] ebenfalls der kon-stante Kern verwendet. Eine Korrektur von r1 durch das adaptive PhotonSplatting entspricht einer Korrektur der fehlerhaften Dichteschätzung derunmittelbaren Nachbarschaft und damit in etwa der Verwendung eines an-deren Kerns.

Während der Entwicklung des Programms zeigten sich jedoch Fälle(die sich nicht mehr rekonstruieren ließen), bei denen der Unterschied deut-licher zu sehen war. Durch Erzeugung einer ausreichenden Menge an Pho-tonen (was für qualitativ hochwertige Bilder notwendig ist) würde sich derUnterschied möglicherweise reduzieren. Da dies jedoch nicht überprüftwerden konnte, wurde sich entschieden, die Performance-Tests mit demkorrigierten Radius durchzuführen.

(a) radaptive (61 Sek.) (b) r1 (57 Sek.)

Abbildung 41: Vergleich von radaptive und r1

68

Page 75: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Zudem wurden stichprobenartig die Zeiten bei Verwendung des nicht-korrigiertenRadius r1 mit denen des ursprünglichen Photon Splattings verglichen. Esstellte sich heraus, dass das adaptive Splatting in diesem Fall bei großemmaximalen Radius gering schneller ist als das ursprüngliche Photon Splat-ting. Das liegt daran, dass ab einem gewissen Verhältnis zwischen Splat-Größe und korrigiertem Bereich weniger Daten durch die GPU verarbeitetwerden müsen. Zum Berechnen der abgebildeten Testszene benötigte dasPhoton Splatting 58 Sekunden – also eine Sekunde mehr als das adaptivePhoton Splatting.

69

Page 76: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

8.4 Bewertung—————————————————————————————————Bei dem einfachen Photon Splatting-Ansatz des selektiven Photon Splat-tings hängt die Qualität der Bilder gravierend von der Größe der Radiender Splats ab, da keine Korrektur von den in 7.2 aufgezeigten Fehlerberei-chen durch einen adaptiven Radius vorgenommen wird. Mit dem adapti-ven Photon Splatting wurde ein Weg entwickelt, den Fehler durch zu großeSplats in Bereichen mit hoher Photonendichte elementar zu verringern, oh-ne einen großen Performance-Nachteil mit sich zu ziehen. Dadurch ist esmöglich, den Radius zu vergrößern, um in Bereichen mit geringer Photo-nendichte Rauschen zu eliminieren, ohne dass der Verlauf von Highlightsverschwindet. Hierdurch sind weniger Photonen nötig, um ein qualitativhochwertiges Bild zu erzeugen.

Eine Integration in das selektive Photon Splatting würde dazu führen,dass die Maske lediglich durch Geometriekanten bestimmt wird, was denPerformance-Einbruch der in 7.5.1 aufgezeigten Fälle verhindern würde. Eswurde sich jedoch aus folgendem Grund dagegen entschieden: Das adap-tive Photon Splatting bündelt die Energie in Randbereichen der Highlightsmehr als das Photon Mapping (es entsteht kein Blurring). Verläuft die Mas-ke durch Bereiche, in denen dies deutlich zu sehen ist, entstehen sichtbareSchnittstellen.

Da lediglich ein Fehlerbereich des einfachen Photon Splattings korrigiertwurde, stellt das adaptive Photon Splatting kein Verfahren dar, mit demsich indirektes Licht insgesamt qualitativ hochwertig darstellen lässt, da inBereichen mit Geometriekanten nach wie vor Artefakten entstehen. Hierzumüsste zum Einen ein Verfahren integriert werden, mit dem sich eine Über-und Unterschätzung der Strahldichte an Kanten verbessern ließe. Zum An-deren geht der vorgestellte Weg zur Adaption des Radius von einer plana-ren Fläche aus, weshalb auch hier ein Weg entwickelt werden müsste, denRadius unter Berücksichtigung der darunter liegenden Geometrie anzu-passen. Des Weiteren wurden lediglich zwei verschiedene Arten von Pho-tonen verwendet: Diffuse Photonen und Kaustik-Photonen – damit stehteine Bewertung des adaptiven Radius bei anderen Materialien noch offen.

In den einfachen hier verwendeten Testszenen lieferte das adaptive Pho-ton Splatting in den korrigierten Bereichen sogar eine bessere Qualität alsdas Photon Mapping, ohne eine Datenstruktur für Nachbarschaftsinforma-tionen zu benötigen, was ein Grund für den enormen Performance-Vorteilbei einer großen Menge an Photonen ist. Wie auch beim selektiven Splat-ting würde sich dieser Vorteil durch Beschreibung der Energie der Photo-nen mittels 3 RGB-Werten und Einsatz einer leistungsstärkeren Grafikkartevorraussichtlich weiter ausbauen.

70

Page 77: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Eine Weiterentwicklung des adaptiven Photon Splattings durch Korrekturder verbliebenen Schwachstellen würde damit zu einem Verfahren führen,mit dem es möglich wäre, das indirekte Licht qualitativ hochwertig in ver-gleichsweise kurzer Zeit zu berechnen.

71

Page 78: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

9 Caustic Gimmicks—————————————————————————————————Da ein Weg gefunden wurde, die Radien der Splats durch eine bekannteFormel für beliebige zugrunde liegende unbekannte Dichtefunktionen an-zunähern, bietet es sich an, weitere Parameter hinzuzufügen. Als Beispielwurden zwei Parameter entworfen: sharpness und gimmick.

Da der gesamte Prozess für eine adaptive Berechnung des Radius nurin Bereichen durchgeführt wird, in denen der maximale Radius mehr Pho-tonen bedeckt, als durch maxPhotons gewünscht, wurde die Gleichung sogestaltet, dass an den Schnittstellen lediglich eine geringe Veränderung derRadien stattfindet, um die Schnittstellen nicht ungewollt sichtbar zu ma-chen. Durch Erhöhung der Anzahl an verschossenen Photonen oder Ver-kleinerung von maxPhotons kann der Geltungsbereich für den veränder-ten Radius jedoch beliebig vergrößert werden.

9.1 Sharpness—————————————————————————————————Durch den Parameter sharpness lässt sich der Radius der Splats verklei-nern oder vergrößern. Um die Bedingung der geringen Veränderung derRadien in den Randbereichen zu gewährleisten, wird der Wertebereich derFunktion verschoben:

radaptive ∈ [rmin : rmax]

radaptive − rmax ∈ [rmin − rmax : 0]

Durch diese Verschiebung ändert eine Skalierung der Funktion kaum et-was an den ursprünglich annähernd maximalen Radien der Randbereiche,die durch

(radaptive − rmax) · sharpness+ rmax

wieder annähernd rekonstruiert werden können. Alle übrigen Werte wur-den durch sharpness verändert. Werte, an denen man sich orientieren kann,sind hierbei:

sharpness = 0.0 : unverändertes Photon Splatting(= rmax)

sharpness = 1.0 : adaptives Photon Splattingsharpness > 1.0 : Verkleinerung der Splats (bis hin zum Verschwinden)

72

Page 79: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Abbildung 42 zeigt die Auswirkung von sharpness. Die obere Funktionstellt einen möglichen Verlauf der Größe von radaptive dar:

radaptive

rmax

0

(radaptive - rmax) * sharpness(>1)

rmax

0

rmax

0(radaptive - rmax) * sharpness + rmax

(a) shaprness > 1

(radaptive - rmax) * sharpness + rmax

radaptive

rmax

0

(radaptive - rmax) * sharpness(<1)

rmax

0

rmax

0

(b) sharpness < 1

Abbildung 42: Auswirkung von sharpness auf radaptive

73

Page 80: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

9.2 Gimmick—————————————————————————————————Der Parameter gimmick bedient sich dem Fehler tooMuch(r1) des erstenRadius. Auch hier findet zuerst eine Verschiebung der Werte von tooMuch(r1)statt, die dann durch gimmick skaliert und dem ursprünglichen Radiushinzuaddiert werden.

tooMuch(r1)

tooMuch(r1)− 1

radaptive + (tooMuch(r1)− 1) · gimmick

Werte, an denen man sich hier orientieren kann, sind:

gimmick < 0.0 : Radius in Randbereichen wird größer und in Highlights kleinergimmick = 0.0 : unveränderter Radiusgimmick > 0.0 : Radius in Randbereichen wird kleiner und in Highlights größer

74

Page 81: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

Abbildung 43 zeigt anhand eines möglichen Verlaufs von tooMuch(r1), wiesich eine Skalierung auswirkt. Zur Verdeutlichung wurden Gimmick-Wertevon (> 1) und (< −1) genommen:

tooMuch(r1)

1

tooMuch(r1) - 1

0

(tooMuch(r1) - 1) * gimmick(>1)

0

(a) gimmick > 1

tooMuch(r1)

1

tooMuch(r1) - 1

0

(tooMuch(r1) - 1) * gimmick(<-1)

0

(b) gimmick < −1

Abbildung 43: Auswirkung von gimmick auf tooMuch(r1)

Um die Radien innerhalb der Highlights und in den Randbereichen sepa-rat verändern zu können, wurde gimmick auf gimmick1 und gimmick2aufgeteilt.

75

Page 82: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

9.3 Zusammenfassung—————————————————————————————————Für den endgültigen Radius, mit dem ein Splat gezeichnet wird, gilt zu-sammenfassend:

r =

rmax nrSplats(rmax) <= maxPhotons

rgimmick nrSplats(rmax) > maxPhotons

rgimmick =

rgimmick1 nrSplats(r1) <= maxPhotons

rgimmick2 nrSplats(r1) > maxPhotons

rgimmick1 = (r1 + r2

2− rmax) · sharpness+ rmax + (tooMuch(r1)− 1) · gimmick1

rgimmick2 = (r1 + r2

2− rmax) · sharpness+ rmax + (tooMuch(r1)− 1) · gimmick2

r2 =

√r2

1

tooMuch(r1)tooMuch(r1) =

nrSplats(r1)

maxPhotons

r1 =

√r2max

tooMuch(rmax)tooMuch(rmax) =

nrSplats(rmax)

maxPhotons

sharpness ∈ [−∞ : +∞] Default = 1.0

gimmick1,2 ∈ [−∞ : +∞] Default = 0.0

wobei für (sharpness = gimmick1,2 = default) gilt → adaptives PhotonSplatting und für (sharpness = 0.0) und (gimmick1,2 = default) → ur-sprüngliches Photon Splatting.

76

Page 83: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

9.4 Implementierung—————————————————————————————————Die Implementierung der Caustic Gimmicks geschieht nach dem gleichenPrinzip wie die des adaptiven Photon Splattings. Lediglich im letzten Ren-derdurchlauf werden die Parameter sharpness und gimmick1 bzw. gimmick2

hinzugefügt.

9.5 Ergebnisse Caustic Gimmicks—————————————————————————————————Da kein vergleichbares Verfahren zur Veränderung der Radien bekannt ist,beschränkt sich dieses Kapitel auf das Zeigen und Erläutern einer Auswahlan Bildern, die sich durch die zwei hinzugefügten Parameter erzeugen las-sen.

Auf dem Boden der Szene ist ein Löffel des Stanford Bunnys aus Glas zusehen, in dem sich die Lichtquelle befindet. Dahinter ist die Rückwand derCornell-Box, auf der sich Kaustik-Photonen gesammelt haben. Um die Ef-fekte zu verdeutlichen, wurden die globalen Photonen nicht gezeichnet.Insgesamt wurden 190.000 Kaustik-Photonen erzeugt, wobei der maxima-le Radius auf 0.1 und maxPhotons auf 50 gesetzt wurde. Das Berechnenaller Bilder hat zwischen 20 und 30 Sekunden gedauert.

9.5.1 Sharpness

—————————————————————————————————Bei Bilderserie 1 auf S. 78 wurde sharpness vergrößert und gimmick auf 0.0gesetzt, wodurch sich dieser nicht auf den Radius auswirkt.

Das erste Bild mit sharpness = 0.0 entspricht dem ursprünglichen PhotonSplatting mit konstantem Radius von 0.1. Für sharpness = 1.0 (Bild 1.3)ergibt sich der Radius des adaptiven Splattings. Bilder 1.4 bis 1.6 zeigen,wie sich eine Verkleinerung der Radien innerhalb der Bereiche mitnrPhotons(rmax) > maxPhotons auswirkt. Der Grad der Verkleinerunghängt neben dem Wert von sharpness von dem Wert der zugrundeliegen-den Dichte ab: Aus großen Werten (innerhalb der Highlights) folgt einestarke Verkleinerung der Radien und aus kleinen Werten (der Randberei-che) eine geringe Verkleinerung.

77

Page 84: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

1.1Sharpness = 0.00

Gimmick1 = 0.00

Gimmick2 = 0.00

1.2Sharpness = 0.50

Gimmick1 = 0.00

Gimmick2 = 0.00

1.3Sharpness = 1.00

Gimmick1 = 0.00

Gimmick2 = 0.00

1.4Sharpness = 1.05

Gimmick1 = 0.00

Gimmick2 = 0.00

1.5Sharpness = 1.10

Gimmick1 = 0.00

Gimmick2 = 0.00

1.6Sharpness = 1.20

Gimmick1 = 0.00

Gimmick2 = 0.00

78

Page 85: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

9.5.2 Gimmick

—————————————————————————————————Bilderserie 2 (S. 80) zeigt den Effekt von gimmick1 und gimmick2, wenndiese auf den gleichen Wert gesetzt werden (lediglich das letzte Bild wurdedurch zwei verschiedene Werte erzeugt). Bilder 2.1 und 2.2 zeigen die Aus-wirkung von zwei negativen gimmick-Werten: Die Radien der Randberei-che bis zu den interpretierten Wendepunkten werden vergrößert und Radi-en der Highlights verkleinert. Bild 2.3 entspricht dem adaptiven Splatting.Bilder 2.4 bis 2.6 zeigen den Effekt von zwei positiven gimmick-Werten:Die Radien der Randbereiche werden kleiner und die der Highlights grö-ßer.

Bilderserie 3 (S. 81) zeigt, was geschieht, wenn sich beide Radien verklei-nern: Zum Vorschein kommen die interpretierten Wendepunkte und Rand-bereiche von nrPhotons > maxPhotons.

79

Page 86: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

2.1Sharpness = 1.00

Gimmick1 = −0.12

Gimmick2 = −0.12

2.2Sharpness = 1.00

Gimmick1 = −0.03

Gimmick2 = −0.03

2.3Sharpness = 1.00

Gimmick1 = 0.00

Gimmick2 = 0.00

2.4Sharpness = 1.00

Gimmick1 = 0.03

Gimmick2 = 0.03

2.5Sharpness = 1.00

Gimmick1 = 0.09

Gimmick2 = 0.09

2.6Sharpness = 1.00

Gimmick1 = 0.10

Gimmick2 = 0.20

80

Page 87: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

3.1Sharpness = 1.00

Gimmick1 = 0.00

Gimmick2 = 0.00

3.2Sharpness = 1.00

Gimmick1 = 0.02

Gimmick2 = −0.02

3.3Sharpness = 1.00

Gimmick1 = 0.04

Gimmick2 = −0.04

3.4Sharpness = 1.00

Gimmick1 = 0.12

Gimmick2 = −0.12

81

Page 88: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

9.6 Bewertung—————————————————————————————————Es wurde gezeigt, dass sich der Radius der Splats durch Verwendung künst-licher Parameter abhängig von den Werten der zugrundeliegenden Dichte-funktion gleichmäßig verändern lässt. Der Parameter sharpness kann ver-wendet werden, um Highlights schärfer erscheinen zu lassen, ohne gewolltgroße Radien der Randbereiche zu verkleinern.

Um den Nutzen eines bewusst veränderten Radius im Rahmen derphotorealistischen Bildsynthese beurteilen zu können, müssten jedoch Testsunter besseren Rahmenbedingungen und evtl. der Entwurf neuer Parame-ter erfolgen.

82

Page 89: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

10 Zusammenfassung—————————————————————————————————Es wurde ein Weg gefunden, GPU- bzw. bildbasiertes Photon Splatting inein CPU-basiertes System zur Synthese photometrisch konsistenter Bilderzu integrieren, ohne einen Qualitätsverlust herbeizuführen. Es hat sich je-doch herausgestellt, dass das selektive Photon Splatting nicht für Grafik-karten der älteren Generation und verhältnismäßig leistungsschwache deraktuellen Generation geeignet ist. Gleichzeitig lässt sich annehmen, dassdas selektive Photon Splatting bei einer leistungsstärkeren Grafikkarte denangestrebten offensichtlicheren Performance-Vorteil mit sich führt.

Darüber hinaus wurde der einfache im selektiven Photon Splatting um-gesetzte Splatting-Ansatz ohne gravierenden Performance-Nachteil durcheinen adaptiven Radius in Bereichen mit einer hohen Dichte an Photonenwesentlich verbessert und gezeigt, dass sich der adaptive Radius abhän-gig von der Dichte der Photonen bewusst manipulieren lässt, wobei eineBeurteilung des Nutzens des Letzteren noch offen steht.

Zusammenfassend lässt sich sagen, dass das selektive Photon Splatting einVerfahren ist, mit dem sich qualitativ hochwertige und photometrisch kon-sistente Bilder erzeugen lassen, dies in Zukunft mit Grafikkarten nächsterGenerationen voraussichtlich sehr schnell geschehen kann und das Weiter-entwicklungspotential besitzt.

11 Future Work—————————————————————————————————Da einfaches Photon Splatting zu relativ großen Fehlerbereichen führt undgleichzeitig die Möglichkeit besteht, dies zu verbessern, bietet sich eineWeiterentwicklung an, um beim selektiven Photon Splatting die Strahldich-te an wenigeren Stellen durch den rechenintensiven Radiance-Estimate desPhoton Mappings auswerten lassen zu müssen. Hierzu ließe sich das adap-tive Splatting durch ein verbessertes Verfahren zur Detektion von Kantenoder nach Korrektur der Fehlerbereiche um die Kanten integrieren.

Beim adaptiven Photon Splatting erfolgt eine Korrektur des Radius unterAnnahme einer ebenen Oberfläche, was bei komplexer Geometrie zu Feh-lern führt (wie auch beim ursprünglichen Photon Splatting). Daher sollteein Verfahren integriert werden, mit dem sich die Größe des Radius unterBerücksichtigung der Geometrie bestimmen lässt. Darüber hinaus solltedie Einsatzfähigkeit bei Verwendung anderer Materialien überprüft wer-den und getestet werden, ob sich ein zusätzlicher Renderdurchlauf zur Be-stimmung von radaptive bei einer größeren Menge an Photonen lohnt oder

83

Page 90: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

sich die Unterschiede zu r1 auf ein Minimum reduzierten. Durch Einsatzeines anderen Kerns ließe sich eventuell bei gleicher Anzahl an Photonenohne Qualitätsverlust ein Renderdurchlauf einsparen.

Die Parameter der Caustic Gimmicks wurden nur zu Demonstrations-Zweckenvorgestellt – hier gilt es, zu überprüfen, ob sich durch Integration andererParameter nützliche Informationen für die photorealistische Bildsynthesegewinnen ließen.

84

Page 91: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

12 Literatur—————————————————————————————————

[1] J. Bärz, N. Henrich und S. Müller:”Validating Photometric and Colorimetric Consistency of Physically-Based Image Synthesis”.In: 5th European Conference on Colour in Graphics, Imaging, and Vision,Finland, 2010.

[2] S. Collins:”Adaptive Splatting for Specular to Diffuse Light Transport”.In: Proceedings of the 5th EuroGraphics Workshop on Rendering, S. 119-135,Darmstadt, 1994.

[3] R. Cook, T. Porter und L. Carpenter:”Distributed ray tracing”.In: ACM SIGGRAPH Computer Graphics, 18(3), S. 137-145,ACM, New York, 1984.

[4] C. Dachsberger und M. Stamminger:”Splatting Indirect Illumination”.In: Symposium on Interactive 3D Graphics, S. 93-100,ACM, New York, 2006.

[5] P. Dutré:Global Illumination Compendium.Katholieke Universiteit Leuven, 2003.

[6] P. Dutré, K. Bala und P. Bekaert:Advanced Global Illumination.A K Peters, Ltd. Wellesley, 2. Ausgabe, Massachusetts, 2006.

[7] B. Fabianowski und J. Dingliana:”Interactive Global Photon Mapping”.In: Computer Graphics Forum, 28(4), S. 1151-1159,Eurographics Symposium on Rendering 2009.

[8] R. P. Feynman:QED. Die seltsame Theorie des Lichts und der Materie.Piper Verlag, 11. Auflage, München, 2005.

85

Page 92: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

[9] C. M. Goral, K. E. Torrance, D. P. Greenberg und B. Battaile:”Modeling the interaction of light between diffuse surfaces”.In: ACM SIGGRAPH Computer Graphics, 18(3), S. 213-222,ACM, New York, 1984.

[10] S. Greif und E. Gürbüz:”Sketch-Shading von 3D-Objekten”.Paper zur Veranstaltung Vertiefung aktueller Themen in der Computer Graphik,Hochschule Darmstadt, SS 2007.

[11] E. Hecht:Optik.Oldenbourg Wissenschaftsverlag GmbH, 4. Auflage, München, 2005.

[12] N. Henrich:Differentielles Photon Mapping auf der GPU.Diplomarbeit, Universität Koblenz-Landau, Dezember 2007.

[13] J. Hermes:Progressive Global Illumination using Depth Peeling.Diplomarbeit, Universität Koblenz-Landau, September 2009.

[14] R. Herzog, V. Havaran, S. Kinuwaki, K. Myszkowski und H.-P. Seidel:”Global Illumination using Photon Ray Splatting”.In: Proceedings of Eurographics 2007, 26(3), S. 503-513.

[15] H. W. Jensen:Realistic Image Synthesis Using Photon Mapping.A K Peters Ltd., Natrick, Massachusetts, 2001.

[16] J. T. Kajiya:”The Rendering Equation”.In: ACM SIGGRAPH Computer Graphics, 20(4), S. 143-150,ACM, New York, 1986.

[17] F. S. Kleiner und C. J. Mamiya:Gardner’s Art through the Ages.Thomson Wadsworth Verlag, 12. Ausgabe, Band 1, Californien, 2005.

[18] F. S. Kleiner und C. J. Mamiya:Gardner’s Art through the Ages. The Western Perspective.Thomson Wadsworth Verlag, 11. Ausgabe, Band 2, Californien, 2003.

86

Page 93: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

[19] S. Kokoschka:Grundlagen der Lichttechnik.Script zur Vorlesung, Universität Karlsruhe, 2003.

[20] W. Kresse:Photometrisch konsistente Radiositysimulation und Bildwiedergabe in Virtual undAugmented Reality Anwendungen.Dissertation, Technische Universität Darmstadt, September 2003.

[21] F. Lavignotte und M. Paulin:”Scalable Photon Splatting for Global Illumination”.In: Computer graphics and interactive techniques in Australasia and South East Asia, S. 203-211,ACM, New York, 2003.

[22] S. Müller:Photorealistische Computergraphik.Vorlesungsunterlagen, Universität Koblenz-Landau, SS 2005.

[23] G. Nichols und C. Wyman:”Interactive Indirect Illumination Using Adaptive Multiresolution Splatting”.In: IEEE Transactions on Visualization and Computer Graphics, 16(5), S. 729-741, 2010.

[24] M. Pätzold:Photon Splatting auf der GPU.Diplomarbeit, Universität Koblenz-Landau, November 2008.

[25] T. Purcell, C. Donner, M. Cammarano, H. W. Jensen und P. Hanrahan:”Photon Mapping on Programmable Graphics Hardware”.In: International Conference on Computer Graphics and Interactive Techniques,ACM SIGGRAPH 2005, ACM, Los Angeles, 2005.

[26] R. J. Rost, B. Licea-Kane, D. Ginsburg, J. M. Kessenich, B. Lichtenbelt,H. Malan und M. Weiblen:OpenGL Shading LanguageAddison-Wesley Longman, 3. Ausgabe, Amsterdam, 2009.

[27] L. Schjøth:Anisotropic Density Estimation in Global Illumination. a journey through time and space.Dissertation, University of Copenhagen, 2009.

[28] W. Schöne:Über das Licht in der Malerei.Mann Verlag, 7. Auflage, Berlin, 1989.

87

Page 94: Selektives spektrales High-Quality Photon-Splattingcg/Diplomarbeiten/DA_NinaDamasky.pdf · Gesetze der Geometrie etwa helfen bei der Model-lierung und Theorien der Optik bei der Abbildung

[29] D. Shreiner, M. Woo, J. Neider und T. Davis:OpenGL Programming Guide. The Official Guide to Learning OpenGL. 5. Ausgabe,Addison-Wesley, Massachusetts, 2005.

[30] B. W. Silverman:Density Estimation for statistics and data analysis.Chapman and Hall, London, 1986.

[31] W. Stürzlinger und R. Bastos :”Interactive Rendering of Globally Illuminated Glossy Scenes”.In: Proceedings of the Eurographics Workshop on Rendering Techniques ’97, S. 93-102,Springer Verlag, London, 1997.

[32] T. Whitted:”An improved illumination model for shaded display”.In: Communications of the ACM, 23(6), S. 343-349,ACM, New York, 1980.

[33] C. Wynn:An Introduction to BRDF-Based Lighting.NVIDIA Corporation, 2000Dokument hinterlegt auf: http://developer.nvidia.com/object/BRDFbased_Lighting.htmlAbgerufen am 28. September 2010.

[34] The Stanford 3D Scanning Repository.Website des Stanford University Computer Graphics Laboratory, 2010URL: http://graphics.stanford.edu/data/3Dscanrep/Abgerufen am 28. September 2010.

88