Visualisierung und Volumenrendering 2

Ähnliche Dokumente
Visualisierung und Volumenrendering I

Volumenverarbeitung und Optimierung II

Texture Based Direct Volume Rendering

Volumen Visualisierung

Volumenrendering mit CUDA

Marching Cubes - Erstellung von Polygonmodellen aus Voxelgittern

Direkte Volumenvisualisierung

Probelektion zum Thema. Shadow Rendering. Shadow Maps Shadow Filtering

Computer Graphics Shader

Seminar Computerspiele Räumliche Datenstrukturen. Ralf Pramberger

Shader. Computer Graphics: Shader

Michael Bender Martin Brill. Computergrafik. Ein anwendungsorientiertes Lehrbuch. 2., überarbeitete Auflage HANSER

Computergrafik. Michael Bender, Manfred Brill. Ein anwendungsorientiertes Lehrbuch ISBN Inhaltsverzeichnis

Medizinische Visualisierung

Entwicklung eines hardwarebeschleunigten direkten Volumenvisualisierers für große Datensätze

Modellierung. Oliver Hartmann

Seminar Ausgewählte Themen der medizinischen Visualisierung

Computergrafik. Ein anwendungsorientiertes Lehrbuch. Bearbeitet von Michael Bender, Manfred Brill

Volume Rendering & Transferfunktionen

Die Welt der Shader. Fortgeschrittene Techniken III

Echtzeit-Computergraphik auf mobilen Geräten. Daniel Weiskopf VISUS, Universität Stuttgart

Conservative Volumetric Visibility with Occluder Fusion

Volumenakquise. Vortrag von Benjamin Gayer

Christina Nell. 3D-Computergrafik

Medizinische Visualisierung

Medizinische Visualisierung

Raytracing. Beschleunigungsverfahren

Adaptives Displacement Mapping unter Verwendung von Geometrieshadern

3D - Modellierung. Arne Theß. Proseminar Computergraphik TU Dresden

Partikelvisualisierung

Computergrafik Universität Osnabrück, Henning Wenke,

computer graphics & visualization

GPU-basiertes Raycasting

Seminar: GPU-Methoden für die Visualisierung und Computergraphik

Wiederholung. Vorlesung GPU Programmierung Thorsten Grosch

Beschleunigungsverfahren für Raytracing Grids Hierarchische Grids Bewertung Fazit

Universität Trier FB IV Mathematik PS Mathematics for 3D Game Programming & Computer Graphics - WS 07/08 Seminarleiter: Prof. Dr.

Optimierungsalgorithmen

GPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni

Übungsblatt 10: Klausurvorbereitung

Advanced Topics in Computer Graphics: Transferfunktionen

Informatik Fakultät Lehrstuhl für Computergrafik und Visualisierung. René Lützner

Diplomarbeit. Neue Möglichkeiten durch programmierbare Shader. Unter der Leitung von: Prof. Dr.-Ing. Detlef Krömker

Kapitel 4: Schattenberechnung

5/24/07. Allgemeine Regeln zur Optimierung. Octree / Quadtree. 5D-Octree für Strahlen [Arvo u. Kirk 1987] Primitive in adaptiven Gittern / Octrees

Ray Tracing. 2. Ray Tracing-Prinzip und -Algorithmen. 3. Schnittpunkt- und Normalenberechnung

Visuelle Effekte mit volumetrischen Shadern. Studienarbeit

Fast Volume Rendering

Beleuchtung. in Computerspielen

Computer graphics. Volumen und marching cubes. Dr. Ernst Kruijff

Heute. Motivation. Diskretisierung. Medizinische Bildverarbeitung. Volumenrepräsentationen. Volumenrepräsentationen. Thomas Jung

Algorithmische Geometrie 1. Einführung

Vergleich von Forward und Deferred Rendering

Übungsstunde 8 zu Computergrafik 1

Allgemeine Regeln zur Optimierung

0 Einführung. Computergrafik. Computergrafik. Abteilung für Bild- und Signalverarbeitung

3D-Modellierungsprogramme

Echtzeitfähige hige Verfahren in der Computergrafik. Lehrstuhl für f r Informatik Computer Grafik und Visualisierung TUM

3D-Visualisierung. Stefan Wesarg. Graphisch-Interaktive Systeme (GRIS) Technische Universität Darmstadt. Fraunhoferstraße Darmstadt

Beschleunigungen auf Szenenebene

(1) Geometrie. Vorlesung Computergraphik 3 S. Müller U N I V E R S I T Ä T KOBLENZ LANDAU

Volume Rendering Techniques for General Purpose Graphics Hardware

Techniken zur Artefaktreduktion für GPU-basiertes Ray Casting

GPU-basiertes Volumenrendering von multimodalen medizinischen Bilddaten in Echtzeit

Analyse statischer Volumendaten zur Entwicklung eines adaptiven Raycastingverfahrens. Studienarbeit im Studiengang Computervisualistik

Seminar. Visual Computing. Poisson Surface Reconstruction. Peter Hagemann Andreas Meyer. Peter Eisert: Visual Computing SS 11.

Multitexturbasierte Volumenvisualisierung in der Medizin

Graphische Datenverarbeitung Visualisierungstechniken. Prof. Dr. Elke Hergenröther

Interactive Data Visualization on GPUs

Client-Server Strategien zur Visualisierung komplexer Sachverhalte in Digitalen Dokumenten der Chemie

Softwareprojekt Spieleentwicklung

CAUSTICS & GODRAYS. Jacob Skuratovski

Rendering. Rendern (Umsetzung oder Übertragung) Ursprüngliche Rendergleichung

SS08, LS12, Friedrich-Alexander-Universität Erlangen Florian Hänel, Frederic Pollmann HS Multicore Architectures and Programming GPU EVOLUTION

Vorlesung Algorithmen für hochkomplexe Virtuelle Szenen

Gliederung. Blending Licht Anwendungsbeispiel Optimierung OpenGL heute und morgen Wilfried Mascolus - OpenGL Teil II 2/20

Echtzeit Videoverarbeitung

BlendaX Grundlagen der Computergrafik

Wiederholung. Objekte) Hauptkosten beim Pathtracing Ziel: Beschleunigung durch Reduktion der Schnittpunktstestzahl. Ansätze

Geometry Shader. Ausarbeitung im Rahmen des Seminars Echtzeit Rendering" Von Sebastian Jackel Franz Peschel. Geometry Shader 1

Spiegelgasse 1 CH 4051 Basel. Vorführung der laufenden Programme im Tutorium Woche 3 (Abgabe ).

Visualisierung II 2. Volumenvisualisierung

3D-Oberflächen-Rekonstruktion und plastisches Rendern aus Bilderserien

How to make a PIXAR movie

Verteidigung Visualisierung von Tetraedernetzen Norbert Schultz

Einführung Augmentierte Bildsynthese

Masterarbeit von Tobias S c h ä f e r WS 2014/2015

Speziell-Relativistischer (Flug-) Simulator

Volumenrendering. Modellierung der visuellen Erscheinung von semitransparenten, beleuchteten Objekten. Marcel Petrick

Programmierpraktikum 3D Computer Grafik

2.1. Konvexe Hülle in 2D

Fakultät für Informatik

Vorintegriertes Volume Rendering: Slicing vs. Raycasting

Reconstruction and simplification of surfaces from contoures

Ein modulares Shaderframework für Volumenrendering. Diplomarbeit

Verfahren zur korrekten Darstellung von Transparenz ohne Vorsortierung

D-Texturen. Reflectance Mapping 3D-Texturen. Farbtexturen

Schattenwurf mit Perspective Shadow Maps

Lokale Beleuchtungsmodelle

Transkript:

Institut für Computervisualistik Universität Koblenz 06.07.2012

Inhaltsverzeichnis 1 Literatur 2 Wiederholung 3 DVR

Volumen Literatur Real-Time Volume Graphics Volumenrendering CG Shader Beispiele

Volumen Wiederholung Volumendatensätze 3D Repräsentation Anordnung auf einem 3D Grid Voxel befinden sich an den Gitternetzpunkten Acht benachbarte Voxel bilden eine Volumenzelle

Trilineare Interpolation Trilineare Interpolation Trilinear Interpolation Bestimmung von Samplingpunkten innerhalb einer Voxelzelle Bilinearen Interpolationen werden hintereinander ausgeführt

Transferfunktion Transferfunktion Transferfunktion Mapping von Skalarwerten auf RGBA-Werte

Gradienten Gradienten Gradienten Pendant zur Normale Berechnung durch Zentraldifferenzen

Volumenvisualisierung Volumenvisualisierung Indirekte Volumenvisualisierung Zwischenschritt für die Visualisierung Bestimmung eines Polygonmesh Isosurfaces Polygone werden gerendert, anstatt die Daten selbst Direkte Volumenvisualisierung Volumendatensatz wird direkt visuell dargestellt Keine Generierung von Metadaten

IVR Indirektes Volumenrendering Marching Cubes Surface-based Volume Rendering Isosurface, Isovalue Triangulierung für jede Voxelzelle

Volume Rendering Integral Volume Rendering Integral Wie bestimmt man die Strahlungsenergie entlang des Strahles? I (s) = I (s 0 )e τ(s0,s) s + q( s)e τ( s,s) d s s 0 q( s) Aktive Emission an Punkt s e τ( s,s) Absorbtion entlang s s

DVR Direktes Volumenrendering 2D Textures Volumen wird in 2D Texturen gespeichert Texture Mapping auf Proxy Geometry Nachteil: Artefakte durch bilineare Interpolation

Compositing Compositing Compositing Viele Sampling-Farbwerte tragen zum Pixelfarbwert bei Lösen des Volumenrendering Integrals Front-to-Back oder Back-to-Front Bei Texture-based Rendering Realisierung durch Blending

3D Texture-Mapping 3D Texture-Mapping 3D Texture-Mapping 3D Texturen ermöglichen trilineare Interpolation Volumen als 3D Textur gespeichert Mehr Möglichkeiten fürs Texture Mapping Adaptives Resampling des Volumendatensatzes

3D Texture-Mapping 3D Texture-Mapping Geometry Setup Proxy-Geometry: Slices werden Viewport-Aligned ausgerichtet Bei Veränderung der Blickrichgung müssen sich die Slices anpassen Clipping der Proxy Geometry am Bounding Volume

3D Texture-Mapping 3D Texture-Mapping Texture Setup Passt die gesamte 3D Textur in den Grafikkartenspeicher? OpenGL proxy texture Was wenn nicht? Bricking, Aufteilen der Textur in Teilstücke

3D Texture-Mapping 3D Texture-Mapping - Fazit Vorteile Schnelle trilineare Interpolation Nachteile Große Volumen benötigen Bricking-Ansätze Richtige Größe der Brick-Volumen

Raycasting Texture-based Volume Rendering Bisher Alle bisherigen DVR Verfahren Slice-basiert Erfolg hängt stark von der Qualität des Volumens und der Proxy Geometrie ab Integration von Beschleunigunsansätzen ist schwierig Neuer Ansatz Fakt: Eine große Anzahl an generierten Fragments tragen nicht zum finalen Bild bei (Sichtbar: 0.2-4 %) Bildbasierter Ansatz erscheint sinnvoller Einfache Implementierung, sehr flexibel, gut optimierbar

Raycasting Texture-based Volume Rendering Bisher Alle bisherigen DVR Verfahren Slice-basiert Erfolg hängt stark von der Qualität des Volumens und der Proxy Geometrie ab Integration von Beschleunigunsansätzen ist schwierig Neuer Ansatz Fakt: Eine große Anzahl an generierten Fragments tragen nicht zum finalen Bild bei (Sichtbar: 0.2-4 %) Bildbasierter Ansatz erscheint sinnvoller Einfache Implementierung, sehr flexibel, gut optimierbar

Raycasting Raycasting Idee Lösen des Volumenrendering-Integrals entlang Strahlen vom Augpunkt aus Analogie Analog zu Raytracing: vom Augpunkt aus Strahlen pro Pixel durch das Volumen verfolgen Raytracing Schnitt mit Objekten in einer Szene Verfolgung von Sekundärstrahlen Raycasting Ein Volumen wird betrachtet Alle Voxel entlang des Strahles können gleichermaßen beitragen

Raycasting Raycasting

Raycasting Raycasting - Pseudocode Determine volume entry position Compute ray direction While ( ray position is in volume ) Access data value at current position Compositing of color and opacity Advance position along ray End while

Raycasting GPU-Raycasting Raycasting Vorteil: Strahlen sind voneinander unabhängig Berechnungen pro Strahl Berechnungen pro Pixel Fragment Verarbeitung der GPU Multiple Pixel Pipelines Entlang des Strahles werden Sampling Punkte im Volumen bestimmt Für Samplingpunkte werden Volumendaten triliear interpoliert (siehe VisI) Single-Pass GPU Raycasting ab Shader Version 3.0 möglich

Raycasting GPU-Raycasting Strahlenbestimmung Strahl parametrisiert: V (t) = o + t v Rendern von Bounding Cube Vektor zwischen Kameraposition und Vertex in Weltkoordinaten bestimmen Viewvektor Vertex Koordinate als varying übergeben, wird für Fragments interpoliert Im Fragmentshader Viewvektor bestimmen

Raycasting GPU-Raycasting Strahlenbestimmung Strahl parametrisiert: V (t) = o + t v Im Fragmentshader entlang des Strahles durch das Volumen traversieren und Werte aus der Textur akkumulieren Bounding Box Beschränkung muss übergeben werden, um Traversierungsabbruch zu ermitteln

Beschleunigungen Beschleunigungen Raycasting - Beschleunigung Eine große Anzahl von Samples tragen nicht zur endgültigen Pixelfarbei bei Slice-Based Volume-Rendering: Schwierigkeiten bei Beschleunigungsalgorithmen Raycasting: Beschleunigungen einfach zu integrieren Strahlen können unabhängig voneinander betrachtet werden

Beschleunigungen Beschleunigungen Early Ray Termination Entlang Strahl den Alpha-Wert accumulieren Ende der Strahlenverfolgung wenn Alpha-Wert größer einem Threshold ist ( 1) Abbruchkriterium für Strahlverfolgens Dahinterliegende Objekte tragen nicht zur Farbe des Pixels bei

Beschleunigungen Beschleunigungen Empty Space Skipping Üblicherweise große transparente Bereiche im Volumen Keinen Beitrag zum Farbwert des Pixels Diese Bereiche werden übersprungen Benötigt vorherige Volumensegmentierung um leere Bereiche zu bestimmen

Beschleunigungen Beschleunigungen Empty Space Skipping Unterteilung des Volumens in kleine Blöcke Für jeden Block Sichtbarkeit bestimmen Berechne min/max Wert für jeden Block mithilfe TF Rendering des Blockes nur wenn er nicht transparent ist Neues Bounding Volume Vorberechnungen bilden im Vergleich nur geringen Overhead

Zusammenfassung Volumenrendering Indirektres Volumenrendering Gereniert eine Art Zwischenrepräsentation der Daten, die danach gerendert wird Polygonrepräsentation eines Isosurfaces Algorithmus: Marching Cubes Indirekt, weil es nicht das originale, gesamte Volumen darstellt Komplexität abhängig von: Anzahl der Polygone, nicht von der Auflösung der Bildebene

Zusammenfassung Volumenrendering Direktes Volumenrendering Das Volumen wird direkt dargestellt, ohne die Erstellung von Metadaten Algorithmen: Texture Mapping (2D, 3D), Raycasting Compositing: Voxelwerte des Volumens entlang eines Strahles für ein Pixel akkumulieren Beschleunigungsmöglichkeiten: Early Ray Termination, Empty Space Skipping Komplexität abhängig von: Anzahl der Voxel eines Datensatzes und Anzahl der Pixel in der Bildebene

Zusammenfassung Quellen Direktes Volumenrendering ACM SIGGRAPH ASIA 2008, Hardwinger Real-Time Volume Graphics, Weiskopf, Hardwinger