Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Visualisierung Vorlesung 10.

Ähnliche Präsentationen


Präsentation zum Thema: "Visualisierung Vorlesung 10."—  Präsentation transkript:

1 Visualisierung Vorlesung 10

2 Visualisierung von Volumendaten
Visualisierung – Vorlesung 10 WS 2005/2006

3 Volumendaten: Grundlagen – Begriffsbestimmung
Übersicht Volumendaten: Grundlagen – Begriffsbestimmung Visualisierungspipeline für Volumendaten Methoden der Volumenvisualisierung Dekompositionsmethoden Extraktion von Flächen Direkte Darstellung als semitransparente Elemente Visualisierung – Vorlesung 10 WS 2005/2006

4 Grundlagen Visualisierung von Volumendaten
Kurzbezeichnung: Volumenvisualisierung Ausgangspunkt: Merkmale in einem 3-dim. Bezugssystem mit skalaren Daten Vergleichsweise häufiger Datenfall Beispiele Computertomographie (CT) Magnetresonanztomographie (NMR, MRT, MRI) 3D-Ultraschall Laserraster- bzw. Elektronenraster-Mikroskope Simulationen Berechnungen, z.B. Finite Elemente (FE) Beispiel: CT-Aufnahme Beispiel: MRI-Aufnahme Visualisierung – Vorlesung 10 WS 2005/2006

5 Repräsentation von Volumendaten
Volumendaten i.A. basierend auf regelmäßigen Gittern Koordinaten der Gitterpunkte implizit und müssen nicht explizit gespeichert werden Speicherung in dreidimensionalen Arrays Ausgangsdaten Gitter im Raum Datengitter Visualisierung – Vorlesung 10 WS 2005/2006

6 Begriffsbestimmung „Volumendaten“
In der Literatur nicht einheitlich benutzt; doch oft: Ein skalarer Wert pro Beobachtungspunkt in einem 3-dimensionalen räumlichen Bezugssystem (oft mit lokalen Wirkungskreis) oft weiterhin: regelmäßiges 3D-Gitter: also eine Funktion f auf dem Gebiet © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

7 Begriffsbestimmung „Voxel“
Eine Gitterzelle bezeichnen wir als Volumenelement = Voxel Manche Autoren unterscheiden, je nachdem ob die Funktion f(x,y,z) als kontinuierlich oder stückweise konstant(= homogen) angenommen wird. Oft besser als Abtastwert gemäß der Abtasttheorie betrachten! Beobachtungspunkte können sein: Zentrum einer Zelle: 1 Datenpunkt pro Zelle Eckpunkt einer Zelle: 8 Datenpunkte pro Zelle © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

8 Beispiel: Volumendaten
Visible Human Project MRI- und CT-Daten eines Mannes und einer Frau in hoher Auflösung 15 GB (Visual Human Male) bzw. 40 GB (Visual Human Female) Visualisierung – Vorlesung 10 WS 2005/2006

9 Beobachtungspunkt Zentrum der Zelle
Achtung. Die Auswertung erfolgt an nx*ny*nz Punkten. © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

10 Beobachtungspunkt Eckpunkt der Zelle
Die Werteverteilung innerhalb der Zelle wird oft durch eine trilineare Interpolation (selten durch eine höherer Ordnung) bestimmt. G (0,1,1) H (1,1,1) C D (0,1,0) (1,1,0) P E (0,0,1) F (1,0,1) A (0,0,0) B (1,0,0) © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

11 Gradientenberechnung
Für diverse Aufgaben (z.B. Beleuchtungsrechnung) wird der Gradient der skalaren Funktion f(x,y,z) benötigt: Eigenschaften: Gradienten stehen senkrecht zu den Isoflächen f(x,y,z)=const. I.d.R abgeschätzt durch Zentraldifferenzen: Gx, Gy, Gz sind die Komponenten des Gradienten, sx, sy, sz sind die Schrittweiten des Gitters © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

12 Visualisierungspipeline für Volumendaten
Datenumfang in der Regel sehr groß: Datenwürfel von nur 64 x 64 x 64 Voxel entsprechen mit 4Byte/Voxel 1 MByte Daten 512 x 512 x 512 Voxel entsprechend 512 MByte © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

13 Datenaufbereitung Filtering
Datenerfassung und -konvertierung in geeignete Formate, Datenvervollständigung, Datenreduktion und Überführung von skalaren Daten in einem räumlichen Bezugssystem auf ein regelmäßiges Gitter. © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

14 Datenaufbereitung Mapping
Abbildung der Datenwerte auf graphische (visuelle) Attribute Klassifikation Datenklassen werden Grauwert, Farbwerte oder Transparenzwerte zugeordnet z.B. mit LUTs Sehr sensibler Schritt: Potentiell fehlerinduzierend! [Drebbin, Levoy] schlagen deshalb Fuzzy-Klassen vor: Datenwert wird eine Zugehörwahrscheinlichkeit zu einem Attributwert zugeordnet, nicht der Attributwert selbst. Ergebnis kann gerendert werden  direkte Darstellung oder  Flächenextraktion (Ermittlung von Isoflächen) © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

15 Strategien zur Volumenvisualisierung
Dekomposition der Datenmenge in Punkte, Volumenelemente oder Schichten und Darstellung dieser Elemente Flächenextraktion, i.d.R Isoflächen und Darstellung dieser Flächen Darstellung als semitransparente Objekte („Wolken“) © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

16 Dekompositionsmethoden
Einfachste Variante: Darstellung der Gitterpunkte als farbige, ggf. transparente Pixel Pro: Einfach, schnell Con: durch die Winzigkeit der Primitive ist die Interpretation schwierig und die Interpretation eingeschränkt  Quadermethode © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

17 Quadermethode Tiny Cubes Method
Für jedes Volumenelement wird ein kleiner Quader bestimmt. Zwischen diesen Quadern wird ein Abstand M belassen, um ins innere des Volumen schauen zu können. Die Abmaße und Positionen (untere linke Ecke) der Quader bestimmen sich zu: © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

18 Quadermethode Tiny Cubes Method (2)
Jedem Eckpunkt ist ein Farbwert zugeordnet. Die Quaderflächen werden Gouraud-schattiert ausgegeben. Anstelle von Quadern lassen sich auch andere Primitive für die Zellen nutzen: Kugeln, Tetraeder © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

19 Quadermethode (Tiny Cubes Method) Beispiele 11x11x11 Datenwerte
Großes M Kleineres M  Kleine Quader, hohe Transparenz  größere Quader, geringere Transp. © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

20 Quadermethode (Tiny Cubes Method)
Achtung Kleine Quader sind sehr anfällig für Aliasingartifakte! © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

21 Weitere Beispiele Tetraeder als Primitive Kugeln als Primitive
Con: Induzieren Richtungen © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

22 Variante Transparente Quadermethode Vanishing Cube Method
Quader werden mit transparenten Seiten gerendert: Aus je vier Gitterpunkte werden semitransparente Polygone Probleme mit z-Buffer Sichtbarkeitsbestimmung  Back-to-Front-Order Ausgabe nötig! © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

23 Transparente Quadermethode Vanishing Cube Method Beispiele
Geringe Transparenz Höhere Transparenz © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

24 Dekomposition in Schichten Slicing
Anstelle der trivariaten Funktion f(x,y,z) werden bivariate Funktionen der Form dargestellt. Die Schnittebenen können i.d.R. interaktiv ausgewählt (verschoben) werden. Man nennt sie manchmal auch Sweeping Planes. Wird sehr häufig genutzt. Haben in vielen Anwendungsfeldern lange Tradition. © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

25 Slicing Beispiel Visualisierung – Vorlesung 10 WS 2005/2006
© Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

26 Varianten des Slicing Anordnung der Schnitt- ebenen geändert.
Zusätzlich werden die Daten in einem Höhen- feld kodiert. (indirekter Raumbezug) © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

27 Extraktion von Flächen
Typischerweise werden Isoflächen (Positionen eines bestimmten Datenwertes (Schwellwertes)) extrahiert. Topologische und geometrische Eigenschaften werden offensichtlich Flächeninhalte oder Volumina können einfach abgeschätzt werden. Wahl des Schwellwertes (und damit die Segmentierung) beeinflusst das Ergebnis sehr stark! Ist kritisch! Sehr leicht können u.U. auch falsche Interpretationen suggeriert werden! © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

28 Extraktion von Flächen: Beispiele
Ebert 2004 Visualisierung – Vorlesung 10 WS 2005/2006

29 Segmentierung und einfache Approximationen
Alternativen: Ein Schwellwert oder Schwellwertintervall Ermittlung von drei Klassen innen - auf - außen Alle „auf“ Voxel repräsentieren eine grobe Approximation der Isofläche. Ermittlung von nur zwei Klassen (numerisch stabiler) innen – außen Seitenflächen, die einen „innen“ und einen „außen“ Nachbarn haben, approximieren die Isofläche. Contra: Voxelstruktur (Blockstruktur) bleibt deutlich sichtbar! © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

30 Extraktion von Flächen aus Zellen
Isoflächen verlaufen beliebig innerhalb einer Zelle Hauptmethoden: Contouring & Connecting Marching Cube Dividing Cube Marching Tetraeder © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

31 Contouring & Connecting
Idee: (1) Auf parallelen Schnitten eines Daten-würfels werden 2D-Isolinien extrahiert (Verfahren hierzu siehe 7. Gestaltregeln, ...). (2) Benachbarte Ebenen werden durch Dreiecksnetze verbunden. Problem: Bei verschiedenen Kontur-Topologien auf benachbarten Ebenen ist eine eindeutige Verbindung nicht möglich! © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

32 Mehrdeutigkeitsprobleme beim Contouring & Connecting
Interaktive Nutzereingabe zur Spezifikation von Konturen, die miteinander verknüpft werden sollen Unterteilung der Bereiche mit Mehrdeutigkeiten und Versuch der Problemlösung in abgegrenzten Gebieten Verwendung von Kostenfunktionen als Entscheidungsgrundlage Einbeziehung weiterer Eigenschaften der Konturen wie Form, Konvexität oder Orientierung. Eine gute Übersicht und Details hierzu finden sich bei [Müller und Klingert] © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

33 Marching Cube nach Lorensen und Cline 87
Idee: Ein Würfel (Quader) wandert im Datenwürfel von Zelle zu Zelle. Die Eckpunkte der Zellen werden gemäß der Schwelle klassifiziert (innen – außen). Die Schnittpunkte Isofläche/Würfelkante werden durch lineare Interpolation ermittelt und zu Flächen verbunden. innen V1 V2 V3 V4 V5 V6 V7 V8 1 außen © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

34 Klassische Fallunterscheidungen beim Marching Cube
Die Bitbelegung im Klassifizierungsvektor bestimmt das Flächenbild: die 256 möglichen Belegungen repräsentieren 15 verschiedene Topologien Theoretisch nicht ausreichend: Fälle 3, 6, 7, 10, 12, 13 sind nicht eindeutig Trotzdem: Für visuelle Auswertungen bei großen Datensätzen ausreichend! © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

35 Mehrdeutigkeiten bei der klassischen Fallunterscheidung
Fall 3: zwei Möglichkeiten für die Konstruktion der Kanten Lösung: Ein weiterer Datenpunkt in der Mitte der Fläche wird durch Interpolation ermittelt und auch klassifiziert.  Lage der Flächen werden eindeutig. © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

36 Probleme des Marching Cube - Algorithmus
Bei großvolumigen Daten entstehen sehr viele Dreiecke  hoher Speicherbedarf, große Render-Zeiten Verbesserungen: Triangle Strips können Render-Zeiten reduzieren. Reduzierung der Anzahl der Dreiecke durch Zusammenfassungen (Simplification) , z.B. anhand der Größe der Dreiecke, des Unterschiedes der Flächennormalen, etc. Viele verschiedene Algorithmen bekannt:  z.B. [Klein, et.al], [Shekar et.al.] © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

37 Dividing Cube nach Levoy
Idee: Anstelle von Dreiecken werden Oberflächenpunkte erzeugt. 1. Schritt: Klassifizierung von Zellen in: Innen-Zelle: Alle in der Zelle präsenten Datenwerte sind kleiner als der gegebene Schwellwert; Außen-Zelle: Alle in der Zelle präsenten Datenwerte sind größer als der gegebene Schwellwert und Oberflächenzelle: die durch den Schwellwert spezifizierte Isofläche schneidet die Zelle. 2. Alle Oberflächenzellen werden rekursiv unterteilt und und erneut klassifiziert. Datenpunkte werden durch trilineare Interpolation ermittelt. 3. Oberflächenzellen nach dem letzten Unterteilungsschritt werden als Oberflächenpunkte aufgefasst. Hierfür werden Normalen berechnet (z.B. durch Zentraldifferenzen) © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

38 Marching Tetraeder Idee: Anstelle eines Würfels wandert ein Tetraeder durch den Datensatz: Pro: Nur drei Fälle müssen unterschieden werden max. zwei Dreiecke/Tetraeder keine Mehrdeutigkeiten Con: Resampling auf Tetraedergitter nötig Manchmal, z.B. bei Berechnungen/Simulationen lassen sich die Beobachtungspunkte frei wählen © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

39 Zusammenfassung Flächenextraktion
Unterstützt insbesondere die Analyse geometrischer und topologischer Eigenschaften Isoflächen lassen sich mit Standard-Graphikbibliotheken effektiv unterstützen Isoflächen lassen sich mit an-deren Objekten gemeinsam darstellen Extraktion ist ein vergleichs-weise aufwendiger Prozess Festlegung der Schwelle sehr sensible Entscheidung Zellkern © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

40 Direkt e Darstellung als semitransparente Elemente Volume Rendering
Man erhält eine kontinuierliche Darstellung der Datenwerte, einschließlich verschwommener Grenzen Bildraumverfahren (Volume Ray Casting) FOR each pixel on image plane DO FOR each sampling point on associated ray DO compute contribution to pixel; Objektraumverfahren FOR each volume element DO FOR each pixel projected onto DO © Detlef Krömker Visualisierung – Vorlesung 10 WS 2005/2006

41 Diese Vorlesung basiert auf Material von
Danksagung Diese Vorlesung basiert auf Material von Prof. Dr. Detlef Krömker Prof. Dr. Colin Ware Prof. Dr. Wolfgang Müller Visualisierung – Vorlesung 10 WS 2005/2006

42 Hausaufgabe SM: Kap. 7.2, 7.3, 7.4, 7.5 Visualisierung – Vorlesung 10
WS 2005/2006


Herunterladen ppt "Visualisierung Vorlesung 10."

Ähnliche Präsentationen


Google-Anzeigen