Location of Repository

Implementierung algorithmischer Optimierungen für Volume-Rendering in Hardware

By Bernd Vettermann

Abstract

Diese Arbeit beschäftigt sich mit der Beschleunigung von Volumenvisualisierung. Bei der Volumenvisualisierung, auch englisch Volume-Rendering genannt, wird versucht, dreidimensionale Datensätze in einem anschaulichen zweidimensionalen Bild darzustellen. Da dies sehr hohe Ansprüche an Rechenleistung und Speicher stellt, ist es für einen interaktiven Umgang mit den Daten, zum Beispiel bei der Rotation eines gezeigten Objektes, notwendig, zur Beschleunigung spezielle Hardware-Systeme zu entwickeln. Es werden zuerst die wichtigsten Algorithmen für die Volumenvisualisierung vorgestellt und bereits existierende Volume-Rendering-Systeme erläutert. Hauptinhalt dieser Arbeit ist die Beschreibung einer neuartigen Architektur für ein Hardware-System zur Echtzeitvisualisierung dreidimensionaler Datensätze mit dem Ray-Casting-Algorithmus. Bei diesem Algorithmus wird von der Bildebene aus, für jeden Bildpunkt ein Sehstrahl durch das Volumen gelegt. Entlang des Strahlverlaufes wird das Volumen in regelmäßigen Abständen abgetastet und für jeden Abtastpunkt eine Reflexion zum Beobachter bestimmt. Auf dem Weg der Reflexionen zum Beobachter wird eine Absorption berücksichtigt und das Restlicht aller Reflexionen aufsummiert. Die Summe entspricht der Helligkeit und Farbe des Bildpunktes. Für diesen Algorithmus existieren zur Beschleunigung Optimierungstechniken, die zur Erzeugung eines Bildes, nur die unbedingt notwendigen Teile des Volumendatensatzes aus dem Hauptspeicher auslesen. Für die Echtzeitvisualisierung großer Datensätze ist deshalb eine Umsetzung der Optimierungstechniken in Hardware unbedingt notwendig. Durch sie wird allerdings ein wahlfreier Zugriff auf den Speicher notwendig und der Bearbeitungsablauf ist nicht mehr deterministisch, weshalb bisher existierende Hardware-System auf deren Umsetzung verzichten haben. In dieser Arbeit wird erstmals ein Verfahren vorgestellt, das diese Optimierungstechniken ohne Verluste in Hardware implementiert. Das Verfahren basiert auf der genauen Abstimmung dreier wesentlicher Teile: 1.Einem Pipeline-Prozessor zur parallelen Abarbeitung eines Teilbildes als Multithreading-Architektur. Multithreading bezieht sich hierbei auf den schnellen Wechsel zwischen parallel abzuarbeitenden Sehstrahlen. Hierdurch werden Verzögerungszeiten überbrückt, die bei der Berechnung der Optimierungstechniken und zwischen Adressierung und Datenauslesen des Volumenspeichers entstehen. 2.Einer optimal angepassten Speicherarchitektur, die in den Speicherbausteinen enthaltene Puffer als schnellen Zwischenspeicher (Cache) verwendet und räumlich benachbarte Volumendaten schneller abrufbar macht. 3.Einer Sortiereinrichtung, die Sehstrahlen bevorzugt bearbeitet, die bereits im Zwischenspeicher liegende Daten verwenden, um zeitraubende Seitenwechsel in den Speichern zu minimieren. Ziel war es, das System auf programmierbaren Logikbausteinen (FPGA) mit externem Hauptspeicher implementierbar zu machen, um es als Beschleunigerkarte in Standard-PCs verwenden zu können. Die Effizienz der Architektur wurde über eine C++-Simulation nachgewiesen, wogegen die Implementierbarkeit durch eine Hardware-nahe VHDL-Simulation mit anschließender Synthese überprüft wurde. Die einzelnen Aspekte der Architektur wurden auf mehreren Konferenzen vorgestellt und in der Zeitschrift IEEE Computer & Graphics veröffentlicht. Weiterhin wurde das Verfahren unter der Nummer WO9960527 beim Deutschen Patent- und Markenamt international angemeldet

Topics: 004 Informatik
Publisher: Universität Mannheim
Year: 2006
OAI identifier: oai:ub-madoc.bib.uni-mannheim.de:1385

Suggested articles

Preview


To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.