3D-IVUSView @ Helge Konetzka

Überblick

Oberflaeche 3D-IVUSView ist ein Werkzeug zur dreidimensionalen Rekonstruktion und Visualisierung von Herzkranzgefäßen aus intravaskulären Ultraschallaufnahmen und biplanaren Angiografien. Einen visuellen Eindruck zu den Arbeitsschritten des Programms bietet das Plakat zu 3D-IVUSView.

Funktionsumfang und Arbeitsweise

Startbildschirm Konkret haben wir aus handelsüblichen Geräten die aus der Untersuchung gewonnenen Daten importiert. Hierfür wurden die komplexen DICOM-Dateien mit den Angiografien ausgelesen und dem ausführenden Arzt zur Auswahl gestellt. Nach Auswahl der optimalen Angiographien wird der dreidimensionale Pfad des Katheters rekonstruiert, indem zunächst dieser Pfad auf den zweidimensionalen Aufnahmen segmentiert, vom Behandelnden korrigiert und schliesslich mit Verfahren der epipolaren Geometrie berechnet wird.

Startbildschirm Weiter müssen die Ultraschallaufnahmen dem proprietären MEDIS-Format entnommen werden. Nachdem dies geschehen ist, können die Positionen auf dem dreidimensionalen Katheterpfad berechnet werden, um die Ultraschallaufnahmen hier anzuordnen. Für diese Plazierung wurden spezielle auf Splines basierende Algorithmen entwickelt.

Startbildschirm Nachdem diese Daten nun korrekt im Raum vorliegen, wird ein speziell entwickelter Algorithmus angewandt, um ein dreidimensionales Voxelmodell zu berechnen. Dieses kann nun mithilfe einer eigens entwickelten Visualisierungsumgebung dargestellt werden. Anhand dieses Modells können stochastische Berechnungen zur Bestrahlungplanung im Rahmen der Brachytherapie durchgeführt werden.

Der Interpolationsalgorithmus

Einerseits müssen Voxelintensitäten berechnet werden, andererseits die Voxel bezüglich der Segmentzugehörigkeit klassifiziert werden.

Anforderungen

Der Algorithmus muss große Datenmengen verarbeiten (mehrere zwei-dimensionale Bilder - km²) und erzeugen (ein oder zwei drei-dimensionales Voxelmodell - n³), also sehr effizient sein, da sonst leicht Rechenzeit O(m²n³) entsteht (Trivialerweise betrachtet man zur Interpolation eines Voxel nicht alle Bilder des Bildstapels).

Die Strukturen verlaufen entlang dem Katheterpfad. Also muss versucht werden, dementsprechend von dem einen Bild in das andere zu überführen.

Neben diesen speziellen Anforderungen, gelten die üblichen: Genauigkeit, Cx-Stetigkeit (x maximal), Kontrastreichtum.

Lösungsansatz

Ausgehend vom Katheterpfad müssen Punkte auf den direkt umgebenden Bildern bestimmt werden, die für die Berechnung des Voxel ausschlaggebend sein sollen. Dann können konstant viele Pixel zur Berechnung herangezogen und somit eine Rechenzeit O(n³) erreicht werden.

Die beiden Bildebenen können nun auf zwei Arten in Beziehung zueinander stehen. Sie können parallel zueinander sein oder sich schneiden. Sind sie parallel zueinander, sollte der Katheterpfad durch eine Gerade angenähert werden. Ansonsten durch eine geeignete Kurve, in diesem Fall einen verschobenen Kreisbogen um die Schnittgerade der Schnittebenen.

Interpolation bei parallelen Bildebenen

Katheterpfad Hier soll dargestellt werden, wie bei parallelen Bildebenen der Katheterpfad durch die Bildzentren (Katheterpunkte) geht und somit eine Gerade darstellt.
Voxelpfad Verschiebt man diese Gerade so, dass sie durch das gegebene Voxel geht, erhält man auf beiden Bildebenen je einen Punkt aus deren Werten die Voxelwerte berechnet werden.

Interpolation bei geschnittenen Bildebenen

Katheterpfad Bei geschnittenen Bildebenen bildet man den Katheterpfad durch einen Kreisbogen, ausgehend von der Schnittgeraden, nach, wobei die Verschiebungen entlang der Schnittgerade und vertikal zur Schnittgeraden eingerechnet werden muss.
Voxelpfad Diese Kurve wird nun so verschoben, dass sie durch das gegebene Voxel geht. Wieder erhält man auf beiden Bildebenen je einen Punkt aus deren Werten die Voxelwerte berechnet werden.

Punkte auf den Bildebenen

Da die Punkte auf den Bildebenen keine Pixel sind, müssen die Werte dieser Punkte vor der Berechnung der Voxel bestimmt werden. Dies wird mit Abstandsgewichteter Streudateninterpolation durchgeführt. Damit das sehr schnell geht, wird der komplette Abschnitt, den die beiden Bildebenen einschließen, in Boxen eingeteilt. Für die Punkte auf den Bildebenen werden die Boxen errechnet, deren Pixel relevant sind; nur diese Pixel werden im Algorithmus verrechnet. Durch die Erstellung eines Index über die Pixel ist die Berechnung der Werte eines Punktes auf einer Bildebene in konstanter Zeit möglich.

Voxelmodell

Der Bilderstapel wird derart im Weltkoordinatensystem rotiert, so dass das Voxelmodell minimale Größe hat und somit minimalen Speicherplatz braucht.

Fazit

Da das einzelne Voxel in konstanter Zeit berechnet wird und eine minimale Voxelanzahl berechnet wird, ist die Komplexität der Rechenzeit optimal. Da nur der Platzbedarf der Voxel kritisch ist, ist aus den gleichen Gründen der Platzverbrauch optimal.
Nichtsdestotrotz bleiben beide Größen kritisch, da beide mit O(n³) beschränkt sind. Bei doppelter Genauigkeit vergrößern sich Rechenzeit und Platzbedarf um das Achtfache.

Die Forderung nach Kontrastreichtum kann mit dieser Interpolation gut erfüllt werden, da nur Pixel in kleinstem Bereich für ein Voxel verarbeitet werden. Die Interpolationsgenauigkeit, also die Auflösung des Voxelmodells kann aufgrund der Effizienz des Algorithmus hoch angesetzt werden. Das Ergebnis ist allerdings nur C0-stetig.
Die Qualität der Interpolation kann am besten anhand interpolierter, visualisierter Volumina bewertet werden, hierfür wird auf den im Fachbereich einsehbaren Endbericht zum Projekt verwiesen.