Indirect Volume Visualization Flashcards
Was sind indirekte Methoden der Volume Visualization?
Berechnen und rendern von (iso-)surfaces innerhalb eines scalar fields (ähnlich zu isolines)
Was sind direkte Methoden der Volume Visualization?
Betrachte das scalar field als ein transparentes Medium und verwende physikalisch basierte Intensitätsberechnung entlang von Strahlen (Volume Ray-casting)
Wofür braucht man Medical Imaging?
Medical Imaging unterstützt die Diagnostizierung und Behandlungsplanung
Welche Arten von bildgebenden Verfahren werden in der Medizin angewandt?
- Computer Tomography (CT): verwendet Röntgenbilder um ein 3D Volumen zu rekonstruieren
- Magnetic Resonance Tomography (MRT): regt Wasserstoffatome zur Aussendung einer Radiofrequenz an
- Ultraschall
Was sind 3D Isosurfaces?
Isosurfaces sind die 3D analogen Isolines: Flächen, mit einem konstanten scalar Value
Wie lautet der Ansatz zur Berechnung von Isosurfaces?
- Wähle einen Isovalue
- Betrachte die (quaderförmigen) Zellen, die aus acht Datenpunkten bestehen
- Klassifiziere jeden Eckpunkt als + oder - je nachdem, ob dieser Datenwert in diesem Punkt höher oder niedriger als der Isovalue ist
- Berechne, wo die Isofläche die Edges schneidet
- Berechne Triangulation
Wie lautet die Basis Idee vom Marching Cubes Algorithmus?
- Jede Zelle hat 8 Vertices
- Jeder Vertex kann entweder als + oder - klassifiziert werden
- 256 Möglichkeiten
- Jede Zell-Konfiguration hat einen bestimmten Index
- Für jeden gegebenen Index kann die Triangulation in einer LUT nachgeschaut werden
- Nachdem man Symmetrie und Rotation vernachlässigt, gibt es noch 15 verschiedene Fälle
Wann ist ein face ambiguous im Marching Cubes Algorithmus?
- Wenn das Isosurface alle seine Kanten schneidet
- Wenn man n ambiguous faces hat, resultieren darauf 2^n mögliche Triangulationen
Wie lautet der generelle Ansatz, wenn wir ein ambiguous face betrachten?
- Verwendung eines 2D Decider, um über die Schnittkanten zu entscheiden
- Trianguliere die resultierenden Randedges
Wie lautet der Marching Cubes Algorithmus?
- Berechne den Index anhand der Vorzeichen der Eckpunkte unter Verwendung des Isovalues
- Berechne Schnittpunkte aller Edges mit unterschiedlichem Vorzeichen
- Unterschiedliche Behandlung je nachdem ob Zelle eindeutig ist (Nachschlagen von Dreiecksdaten in der LUT) oder wenn Zelle mehrdeutig ist
Wie lautet der Marching Cubes Algorithmus, wenn eine Zelle mehrdeutig ist?
- Nachschlagen der mehrdeutigen faces in der LUT
- Für jedes mehrdeutige face: Treffe eine Entscheidung mit Hilfe des midpoint oder asymptotic deciders
- Berechne sekundären Index auf Basis der mehrdeutigen Entscheidung
- Nachschlagen der Dreiecksdaten in der sekundären LUT
Wie lautet die Erweiterung des Marching Cubes Algorithmus?
Da die extrahierten Flächen beleuchtet werden, müssen wir die Normalenvektoren berechnen
Welche zwei Methoden gibt es zur Berechnung der Normalenvektoren für den Marching Cubes Algorithmus?
- Berechne den Normalenvektor unter Verwendung der Dreieckspunkte erzeugt durch Marching Cubes (per face oder per vertex)
- Berechne den Gradientenvektor des scalar fields für jeden Vertex während der Berechnung der Isosurfaces unter Verwendung von central differences und Interpolation an den Schnittpunkten
Was sind die Schwächen des Marching Cubes Algorithmus?
- Der Algorithmus erzeugt eine Menge sehr kleiner Dreiecke
- Relativ lange Berechnungszeit (Viel Zeit wird für die Berechnung leerer Zellen verwendet)
Welche Methoden zur Beschleunigung für den Marching Cubes Algorithmus gibt es?
- Hierarchical grids können verwendet werden, um die minimalen und maximalen scalar values pro Hierarchieknoten zu speichern, so dass Knoten, die keine Werte enthalten verworfen werden können
- Contour tracing