Volume Rendering.

Slides:



Advertisements
Similar presentations
Reconstruction from Voxels (GATE-540)
Advertisements

2 COEN Computer Graphics I Evening’s Goals n Discuss the fundamentals of lighting in computer graphics n Analyze OpenGL’s lighting model n Show.
Computer Graphics methods
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
3D Graphics Rendering and Terrain Modeling
CLASS 9 ADVANCE RENDERING RAY TRACING RADIOSITY LIGHT FIELD CS770/870.
Illumination Model & Surface-rendering Method 박 경 와.
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.
Part I: Basics of Computer Graphics Viewing Transformation and Coordinate Systems Chapter
Ray Casting Ray-Surface Intersections Barycentric Coordinates Reflection and Transmission [Shirley, Ch.9] Ray Tracing Handouts Ray Casting Ray-Surface.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
BPC: Art and Computation – Summer 2007 Computer Graphics Principles Erik Brisson
BPC: Art and Computation – Spring 2007 Computer Graphics – Lighting and Rendering Erik Brisson
6.1 Vis_04 Data Visualization Lecture 6 - A Rough Guide to Rendering.
ITUppsala universitet Data representation and fundamental algorithms Filip Malmberg
Computer Graphics Inf4/MSc Computer Graphics Lecture 11 Texture Mapping.
SET09115 Intro Graphics Programming
Volumetric and Blobby Objects Lecture 8 (Modelling)
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
Basics of Rendering Pipeline Based Rendering –Objects in the scene are rendered in a sequence of steps that form the Rendering Pipeline. Ray-Tracing –A.
COMPUTER GRAPHICS CS 482 – FALL 2014 AUGUST 27, 2014 FIXED-FUNCTION 3D GRAPHICS MESH SPECIFICATION LIGHTING SPECIFICATION REFLECTION SHADING HIERARCHICAL.
COMP 175: Computer Graphics March 24, 2015
Computer Graphics Panos Trahanias ΗΥ358 Spring 2009.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
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.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorenson Harvey E. Cline General Electric Company Corporate Research and.
Direct Volume Rendering (DVR): Ray-casting Jian Huang This set of slides references slides used by Prof. Torsten Moeller (Simon Fraser), Prof. Han-Wei.
CS447/ Realistic Rendering -- Radiosity Methods-- Introduction to 2D and 3D Computer Graphics.
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
Shadows. Shadows is important in scenes, consolidating spatial relationships “Geometric shadows”: the shape of an area in shadow Early days, just pasted.
Graphics Lecture 13: Slide 1 Interactive Computer Graphics Lecture 13: Radiosity - Principles.
Visualization Process sensorssimulationdatabase raw data images Transformation.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
Volume Visualization Presented by Zhao, hai. What’ volume visualization Volume visualization is the creation of graphical representations of data sets.
Basic Perspective Projection Watt Section 5.2, some typos Define a focal distance, d, and shift the origin to be at that distance (note d is negative)
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
Rendering Pipeline Fall, D Polygon Rendering Many applications use rendering of 3D polygons with direct illumination.
Direct Volume Rendering
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
CDS 301 Fall, 2008 Domain-Modeling Techniques Chap. 8 November 04, 2008 Jie Zhang Copyright ©
Illumination and Shading. Illumination (Lighting) Model the interaction of light with surface points to determine their final color and brightness OpenGL.
Illumination and Shading Prof. Lizhuang Ma Shanghai Jiao Tong University.
Electronic Visualization Laboratory University of Illinois at Chicago “Fast And Reliable Space Leaping For Interactive Volume Rendering” by Ming Wan, Aamir.
Rendering Pipeline Fall, 2015.
CSE 554 Lecture 1: Binary Pictures
Volume Visualization Chap. 10 November 20 , 2008 Jie Zhang Copyright ©
Rendering Process of producing “realistic” images or pictures
Modeling 101 For the moment assume that all geometry consists of points, lines and faces Line: A segment between two endpoints Face: A planar area bounded.
3D Graphics Rendering PPT By Ricardo Veguilla.
RAY TRACING.
CSc4730/6730 Scientific Visualization
Jim X. Chen George Mason University
Volume Rendering Lecture 21.
CSCE 441: Computer Graphics Hidden Surface Removal
Common Classification Tasks
Computer Vision Lecture 4: Color
Real-Time Volume Graphics [06] Local Volume Illumination
Domain-Modeling Techniques
Volume Rendering (2).
CSc4730/6730 Scientific Visualization
Volume Rendering Lecture 21.
From Voxels to 3D Uri Mike.
CS5500 Computer Graphics May 29, 2006
Illumination and Shading
GR2 Advanced Computer Graphics AGR
Presentation transcript:

Volume Rendering

Scalar Data Visualization Isosurface Extraction: extract geometry first, then render the resulting polygons (2) Volume Rendering: Direct display method project each data point onto the screen 2)

Early attempts (pre-MCs) The Cuberille Approach (1979) - Each voxel has a value - Each voxel has 6 faces - Applying a threshold to perform binary classification - Draw the visible faces of the boundary voxels as polygons (Fairly jagged images) voxel

Contour Tracking Extract contours at each section and connect them together (1976 and after)

New Methods Were Needed Better image quality is necessary Finding object’s boundary sometimes can be difficult) The process of connecting boundary contours is also very complicated The intermediate geometry size can be huge

Direct 2-D Display of 3D Objects Tuy and Tuy 1984, IEEE CG & A (one of the earliest volume rendering techniques) Direct: No conversion from data to geometry

Basic Idea Based on the idea of ray tracing Treat each pixel as a light source Emit light from the image to the object space The ray stops at the object boundary Calculate shading at the boundary point Assign the value to the pixel

Algorithm details Data Representation: (establish 3D volume and 2D screen space) Viewing Sampling Shading

Data Representation 3D volume data are represented by a finite number of cross sectional slices (a stack of images) N x 2D arraies = 3D array

Data Representation (2) What is a Voxel? – Two definitions A voxel is a cubic cell, which has a single value cover the entire cubic region A voxel is a data point at a corner of the cubic cell The value of a point inside the cell is determined by interpolation

Viewing Ray Casting Where to position the volume and image plane What is a ‘ray’ How to march a ray

Viewing (1) 1. Position the volume Assuming the volume dimensions is w x w x w We position the center of the volume at the world origin Volume center = [w/2,w/2,w/2] (local space) Translate T(-w/2,-w/2,-w/2) (0,0,0) x (data to world matrix? world to data matrix ) y z

Viewing (2) 2. Position the image plane Assuming the distance between the image plane and the volume center is D, and initially the center of the image plane is (0,0,-D) Image plane y (0,0,0) x z

Viewing (3) 3. Rotate the image plane A new position of the image plane can be defined in terms of three rotation angle a,b,g with respect to x,y,z axes Assuming the original view vector is [0,0,1], then the new view vector g becomes: cosb 0 -sinb 1 0 0 cosg sing 0 g = [0,0,1] 0 1 0 0 cosa sina -sing cosg 0 sinb 0 cosb 0 -sina cosa 0 0 1

Viewing (4) B = [0,0,0] S0 = [0,0,-D] u0 = [1,0,0] v0 = [0,1,0] E0 u0 + S0 u v E S B = [0,0,0] S0 = [0,0,-D] u0 = [1,0,0] v0 = [0,1,0] y (0,0,0) x z B Now, R: the rotation matrix S = B – D x g U = [1,0,0] x R V = [0,1,0] x R

Viewing (5) Image Plane: L x L pixels Then S v E = S – L/2 x u – L/2 x v So Each pixel (i,j) has coordinates P = E + i x u + j x v S v + u E R: the rotation matrix S = B – D x g U = [1,0,0] x R V = [0,1,0] x R We enumerate the pixels by changing i and j (0..L-1)

Viewing (6) 4. Cast rays Remember for each pixel on the image plane P = E + i x u + j x v and the view vector g = [0,0,1] x R So the ray has the equation: Q = P + k (d x g) d: the sampling distance at each step x d p Q K = 0,1,2,…

Sampling At each step of the ray, we sample the volume data What do you mean ?

Sampling (1) Q = P + K x V (v=dxg) In tuys’ paper At each step k, Q is rounded off to the nearest voxel (like the DDA algorithm) Check if the voxel is on the boundary or not (compare against a threshold) If yes, perform shading In tuys’ paper

Shading Take the voxel position, distance to the image plane, the object normal, and the light position into account The paper does not describe in detail, but you can imagine we can easily perform local illumination (diffusive or even specular). The distance can be used alone to provide An 3D depth cue (e.g. distant voxels are dimmer)

Pros and Cons + Require no boundary estimation/hidden surface removal + No display holes - Binary object representation - Flat lighting (head on illumination) - Jagged surface - No semi-transparencies A more sophisticated classification and lighting model in [Levoy 88]