Seminar in Computer Graphik Volume Rendering präsentiert von Alena Bulyha Seminar in Computer Graphik WS 2003/04 Prof. Dr.Elmar Schömer
X-ray Computer Tomography Detektor Quelle
Motivation
Volume rendering Direkte Verfahren. Ray casting Voxelprojektion Indirekte Verfahren Marching cubes algorithm Bei der Binären Voxel Technik (‚binary voxel technique‘) wird jeder Voxel als ein eigenes, unabhängiges 3D-Objekt betrachtet. Die vorbestimmte und unabhängige geometrische Repräsentation jedes Voxels erlaubt es, all diese separat zu rendern, also deren Projektion auf den Bildschirm zu berechnen und darzustellen. Dagegen umgehen typische direkte (‚direct volume rendering techniques‘) mit Strahlenverfolgung arbeitende Methoden (ray tracer) diesen Projektionsprozess, haben dafür aber die Schnittpunkte aller Projektionsstrahlen mit den dreidimensionalen Objekten zu ermitteln. Das Direkte Volumen Rendering stellt die zurzeit flexibelste Visualisierungsmethode dar. Dieses System erlaubt direkte Darstellungen der Volumsdaten der 3D-Objekte, die alle per definitionem mit einem teildurchlässigen Medium gefüllt sind, welches durch eine Farbe und einen Durchlässigkeitswert für jeden einzelnen Voxel bestimmt wird
Ray casting algorithm Prinzipielle Aufbau Image plane Voxel Farbe C Körper – Menge von Voxeln Voxel – Farbe & Opasity Körperrotation um beliebige räumliche Achsen Erzeugung der parallelen Strahlen Berechnung der Farbe entlang des Strahls j Image plane k Voxel i Farbe C Opacity a (Lichtundurch- lässigkeitswert) Pixeln Strahl Körper
Ray casting algorithm Voxelklassifikation Berechnungsmethoden von Farben: -- unshading model -- shading model -- bilinear (trilinear) interpolation Beschleunigungsmethode: -- ray template
Voxelklassifikation % % „Probabilistic classification“ (von Drebin, 1988) % Die Luft % Das Fett Stückweise lineare Wahrscheinlichkeitsfunktion CT-Wert Das weiche Gewebe Der Knochen 0 0.99 CT-Wert
Berechnungsmethoden von Farben Pixel Sichtrichtung Image plane Sichtrichtung C,a Cout = Cin (1-a)+Ca Strahl Cout Cin „semi-transparent gel“ a<1 Opacity 0<= a <=1
Semi-transparent gel Beispiel Volume sliced along a cut-plane material Iso-surface Stony Brook University, Prof. Klaus Mueller
Shading model Cphong = I CL C Cshading = C (1-|N|)+Cphong |N| Cout = Cin (1-a)+Cshading a V Ny Nx Nz X-1 X+1 Nx=R(x+1,y,z)-R(x-1,y,z) Ny=R(x,y+1,z)-R(x,y-1,z) Nz=R(x,y,z+1)-R(x,y,z-1)
Shading model 1 Das Fett 0.25 Fett Gewebe Knochen 0 0.14 0.28 0.42 0.56 0.7 0.84 0.99 R(x,y,z) = (Prozentuale Anteil von Materialen) X F(Dichte) Das Fett Y-1 0.35 X-1 0.46 25% 63% 0% X+1 0.8 Das weiche Gewebe 0.65 Y+1 Der Knochen Nx= R X+1(Fett) - R X-1(Fett) Nx= 0.0 - 0.25 = -0.25 Ny= R y+1(Fett) - R y-1(Fett) Ny= 0.0 - 1. = -1.
Ray casting algorithm Beispiele Visualisierung mit und ohne Shading (Visible Man CT-Datensatz, © Schroeder et al. [1998])
Körperrotation Schnitt einen Strahl mit dem Körper Image plane Schnitt einen Strahl mit dem Körper (well-worked-out problem) Generierung der sample points Berechnung der Farbe in sample point Naiv Trilinear interpolation Strahlen Strahl
Beschleunigungsmethode Ray Template Image plane Strahlen Strahl
Beschleunigungsmethoden Bilinear interpolation A D S g d B b E ag=B*(1- g) + A*g Cg=B*(1- g) + A*g Cd=C *(1- d) + D*d CS = Cg *(1- b ) + Cd * b ad=E *(1-d ) + D*d aS = ag *(1- b ) + ad * b Cout = Cin (1- aS)+CS aS
Volume rendering Direkte Verfahren. Ray casting Voxelprojektion Indirekte Verfahren Marching cubes algorithm Bei der Binären Voxel Technik (‚binary voxel technique‘) wird jeder Voxel als ein eigenes, unabhängiges 3D-Objekt betrachtet. Die vorbestimmte und unabhängige geometrische Repräsentation jedes Voxels erlaubt es, all diese separat zu rendern, also deren Projektion auf den Bildschirm zu berechnen und darzustellen. Dagegen umgehen typische direkte (‚direct volume rendering techniques‘) mit Strahlenverfolgung arbeitende Methoden (ray tracer) diesen Projektionsprozess, haben dafür aber die Schnittpunkte aller Projektionsstrahlen mit den dreidimensionalen Objekten zu ermitteln. Das Direkte Volumen Rendering stellt die zurzeit flexibelste Visualisierungsmethode dar. Dieses System erlaubt direkte Darstellungen der Volumsdaten der 3D-Objekte, die alle per definitionem mit einem teildurchlässigen Medium gefüllt sind, welches durch eine Farbe und einen Durchlässigkeitswert für jeden einzelnen Voxel bestimmt wird
“Splatting” Verfahren (1990) von Westover Voxelprojektion “Splatting” Verfahren (1990) von Westover Front-to-bach footprint Image plane Farbe Opacity voxel Ebene Back-to-front Farbe
Voxelprojektion Footprintberechnung Gaussian Beispiel Image plane
von C. Rezk-Salama (Uni Erlangen-Nürnberg) Voxelprojektion von C. Rezk-Salama (Uni Erlangen-Nürnberg) Farbe Farbe Opacity Front to back I = Cn; T = 1-An; // Transparent For (k=n-1; k>=0; k--){ I = I+Ak*T*Ck; T = (1-Ak)*T; } Return (I); Cout = I; Back to front I = C0; For ( k=1; k<=n; k++){ I = (1-Ak)*I+Ak*Ck; } Return (I); Cout = I; Ak = a ( opacity )
Volume rendering Direkte Verfahren. Ray casting Voxelprojektion Indirekte Verfahren Marching cubes algorithm Bei der Binären Voxel Technik (‚binary voxel technique‘) wird jeder Voxel als ein eigenes, unabhängiges 3D-Objekt betrachtet. Die vorbestimmte und unabhängige geometrische Repräsentation jedes Voxels erlaubt es, all diese separat zu rendern, also deren Projektion auf den Bildschirm zu berechnen und darzustellen. Dagegen umgehen typische direkte (‚direct volume rendering techniques‘) mit Strahlenverfolgung arbeitende Methoden (ray tracer) diesen Projektionsprozess, haben dafür aber die Schnittpunkte aller Projektionsstrahlen mit den dreidimensionalen Objekten zu ermitteln. Das Direkte Volumen Rendering stellt die zurzeit flexibelste Visualisierungsmethode dar. Dieses System erlaubt direkte Darstellungen der Volumsdaten der 3D-Objekte, die alle per definitionem mit einem teildurchlässigen Medium gefüllt sind, welches durch eine Farbe und einen Durchlässigkeitswert für jeden einzelnen Voxel bestimmt wird
Marching cubes Algorithm Beispiele (Technischen Universität Darmstadt)
Marching cubes Algorithm Beispiel
Marching cubes Algorithm 2-d
Marching cubes Algorithm 3-d von Lorenson und Klein (1987) 2 6 3 4 5 7 8 10 9 13 11 12 14
Marching cubes Algorithm 3-d Nachteile die Lücke Falsche Vereinigung
Beispiele Marching cubes algorithm 23 Ebene Auflösung 512x512 Ray casting algoritm Opacity = 1
Literaturverzeichnis Großkopf, Stefan. Realitätsnahe Modellierung und Visualisierung dynamischer medizinischer Bilddaten mittels aktiver Konturen, aktiver Regionen und deformierbarer Modelle. Dissertation. TU Darmstadt 2001. http://elib.tu-darmstadt.de/diss/000182/ Medizinische Visualisierung: Galerie. http://isgwww.cs.uni-magdeburg.de/cv/lehre/MedVisualization/Vorlesungen/gallery.html MPEG movie. Volume Renderings from VolPack. http://graphics.stanford.edu/software/volpack/movies/vp_movies.html Mueller, Klaus. Volume Graphics. Stony Brook University. http://www.cs.sunysb.edu/~mueller/teaching/cse564/poly.pdf Preim, Bernhard. Visualisierungs- und Interaktionstechniken für die medizinische Ausbildung und Therapieplanung. Habilitationsschrift. Universität Bremen 2001. http://www.mevis.de/~bernhard/papers/habil.pdf Preim, Bernhard. Direkte Volumenvisualisierung. http://www.mevis.de/~bernhard/ger/medVis/VolumenvisualisierungII.ppt Rezk-Salama, Christof. Volume Rendering - Direct methods – general approaches. Universität Erlangen-Nürnberg http://www9.informatik.uni-erlangen.de/Teaching/SS2003/Vis/Material/Slides%20Volume%20Visualization%201 Watt, Alan. 3D computers graphics - 3. ed.. - Harlow, England [u.a.] : Addison-Wesley, 2000.