CMSC 635 Volume Rendering. Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind.

Slides:



Advertisements
Similar presentations
Data Visualization Lecture 8 3D Scalar Visualization
Advertisements

7.1 Vis_04 Data Visualization Lecture 7 3D Scalar Visualization Part 2 : Volume Rendering- Introduction.
Reconstruction from Voxels (GATE-540)
VIS Group, University of Stuttgart Tutorial T4: Programmable Graphics Hardware for Interactive Visualization Pre-Integrated Splatting (Stefan Roettger)
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
Other DVR Algorithms and A Comparison Jian Huang, CS 594, Spring 2002.
Interactive High-Quality Volume Rendering on Flexible Consumer Graphics Hardware Klaus Engel, Martin Kraus, Thomas Ertl Visualization and Interactive Systems.
CLASS 9 ADVANCE RENDERING RAY TRACING RADIOSITY LIGHT FIELD CS770/870.
Fast High Accuracy Volume Rendering Thesis Defense May 2004 Kenneth Moreland Ph.D. Candidate Sandia is a multiprogram laboratory operated by Sandia Corporation,
Volume Rendering Volume Modeling Volume Rendering Volume Modeling Volume Rendering 20 Apr
CDS 301 Fall, 2009 Scalar Visualization Chap. 5 September 24, 2009 Jie Zhang Copyright ©
Splatting Jian Huang, CS 594, Spring 2002 This set of slides reference slides made by Ohio State University alumuni over the past several years.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Virtual Trackball, Scientific.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Information Visualization.
Surface Reconstruction from 3D Volume Data. Problem Definition Construct polyhedral surfaces from regularly-sampled 3D digital volumes.
Splatting Josh Anon Advanced Graphics 1/29/02. Types of Rendering Algorithms Backward mapping Image plane mapped into data Ray casting Forward mapping.
Introduction to Volume Rendering Presented by Zvi Devir.
Direct Volume Rendering Joe Michael Kniss Scientific Computing and Imaging Institute University of Utah.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
ENDS 375 Foundations of Visualization Geometric Representation 10/5/04.
Sorting and cell compositing for irregular meshes Nelson Max, Peter Williams, Richard Cook, Claudio Silva.
Volume Visualization Acknowledgements: Torsten Möller (SFU)
Direct Volume Rendering w/Shading via Three- Dimensional Textures.
Fluid Surface Rendering in CUDA Andrei Monteiro Marcelo Gattass Assignment 4 June 2010.
Volume Rendering & Shear-Warp Factorization Joe Zadeh January 22, 2002 CS395 - Advanced Graphics.
ITUppsala universitet Data representation and fundamental algorithms Filip Malmberg
CSE 681 Ray Tracing Implicit Surfaces. CSE 681 Overview Similar to CSG –Combine primitive objects to form complex object Primitives are “density fields”
Isosurfaces Also known as Metaballs, blobs, soft objects, implicit surfaces, …
Marching Cubes: A High Resolution 3D Surface Construction Algorithm
Volumetric and Blobby Objects Lecture 8 (Modelling)
lecture 2 : Visualization Basics
Scalar Visualization Chap. 5 September 23, 2008 Jie Zhang Copyright ©
Stefan Roettger University of Stuttgart A Two-Step Approach for Interactive Pre-Integrated Volume Rendering of Unstructured Grids VolVis '02 A Two-Step.
19/18/ :34 Graphics II Volume Rendering Session 10.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Scientific Visualization Module 6 Volumetric Algorithms (adapted by S.V. Moore – slides deleted, modified, and added) prof. dr. Alexandru (Alex) Telea.
University of Coimbra Reconstruction of Voxels from Sensor Data Ricardo Martins Coimbra, 19 th January 2010 Doctoral Programme in Electrical Engineering.
REAL-TIME VOLUME GRAPHICS Christof Rezk Salama Computer Graphics and Multimedia Group, University of Siegen, Germany Eurographics 2006 Real-Time Volume.
ITUppsala universitet Advanced Computer Graphics Filip Malmberg
Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorenson Harvey E. Cline General Electric Company Corporate Research and.
Unstructured Volume Rendering Jian Huang, CS 594, Spring 2002 This set of slides reference slides developed by Prof. Torsten Moeller, SFU, Canada.
Segmentation & Modeling ImagesSegmented Images Models.
Volume Rendering CMSC 491/635. Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind.
An Enhanced Splatting Method Graphics and Visualization Group Department of Computer Science The University of Auckland Peter Kulka & Richard Lobb.
3D Volume Visualization. Volume Graphics  Maintains a 3D image representation that is close to the underlying fully-3D object (but discrete)  경계표면 (Boundary.
Computer Graphics II University of Illinois at Chicago Volume Rendering Presentation for Computer Graphics II Prof. Andy Johnson By Raj Vikram Singh.
CHAPTER 10 VOLUME VISUALIZATION. OUTLINE 3D (volumetric) scalar fields Slice plane and isosurfaces techniques are limited in showing only a subset of.
Volume Visualization with Ray Casting
CHAPTER 5 CONTOURING. 5.3 CONTOURING Fig 5.7. Relationship between color banding and contouring Contour line (isoline): the same scalar value, or isovalue.
Volume and Solid Modeling
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
3-D Information cs5764: Information Visualization Chris North.
Unstructured Volume Rendering. Grid Types uniformrectilinearregularcurvilinear Structured Grids: regularirregularhybridcurved Unstructured Grids:
Pre-Integrated Volume Rendering: Past, Present, Future
Hardware-Accelerated Parallel Non-Photorealistic Volume Rendering Eric B.Lum Kwan-Liu Ma University of California at Davis.
Robert S. Laramee 1 1 Visualization, Lecture #3 Volume Visualization, Part 1 (of 4)
Rendering Pipeline Fall, 2015.
Also known as Metaballs, blobs, soft objects, implicit surfaces …
Volume Visualization Chap. 10 November 20 , 2008 Jie Zhang Copyright ©
3D Object Representations
Volume Rendering Lecture 21.
Volume Visualization Chap. 10 December 3 , 2009 Jie Zhang Copyright ©
Real-Time Volume Graphics [06] Local Volume Illumination
Volume Rendering (2).
Graphics and Multimedia
Volume Rendering Lecture 21.
Lecture 3 : Isosurface Extraction
Volume Graphics (lecture 4 : Isosurface Extraction)
Visualization CSE 694L Roger Crawfis The Ohio State University.
Three Step Geometric Pipeline
Presentation transcript:

CMSC 635 Volume Rendering

Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind speed  …  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind speed  …

Implicit functions  Blobs [Blinn 82]  Metaballs [Nishimura 83]  Soft Objects [Wyvill 86]  Polynomial approximation for exp()  Blobs [Blinn 82]  Metaballs [Nishimura 83]  Soft Objects [Wyvill 86]  Polynomial approximation for exp() Philo Vivero

Voxels  Sampled volume  Usually in a grid  Measured  MRI, CT scan, …  Computed  Sample geometric model  Finite element simulation  …  Sampled volume  Usually in a grid  Measured  MRI, CT scan, …  Computed  Sample geometric model  Finite element simulation  …

Isosurface rendering  F(x,y,z) – c = 0 (for some given c)  Isosurface normal:  F  Implicit: Point repulsion [Witkin 92]  Voxel: Marching cubes [Lorensen 87]  F(x,y,z) – c = 0 (for some given c)  Isosurface normal:  F  Implicit: Point repulsion [Witkin 92]  Voxel: Marching cubes [Lorensen 87]

Marching cubes  Estimate intersection point on each edge  Same criteria (e.g. linear interpolation)  Polygons will match  Use template for polygons  2 8 possibilities, 15 “unique”  Store templates in table  Estimate intersection point on each edge  Same criteria (e.g. linear interpolation)  Polygons will match  Use template for polygons  2 8 possibilities, 15 “unique”  Store templates in table

Marching tetrahedra  Decompose volume into tetrahedra  Avoids ambiguous “opposite corner” cases  2 4 = 16 cases, 3 unique  0 or 4 points inside (0 triangles)  1 or 3 points inside (1 triangle)  2 points inside (2 triangles)  Decompose volume into tetrahedra  Avoids ambiguous “opposite corner” cases  2 4 = 16 cases, 3 unique  0 or 4 points inside (0 triangles)  1 or 3 points inside (1 triangle)  2 points inside (2 triangles)

Direct volume rendering  Model as translucent material  Color and extinction,  Attenuation along ray   Attenuated color at   Accumulate attenuated colors along ray   Model as translucent material  Color and extinction,  Attenuation along ray   Attenuated color at   Accumulate attenuated colors along ray 

Simplify volume integral  Numeric integration, step size d   Color of ray segment    Back to front composite   Numeric integration, step size d   Color of ray segment    Back to front composite 

Transfer functions  Map scalar to color and/or opacity

Appearance  Additive / pseudo-XRay  Volume lighting:,   Directional derivative   Additive / pseudo-XRay  Volume lighting:,   Directional derivative 

Rendering methods  Ray casting  Splatting  Texture accumulation  Shear-warp  Fourier volume rendering  Ray casting  Splatting  Texture accumulation  Shear-warp  Fourier volume rendering

Ray casting  Straightforward numerical integration  Uniform steps along ray  Resample volume to sample points  Before classification and/or shading  After classification and/or shading  Straightforward numerical integration  Uniform steps along ray  Resample volume to sample points  Before classification and/or shading  After classification and/or shading

Splatting [Westover 90]  Resample directly onto screen  Each voxel contributes kernel footprint  Accumulate back-to-front  Resample directly onto screen  Each voxel contributes kernel footprint  Accumulate back-to-front

Shear-warp [Lacroute 94]

Texture accumulation  Let texturing hardware resample  Accumulate back-to-front  3D textures  Render slices parallel to image plane  Shift accesses for,  2D texture slices  Slice sets perpendicular to each axis  Choose set most parallel to image plane  Let texturing hardware resample  Accumulate back-to-front  3D textures  Render slices parallel to image plane  Shift accesses for,  2D texture slices  Slice sets perpendicular to each axis  Choose set most parallel to image plane

Pre-integrated texture [Engel 01]  Improve approximation for and  Lookup(start value, end value, d)  Dependent lookup  3D texture  2D texture  linear in d  constant d  Improve approximation for and  Lookup(start value, end value, d)  Dependent lookup  3D texture  2D texture  linear in d  constant d

Pre-integrated texture  a: shading before resampling  b: shading after resampling  c: b with interpolated slices  d: pre-integrated, same slice set as b  a: shading before resampling  b: shading after resampling  c: b with interpolated slices  d: pre-integrated, same slice set as b

Dividing cubes  Find voxels that cross isosurface  Subdivide to pixel-sized sub-voxels  Find sub-voxels that cross isosurface  Plot as shaded points / kernel footprints  Find voxels that cross isosurface  Subdivide to pixel-sized sub-voxels  Find sub-voxels that cross isosurface  Plot as shaded points / kernel footprints