introduction to volume rendering - pequan teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf ·...
TRANSCRIPT
![Page 1: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/1.jpg)
Introduction to Volume Rendering
J. Tierny <[email protected]>Slides adapted from presentations by C. Hansen
![Page 2: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/2.jpg)
Overview
Scalar Field Volume Rendering: Intuitive problem formulation; Applicative motivations; Limitations of Isosurface based rendering; Direct Volume Rendering:
− Volume Ray Casting;− Splatting;− Shear Warp;− Texture Mapping, etc.
![Page 3: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/3.jpg)
Intuitive Problem Formulation
Mimic Superman's SuperVision: Represent in an intelligible manner the interior of a
scalar volume.
![Page 4: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/4.jpg)
Applicative Motivations
Visualization of Measured 3D Data: Computed Tomography; Magnetic Resonance Field; Ultrasound, etc.
![Page 5: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/5.jpg)
Applicative Motivations
Visualization of Simulated 3D Data: Fluid dynamics; Pressure; Porosity; etc.
![Page 6: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/6.jpg)
Isosurface Based Rendering
Level set: L(w) = { p ∈ �, f(p) = w} 2D: isocurves 3D: isosurfaces
Seed sets + marching;
Specific blendings.
![Page 7: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/7.jpg)
Isosurface limitations
No viewdependency; Boundary representations only:
May be suited for particular datasets (CT scans); But not always appropriate (ex: fire simulation).
Isosurface Volume RenderingSlice
![Page 8: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/8.jpg)
Key Idea of Volume Rendering
Every voxel should contribute to the image;
Greater flexibility; Integrate blending.
![Page 9: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/9.jpg)
Volumetric Mesh + Scalar Field Volumetric Mesh + Scalar Field
Triangle Mesh + Scalar Field
Rendered Image
Isosurface Extraction
Surface Rendering
Rendered Image
Volume Rendering
Pipelines: Isosurfaces VS Vol. Rend.
![Page 10: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/10.jpg)
Pipelines: Isosurfaces VS Vol. Rend.
Volumetric Mesh + Scalar Field Volumetric Mesh + Scalar Field
Triangle Mesh + Scalar Field
Rendered Image
Isosurface Extraction
Surface Rendering
Rendered Image
Volume Rendering
Standard OpenGL operations:
Shading; Lighting; Alphablending; etc.
![Page 11: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/11.jpg)
What does Volume Rendering refer to? Any rendering process which:
Maps from a volume dataset; To a rendered image; Without intermediary geometry (no isosurface).
How does it work?
1) Define “rules” for color and opacity;
2) Accumulation process depending on the view point.
![Page 12: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/12.jpg)
Direct Volume Rendering Consider the 3D data as:
A semitransparent medium; Lightemitting medium.
Approaches based on physical models of light (cf. Computer Graphics Illumination);
The 3D data is represented as a whole: View “all” of the inside!
![Page 13: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/13.jpg)
Direct Volume Rendering: Overview
1) Transfer Function Design: Allows the user to specify “rules” for color and
opacity.
1) Accumulation process: Volume Ray Casting; Splatting; Shear warp, Texture Mapping, etc...
![Page 14: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/14.jpg)
Transfer Functions
Given a Volumetric Mesh and a Scalar Field: Provide an intuitive way to define:
− The color of a region;− Its level of opacity.
Process dependent on the Scalar Field (feature space):− For a given isovalue:
Its color; Its opacity.
![Page 15: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/15.jpg)
Transfer Function Design
Key Idea: Associate distinct materials (function ranges)
to distinct properties
![Page 16: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/16.jpg)
Transfer Function Design
f
Material 1
Key Idea: Associate distinct materials (function ranges)
to distinct properties
![Page 17: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/17.jpg)
Transfer Function Design
f
Material 2
Key Idea: Associate distinct materials (function ranges)
to distinct properties
![Page 18: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/18.jpg)
Transfer Function Design
f
Material 3
Key Idea: Associate distinct materials (function ranges)
to distinct properties
![Page 19: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/19.jpg)
Transfer Function Design
f
Material 4
Key Idea: Associate distinct materials (function ranges)
to distinct properties
![Page 20: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/20.jpg)
Transfer Function Examples
f
Color Opacity
![Page 21: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/21.jpg)
Transfer Function Examples
f
Color Opacity
![Page 22: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/22.jpg)
Transfer Function Examples
f
Color Opacity
![Page 23: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/23.jpg)
Transfer Function Examples
f
Color Opacity
![Page 24: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/24.jpg)
Transfer Function Examples
f
Color Opacity
![Page 25: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/25.jpg)
From A User Perspective Finding the “right” transfer function can be hard:
Experienced users; A priori knowledge about the dataset (value isolation).
f
f
f
f
![Page 26: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/26.jpg)
From A User Perspective SemiAutomatic technique:
[BPS97]; SemiAutomatic technique:
[WDCPH07];
![Page 27: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/27.jpg)
Ray Casting Overview
1) Ray Casting;
2) Sampling;
3) Shading;
4) Compositing.
![Page 28: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/28.jpg)
Ray Casting
For each pixel of the screen space: Cast a ray; Direction of
observation; Intersection problem:
− Octrees.
![Page 29: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/29.jpg)
Sampling
Along each ray: Sample the data along the ray;
− Intersection with edges; Compute the function value on
samples− Apply the appropriate interpolant;
![Page 30: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/30.jpg)
Shading
For each sample: Retrieve the corresponding color; Compute the gradient of the field:
− Normal of the corresponding isosurface;
Shade the sample accordingly, given:
− The normal (gradient);− The color;− The view direction and the lights.
![Page 31: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/31.jpg)
Compositing
Integrate all the contributions; Along each ray:
Go from the back to the front; At each sample:
− Retrieve the opacity value;
Composite all along.
![Page 32: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/32.jpg)
Alphablending
OpenGL facility to blend color contributions;
The order matters! Ca = (0,0,0), a = 1;
Cb = (0,1,0), b = 0.5;
Cc = (1,1,1), c = 0.1;
![Page 33: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/33.jpg)
Alphablending
OpenGL facility to blend color contributions;
The order matters! Ca = (0,0,0), a = 1;
Cb = (0,1,0), b = 0.5;
Cc = (1,1,1), c = 0.1;
![Page 34: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/34.jpg)
Alphablending
OpenGL facility to blend color contributions;
The order matters! Ca = (0,0,0), a = 1;
Cb = (0,1,0), b = 0.5;
Cc = (1,1,1), c = 0.1;
![Page 35: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/35.jpg)
Alphablending
OpenGL facility to blend color contributions;
The order matters! Ca = (0,0,0), a = 1;
Cb = (0,1,0), b = 0.5;
Cc = (1,1,1), c = 0.1;
![Page 36: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/36.jpg)
Alphablending
OpenGL facility to blend color contributions;
The order matters! Ca = (0,0,0), a = 1;
Cb = (0,1,0), b = 0.5;
Cc = (1,1,1), c = 0.1;
![Page 37: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/37.jpg)
Alphablending
OpenGL facility to blend color contributions;
The order matters! Ca = (0,0,0), a = 1;
Cb = (0,1,0), b = 0.5;
Cc = (1,1,1), c = 0.1;
![Page 38: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/38.jpg)
Alphablending
OpenGL facility to blend color contributions;
The order matters! Ca = (0,0,0), a = 1;
Cb = (0,1,0), b = 0.5;
Cc = (1,1,1), c = 0.1;
C'(i) = (i)*C(i) + (1 – (i))*(i1)*C(i1)
'(i) = (i) + (1 (i))*(i1)
![Page 39: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/39.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
Color Intensity
![Page 40: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/40.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
First
Color Intensity
![Page 41: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/41.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
First
Color Intensity
![Page 42: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/42.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
First
Average
First
Color Intensity
![Page 43: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/43.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
First
Average
First
Color Intensity
![Page 44: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/44.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
First
Average
First
MaxMax
Color Intensity
![Page 45: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/45.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
First
Average
First
MaxMax
Color Intensity
![Page 46: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/46.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
First
Average
First
Max
Accumulate
Max
Color Intensity
![Page 47: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/47.jpg)
Compositing Schemes
Color intensity along the ray:
Depth
First
Average
First
Max
Accumulate
Color Intensity
![Page 48: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/48.jpg)
Compositing Along the Ray
• From Back to Front:
Eye
C(i1), (i1)C(i), (i)
C'(i) = (i)*C(i) + (1 – (i))*(i1)*C(i1)
'(i) = (i) + (1 (i))*(i1)
![Page 49: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/49.jpg)
Ray Casting: Discussion
• Avantages:– Simple algorithm;
– Inherently parallel;
– Can extend lighting model (diffraction);
– High quality renderings.
• Drawbacks:– SLOW!!!!
• Lots of rays;• Lots of samples;
– Dense samples;
– Not outofcore...
![Page 50: Introduction to Volume Rendering - PEQUAN Teamtierny/stuff/teaching/tierny_intro_vol_rend09.pdf · Introduction to Volume Rendering ... Standard OpenGL ... The 3D data is represented](https://reader033.vdocuments.mx/reader033/viewer/2022051720/5a78e89b7f8b9a4f1b8e2ea5/html5/thumbnails/50.jpg)
Simple Optimizations
• Make the Ray Casting algorithm “Transfer Function Aware”:
– No need to cast ray or sample in regions with no visual properties;
– Segmentation of the feature space.
• Other advanced techniques...– On Thursday with Attila!