Studenten

Tobias Breuer

Vergleich der Performance von Multi-Volume-Rendering in Multi-GPU-shared-Memory und Multi-GPU-distributed-Memory Systemen

Durch die stetige Qualitätssteigerung bei der Erfassung von medizinischen Volumendaten und der Fortschritt in der dafür zugrunde liegenden Technik, die eine immer feinere Auflösung dieser Daten ermöglicht, wächst die Datenmenge, die bei dieser Erfassung erzeugt wird immens. Sprach man vor einigen Jahren noch von Daten im Megabyte Bereich, fallen in heutigen Tagen Daten an, die mehrere Gigabyte und zum Teil mehr umfassen.
Wenn auch zur gleichen Zeit die Performance der Hardware, die zur Visualisierung dieser Daten genutzt wird immer weiter steigt, so kann Sie doch nicht mit dem Wachstum der Daten Schritt halten.
Um bei der Visualisierung dennoch interaktive Verarbeitungsgeschwindigkeiten zu erreichen, ist eine Verteilung der Berechnung in vielen Fällen unumgänglich. Die Bachelorarbeit beschäftigt sich mit genau diesem Umstand.
Die Berechnungen, die zur Visualisierung der Volumendaten durchgeführt werden müssen, werden nach dem bekannten Devide-and-Conquer Prinzip derart in kleinere Teilprobleme aufgeteilt, dass eine Berechnung auf beliebig vielen Grafikkarten möglich wird. Dabei wird es keine Rolle spielen, ob die Grafikkarten innerhalb eines shared-Memory Systems oder in einem distributed-Memory System (Cluster) untergebracht sind.
Von besonderem Interesse ist hier jedoch der Vergleich der Performance zwischen diesen beiden Systemen und in wie weit der nötige Kommunikationsaufwand in einem shared-Memory System ein Bottleneck der Verarbeitungs-Pipeline darstellt.
Ziel der Arbeit ist es eine optimale Basis zu schaffen, für ein System, dass es uns auch in Zukunft erlauben wird die anfallende Flut von Daten in interaktiver Geschwindigkeit zu verarbeiten.

 

Tobias Breuer

Entwicklung einer effizienten Datenstruktur zur Speicherung von Nervenfaserbahnen

Die vorliegenden Daten der Nervenfaserbahnen sind hochaufgelöst, d.h. sie umfassen für ein komplettes menschliches Gehirn mehrere GByte bis TerraByte Speicher. Diese Dimensionen können nicht komplett geladen oder visualisiert werden.

Meine Aufgabe besteht darin, eine effiziente Datenstruktur zur Speicherung der Nervenfaserbahnen zu entwickeln, die die Datenmenge zur Visualisierung reduziert. Mit Hilfe eines Octrees ist man nun in der Lage die Komplexität zu verringern, da dieser die Daten unterteilt.

Rafael Pisarczyk

Mehrdimensionale Transferfunktionen

Einen großen Einfluss auf die Qualität der Volumen Visualisierung mittels Ray Casting haben die sogenannten Transferfunktionen. Sie ordnen den Grauwerten des Volumens eine Farbe und Opazität zu.

Ich beschäftige mich mit der Implementierung und dem qualitativem Vergleich von verschiedenen Transferfunktionen. Dabei handelt es sich um eine 1D pre-integrierte Transferfunktion sowie zwei mehrdimensionale Transferfunktionen, in 2D und 3D.

Jonas Pommerening


Da Volumendaten immer größer werden und die Übertragung von Daten in der Informatik interdisziplinär zum Flaschenhals wird, scheint es zunehmend notwendig sich dem Problem zu widmen. Mit CUDA und jüngst OpenCL stehen zudem Werkzeuge zur Verfügung, welche die massive Rechenleistung von Consumer-Grafikkarten auch für rechenintensive Aufgaben zugänglich machen, die in der Grafikpipeline nicht vorgesehen sind. Somit besteht auch erstmals die Möglichkeit das Übertragungsformat der Texturdaten frei zu wählen, so lange man in der Lage ist, einen Decoder auf der GPU zu implementieren.

Genau dies wollen wir realisieren. Es wird ein Framework vorgestellt, welches es ermöglicht, dreidimensionale Texturen (also Volumendaten) komprimiert und in Ausschnitten (ROI) mit wählbarer Auflösung zur Grafikkarte zu streamen und dort in den Texturspeicher zu dekomprimieren.

Die Vorteile liegen auf der Hand: Es wird weniger Texturspeicher auf der Grafikkarte benötigt, weil nur sichtbare Bereiche vorgehalten werden und dies auch nur in der jeweils benötigten Auflösung. Der Datentransfer zwischen Grafikkarte und  Hauptspeicher wird ausgeglichen; die Texturdaten müssen nicht alle gleichzeitig kopiert werden, sondern werden kontinuierlich gestreamt. Die Bildqualität kann erhöht werden, weil man durch Speicher und Rechenleistung der Grafikkarte keine harten Grenzen mehr auferlegt bekommt; die Ressourcen werden nicht durch ''unsichtbare'' Details verschwendet, sondern können zum größten Teil zur Darstellung des sichtbaren Bereichs genutzt werden.

Lars Seel

3D-Editor für hochauflösende Datensätze

Um im Kontext hochauflösender Datensätze eine intuitive und effiziente Bedienung zu gewährleisten, kümmere ich mich um die Entwicklung von benutzerfreundlichen Darstellungen und Bedienelementen. Dazu habe ich einen Editor erstellt durch den Punkte, Regionen und Volumina von besonderem Interesse ausgewählt werden können. Außerdem soll durch eine übersichtliche Darstellung der medizinischen Daten eine besonders intuitive und schnelle Auswahl dieser Objekte ermöglicht werden. Schließlich kann auf der Basis der vorgenommenen Auswahl im 3D-Modell, eine Veränderng der Modelldarstellung entwickelt werden. Denn die ausgewählten Bereiche können über dieses Bachelorarbeit hinaus zum Beispiel dazu dienen die Visualisierung bestimmter Hirnregionen zu unterstützen oder einen Kameraflug entlang einer Nervenfaser zu leiten.