005 Computerprogrammierung, Programme, Daten
Filtern
Dokumenttyp
- Masterarbeit (5) (entfernen)
Schlagworte
- 3D-Scan (1)
- BRDF (1)
- Computergrafik (1)
- Computervisualistik (1)
- GPU (1)
- Gonioreflectometer (1)
- Handsfree editing (1)
- IceCube (1)
- Neutino (1)
- Point Rendering (1)
Point Rendering
(2021)
In dieser Arbeit werden Verfahren zum Rendern von Punktdaten vorgestellt und miteinander verglichen. Die Verfahren lassen sich in zwei Kategorien unterteilen. Zum einen werden visuelle Verfahren behandelt, welche sich mit der reinen Darstellung von Punktprimitiven befassen. Hauptproblem ist dabei die Darstellung von Oberflächen, da Punktdaten im Gegensatz zu traditionellen Dreiecksnetzen keine Nachbarschaftsinformationen beinhalten. Zum anderen werden beschleunigende Datenstrukturen dargelegt, welche die echtzeitfähige Darstellung von großen Punktwolken ermöglichen. Punktwolken weisen häufig eine hohe Datenmenge auf, da diese meist durch 3D-Scanningverfahren wie z.B. Laserscanning und Photogrammetrie generiert werden.
In dieser Arbeit wird die Geschwindigkeit des Simulationscodes zur Pho-
tonenausbreitung beim IceCube-Projekt (clsim) optimiert. Der Prozess der
GPU-Code-Analyse und Leistungsoptimierung wird im Detail beschrie-
ben. Wenn beide Codes auf der gleichen Hardware ausgeführt werden,
wird ein Speedup von etwa 3x gegenüber der ursprünglichen Implemen-
tierung erreicht. Vergleicht man den unveränderten Code auf der derzeit
von IceCube verwendeten Hardware (NVIDIA GTX 1080) mit der opti-
mierten Version, die auf einer aktuellen GPU (NVIDIA A100) läuft, wird
ein Speedup von etwa 9,23x beobachtet. Alle Änderungen am Code wer-
den vorgestellt und deren Auswirkung auf die Laufzeit und Genauigkeit
der Simulation diskutiert.
Der für die Optimierung verfolgte Weg wird dann in einem Schema
verallgemeinert. Programmierer können es als Leitfaden nutzen, um große
und komplexe GPU-Programme zu optimieren. Darüber hinaus wird die
per warp job-queue, ein Entwurfsmuster für das load balancing innerhalb
eines CUDA-Thread-Blocks, im Detail besprochen.
Im Rahmen dieser Masterarbeit wird das Prinzip des hybriden Ray Tracing, einer Kombination einer Rasterisierungs-Pipeline mit Ray Tracing-Verfahren für einzelne Effekte, vorgestellt und eine Anwendung implementiert, welche innerhalb einer hybriden Ray Tracing-Pipeline Schatten, Umgebungsverdeckung
und Reflexionen berechnet und diese Effekte mit der direkten Beleuchtung kombiniert.
Das hybride Ray Tracing basiert auf der Idee, die Performance und Flexibilität von Rasterisierungs-Pipelines mit Ray Tracing zu kombinieren, um die Limitation der Rasterisierung, nicht auf die gesamte Umgebungsgeometrie an jedem Punkt zugreifen zu können, aufzuheben.
Im Rahmen der Implementation wird in die verwendete RTX-API sowie die Grafikschnittstelle Vulkan eingeführt und diese anhand der Implementation erklärt. Auf Grundlage der Ergebnisse und der Erkenntnisse bei der Nutzung der API wird diese, ihre Einsatzzwecke und Ausgereiftheit belangend, eingeschätzt.
Ein Gonioreflektometer ist ein Gerät zum Vermessen der Reflexionseigenschaften von Materialien. Ein solche Apparatur wird in dieser Arbeit mit handelsüblichen Bauteilen gebaut. Dafür werden drei Schrittmotoren und 809 Leuchtdioden mit einem Arduino-Mikrocontroller gesteuert. Als Reflexionsdaten werden RGB-Bilder mit einer industriellen Kamera aufgenommen. Zusätzlich wird eine Steuersoftware für verschiedene Aufnahmeprogramme sowie ein Renderer zum Anzeigen der vermessenen Materialien implementiert. Somit können komplette bidirektionale Reflektanz-Verteilungsfunktionen (BRDFs) aufgenommen und gerendert werden, wodurch selbst komplizierte anisotrope Materialeigenschaften repräsentierbar sind. Die Qualität der Ergebnisse ist aufgrund von Schattierungen zwar Artefakt-behaftet, jedoch können diese Artefakte durch entsprechende Algorithmen wie Inpainting weitestgehend behoben werden. Außerdem wurde das Gonioreflektometer auf andere Anwendungen übertragen. So sind ohne Veränderungen am Gerät auch 3D-Scans, Lichtfeldaufnahmen und Light-Staging möglich. Auch die Qualität der Ergebnisse dieser Aufnahmeverfahren entspricht den Erwartungen im positiven Sinne. Somit ist das in dieser Arbeit gebaute Gonioreflektometer im Vergleich zu anderen Publikationen eine breit anwendbare und kostengünstige Alternative.