Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Prof. Dr. Detlef Krömker Goethe-Universität, Frankfurt Graphische Datenverarbeitung Visualisierung Vorlesung 10.

Ähnliche Präsentationen


Präsentation zum Thema: "Prof. Dr. Detlef Krömker Goethe-Universität, Frankfurt Graphische Datenverarbeitung Visualisierung Vorlesung 10."—  Präsentation transkript:

1 Prof. Dr. Detlef Krömker Goethe-Universität, Frankfurt Graphische Datenverarbeitung Visualisierung Vorlesung 10

2 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 Visualisierung von Volumendaten

3 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 Übersicht 1.Volumendaten: Grundlagen – Begriffsbestimmung 2.Visualisierungspipeline für Volumendaten 3.Methoden der Volumenvisualisierung Dekompositionsmethoden Extraktion von Flächen Direkte Darstellung als semitransparente Elemente

4 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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: MRI-Aufnahme Beispiel: CT-Aufnahme

5 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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 Datengitter Gitter im Raum

6 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 BegriffsbestimmungVolumendaten 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

7 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 BegriffsbestimmungVoxel 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

8 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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)

9 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 Beobachtungspunkt Zentrum der Zelle Achtung. Die Auswertung erfolgt an n x *n y *n z Punkten. © Detlef Krömker

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

11 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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: G x, G y, G z sind die Komponenten des Gradienten, s x, s y, s z sind die Schrittweiten des Gitters © Detlef Krömker

12 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

13 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

14 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

15 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

16 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

17 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

18 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

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

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

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

22 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

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

24 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

25 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 Slicing Beispiel © Detlef Krömker

26 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

27 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

28 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 Extraktion von Flächen: Beispiele Ebert 2004

29 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

30 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

31 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

32 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

33 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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 V2V3V4V5V6V7V V1 V2 V3 V4 V5 V6 V7 V8 außen © Detlef Krömker

34 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

35 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

36 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

37 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

38 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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 Marching Tetraeder © Detlef Krömker

39 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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

40 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 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 compute contribution to pixel; © Detlef Krömker

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

42 Prof. Dr. Detlef Krömker WS 2005/ Visualisierung – Vorlesung 10 Hausaufgabe SM: Kap. 7.2, 7.3, 7.4, 7.5


Herunterladen ppt "Prof. Dr. Detlef Krömker Goethe-Universität, Frankfurt Graphische Datenverarbeitung Visualisierung Vorlesung 10."

Ähnliche Präsentationen


Google-Anzeigen