| |
3. Kapitel
3 Medizinische Softwaresysteme
Ein Computer-, Kernspin- oder Ultraschall-Tomograph liefert einen Stapel von Schnittbildern, die selbst aus
Grauwerten bestehen. Die Grauwerte sagen hier etwas über die Gewebedichte aus.
Wenn nun die Schnittbilder übereinander gestapelt werden, ergibt sich ein dreidimensionaler Datensatz, der zum
Beispiel die räumliche Struktur eines Kopfes wiedergibt. Hier könnte ein Bildverarbeitungsprogramm helfen, indem
es dem Betrachter das Datenvolumen auf dem Bildschirm so präsentiert, als würde er ihn aus einer räumlichen
Perspektive sehen. Es wäre allerdings nutzlos, wenn Grauwerte einfach als Grauwerte dargestellt würden. Denn
dann wäre der Datenquader genauso undurchsichtig wie der menschliche Körper selbst. Deshalb interpretiert man
die Grauwerte als Durchsichtigkeiten: zum Beispiel, je höher der Wert, desto stärker absorbiert oder reflektiert eine
vorgestellte Substanz, die man sich anstelle des menschlichen Körpers denkt, das Licht. Man zeigt also dem
Betrachter das Bild, das sich ergeben würde, wenn diese Substanz aus einer Richtung beleuchtet würde. Man kann
auch bei solcher Software den Durchsichtigkeitsgrad von Objekten beliebig wählen.
Der letzte Punkt ist besonders wichtig, denn man möchte diejenigen Gewebe, die die eigentliche Struktur, die man
beobachten
möchte,
überdecken
vollständig
oder
halb
transparent
machen.
Zum
Beispiel
bei
Computertomogrammen hat der Knochen einen hohen Grauwert. Wenn man nun hohen Grauwerten auch hohe
Durchsichtigkeit zuordnet, wird das Licht bei der Beleuchtung wenig absorbiert und somit kann man hinter dem
Schädel das Gehirn sehen.
Der Rechenaufwand für diese Lichtstrahlverfolgung ist allerdings erheblich. Man muss sehr viele Strahlen von
Voxel zu Voxel verfolgen und für jedes einzelne Voxel berechnen um wie viel es den Lichtstrahl abschwächt oder
reflektiert. Selbst wenn man sich auf einfache Geometrien beschränkt, braucht ein moderner Computer für ein Bild
aus einem Datenvolumen mit 256x256x256 Punkten immer noch viel Rechenzeit.
Wenn man nun bewegte Bilder in Echtzeit darstellen möchte, so dass der Betrachter sein Objekt in verschiedene
Positionen bewegen kann, muss man die Rechenzeit für einzelne Bilder verkürzen, denn für ein fernsehfilmartiges
Bilderlebnis müssen ungefähr 25 Bilder pro Sekunde neu berechnet werden.
Für die Rechenzeitverkürzung kann man folgende Ansätze verwenden:
-
Bereiche im Datensatz, die völlig transparent sind können übersprungen werden. Wenn der Benutzer
beispielsweise nur den Schädelknochen sehen will, kann er alle andere Gewebe als transparent definieren
und somit ist dann 90 Prozent des Raumes im Datenvolumen leer, was die Rechenzeit entsprechend
reduziert.
-
Die Strahlenverfolgung kann abgebrochen werden, so bald ein Lichtstrahl auf seinem Weg durch den
Datensatz durch Absorption so weit abgeschwächt wird, dass er vernachlässigbar ist. Das spart Rechenzeit,
wenn sich im Datensatz viele undurchsichtige Objekte befinden. Wenn zum Beispiel ein Schädelknochen
als undurchsichtig dargestellt werden soll, muss das Licht nur bis zum Schädelknochen verfolgt werden.
-
Bei Echtzeit-Visualisierung kann man bewegte Bilder mit reduzierter Auflösung darstellen, da die
geringere Genauigkeit bei bewegten Bildern nicht so störend ist als bei stehenden Bildern. Das heißt, dass
sich die Auflösung reduziert, solange der Benutzer Parameter wie Blickwinkel und Position ändert. Die
volle Auflösung wird erst dann berechnet, wenn der Benutzer eine Zeit lang gewissermaßen stillhält.
|  |
|
| |
|
|