Volume Rendering (2).

Slides:



Advertisements
Similar presentations
7.1 Vis_04 Data Visualization Lecture 7 3D Scalar Visualization Part 2 : Volume Rendering- Introduction.
Advertisements

1 Graphics CSCI 343, Fall 2013 Lecture 18 Lighting and Shading.
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
CLASS 9 ADVANCE RENDERING RAY TRACING RADIOSITY LIGHT FIELD CS770/870.
CDS 301 Fall, 2009 Image Visualization Chap. 9 November 5, 2009 Jie Zhang Copyright ©
1 Computer Graphics Chapter 9 Rendering. [9]-2RM Rendering Three dimensional object rendering is the set of collective processes which make the object.
1. What is Lighting? 2 Example 1. Find the cubic polynomial or that passes through the four points and satisfies 1.As a photon Metal Insulator.
Illumination Model & Surface-rendering Method 박 경 와.
Direct Volume Rendering (DVR): Ray-casting
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2013.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Information Visualization.
IMGD 1001: Illumination by Mark Claypool
(conventional Cartesian reference system)
Direct Volume Rendering Joe Michael Kniss Scientific Computing and Imaging Institute University of Utah.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
6.1 Vis_04 Data Visualization Lecture 6 - A Rough Guide to Rendering.
Direct Volume Rendering w/Shading via Three- Dimensional Textures.
Fluid Surface Rendering in CUDA Andrei Monteiro Marcelo Gattass Assignment 4 June 2010.
ITUppsala universitet Data representation and fundamental algorithms Filip Malmberg
Computer Graphics Inf4/MSc Computer Graphics Lecture 7 Texture Mapping, Bump-mapping, Transparency.
Shading (introduction to rendering). Rendering  We know how to specify the geometry but how is the color calculated.
COMPUTER GRAPHICS CS 482 – FALL 2014 AUGUST 27, 2014 FIXED-FUNCTION 3D GRAPHICS MESH SPECIFICATION LIGHTING SPECIFICATION REFLECTION SHADING HIERARCHICAL.
19/18/ :34 Graphics II Volume Rendering Session 10.
Optical Models Jian Huang, CS 594, Spring 2002 This set of slides are modified from slides used by Prof. Torsten Moeller, at Simon Fraser University, BC,
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
COLLEGE OF ENGINEERING UNIVERSITY OF PORTO COMPUTER GRAPHICS AND INTERFACES / GRAPHICS SYSTEMS JGB / AAS 1 Shading (Shading) & Smooth Shading Graphics.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
Scientific Visualization Module 6 Volumetric Algorithms (adapted by S.V. Moore – slides deleted, modified, and added) prof. dr. Alexandru (Alex) Telea.
REAL-TIME VOLUME GRAPHICS Christof Rezk Salama Computer Graphics and Multimedia Group, University of Siegen, Germany Eurographics 2006 Real-Time Volume.
Direct Volume Rendering (DVR): Ray-casting Jian Huang This set of slides references slides used by Prof. Torsten Moeller (Simon Fraser), Prof. Han-Wei.
CMSC 635 Volume Rendering. Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind.
Volume Rendering CMSC 491/635. Volume data  3D Scalar Field: F(x,y,z) = ?  Implicit functions  Voxel grid  Scalar data  Density  Temperature  Wind.
Visualization Process sensorssimulationdatabase raw data images Transformation.
CHAPTER 10 VOLUME VISUALIZATION. OUTLINE 3D (volumetric) scalar fields Slice plane and isosurfaces techniques are limited in showing only a subset of.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
Volume Visualization with Ray Casting
Visual Appearance Chapter 4 Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology.
Single Pass Point Rendering and Transparent Shading Paper by Yanci Zhang and Renato Pajarola Presentation by Harmen de Weerd and Hedde Bosman.
Direct Volume Rendering
CDS 301 Fall, 2008 Image Visualization Chap. 9 November 11, 2008 Jie Zhang Copyright ©
Render methods. Contents Levels of rendering Wireframe Plain shadow Gouraud Phong Comparison Gouraud-Phong.
CDS 301 Fall, 2008 From Graphics to Visualization Chap. 2 Sep. 3, 2009 Jie Zhang Copyright ©
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
Volume Rendering Volumetric Presentation State Supplement 190 Public Comment Review Joe Luszcz, Philips Healthcare Chair, DICOM Working Group 11 January.
Hardware-Accelerated Parallel Non-Photorealistic Volume Rendering Eric B.Lum Kwan-Liu Ma University of California at Davis.
Illumination and Shading. Illumination (Lighting) Model the interaction of light with surface points to determine their final color and brightness OpenGL.
Robert S. Laramee 1 Visualization, Lecture Volume Visualization Part 2 (of 4) Direct Volume.
Shading To determine the correct shades of color on the surface of graphical objects.
Computer Graphics Chapter 9 Rendering.
Volume Visualization Chap. 10 November 20 , 2008 Jie Zhang Copyright ©
Visual Appearance Chapter 4
Hank Childs, University of Oregon
Volume Rendering Lecture 21.
Volume Visualization Chap. 10 December 3 , 2009 Jie Zhang Copyright ©
Real-Time Volume Graphics [06] Local Volume Illumination
CSc4730/6730 Scientific Visualization
Hank Childs, University of Oregon
Volume Rendering Lecture 21.
Volume Rendering.
CSE 470 Introduction to Computer Graphics Arizona State University
Visualization CSE 694L Roger Crawfis The Ohio State University.
Illumination and Shading
GR2 Advanced Computer Graphics AGR
Texture Mapping 고려대학교 컴퓨터 그래픽스 연구실.
Illumination Model 고려대학교 컴퓨터 그래픽스 연구실.
Illumination Model 고려대학교 컴퓨터 그래픽스 연구실.
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
Distributed Ray Tracing
Presentation transcript:

Volume Rendering (2)

Remember … The paper we discussed last time Discrete Sampling (jagged edges) Binary Classification (no fuzzy objects) Shading is based on binary classification (quality is bad)

Levoy’s 1988 paper Tried to improve the above problems Node-Center Voxel Floating point sampling No explicit surface detection Shading and classification are done separately

Basic Idea Data are defined at the corners of each cell (voxel) The data value inside the voxel is determined using tri-linear interpolation No ray position round-off is needed when sampling Accumulate colors and opacities along the ray path c1 c2 c3

Volume Rendering Pipeline Acquired values f0(xi) Prepared values f1(xi) Compositing Image Pixels shading voxel colors Ci(x) ray sampling sample colors Cs(x) classification voxel opacity a(x) ray sampling sample opacities Cs(x)

Shading and Classification - Shading: compute a color for each data point in the volume - Classification: Compute an opacity for each data point in the volume Done by table lookup (transfer function) Levoy preshaded the entire volume f(xi) C(xi), a(xi)

Shading Use a phong illumination model Light (color) = ambient + diffuse + specular C(x) = Cp * Ka + Cp / (K1 + K2* d(x)) * (Kd * (N(x) . L + Ks * (N(x) . H )^n ) Cp: color of light ka,kd,ks: ambient, diffusive, specular coefficient K1,K2: constant (used for depth attenuation) N(x): normal at x

Normal estimation How to compute N(x)? Compute the gradient at each corner Interpolate the normal using central difference N(x,y,z) = [ (f(x+1)-f(x-1))/2, (f(y+1)-f(y-1))/2, (f(z+1)-f(z-1))/2 ] Y+1 z+1 x-1, y-1, z-1 X+1

Classification Classification: Mapping from data to opacities Region of interest: high opaicity (more opaque) Rest: translucent or transparent The opacity function is typically specified by the user Levoy came up with two formula to compute opacity 1. Isosurface 2. Region boundary (e.g. between bone and fresh)

Opacity function (1) Goal: visualize voxels that have a selected threshold value fv - No intermediate geometry is extracted - The idea is to assign voxels that have value fv the maximum opacity (say a) And then create a smooth transition for the surrounding area from 1 to 0 Levoy wants to maintain a constant thickness for the transition area.

Opacity function (2) Maintain a constant isosurface thickness Can we assign opacity based on function value instead of distance? (local operation: we don’t know where the isosurface is) Yes – we can based on the value distance f – fv but we need to take into account the local gradient opacity = a opacity = 0

Opacity function (3) Assign opacity based on value difference (f-fv) and local gradient gradient: the value fall-off rate grad = Df/Ds Assuming a region has a constant gradient and the isosurface transition has a thickness R F = f(x) Then we interpolate the opacity opacity = a – a * ( fv-f(x))/ (grad * R) opacity = a F = fv opacity = 0 F = fv – grad * R thickness = R

Continuous Sampling We sample the volume at discrete points along the ray (Levoy sampled color and opacity, but you can sample the value and then assign color and opacity) No integer round-off Use trilinear interpolation Compositing (front-to-back or back-to-front) c1 c2 c3

Tri-linear Interpolation Use 7 linear interpolations Interpolate both value and gradient Levoy interpolate color and opacity c2

Compositing The initial pixel color = Black Back-to-Front compositing: use ‘under’ operator C = C1 ‘under’ background C = C2 ‘under C C = C3 ‘under C … Cout = Cin * (1-a(x)) + C(x)*a(x) c1 c2 c3

Compositing (2) Or you can use ‘Front-to-Back’ Compositing formula use ‘over’ operator C = backgrond ‘over’ C1 C = C ‘over’ C2 C = C ‘over’ C3 … Cout = Cin + C(x)*(1- ain); aout = ain + a(x) *(1-ain) c1 c2 c3