Presentation is loading. Please wait.

Presentation is loading. Please wait.

Interactive High-Quality Volume Rendering on Flexible Consumer Graphics Hardware Klaus Engel, Martin Kraus, Thomas Ertl Visualization and Interactive Systems.

Similar presentations


Presentation on theme: "Interactive High-Quality Volume Rendering on Flexible Consumer Graphics Hardware Klaus Engel, Martin Kraus, Thomas Ertl Visualization and Interactive Systems."— Presentation transcript:

1 Interactive High-Quality Volume Rendering on Flexible Consumer Graphics Hardware Klaus Engel, Martin Kraus, Thomas Ertl Visualization and Interactive Systems Group University of Stuttgart, Germany Graphiktag 2001 - Tübingen

2 Visualization and Interactive Systems Group,University of Stuttgart Volume Data Sources Measurements (CT,MRI) Synthetic data (radial distance volume, + Perlin Noise) Simulations (convection flow)

3 Visualization and Interactive Systems Group,University of Stuttgart Volume Rendering - Physical Model Physics of light transport Simplified to Volume Rendering Integral Transfer Function: Assigns opacity and color Discretization

4 Visualization and Interactive Systems Group,University of Stuttgart Volume Rendering - Methods indirect methods isosurface reconstruction: huge amount of polygons direct methods ray-casting: huge amount of trilinear interpolations

5 Visualization and Interactive Systems Group,University of Stuttgart Texture-based Volume Rendering 2D textures (axis-aligned slices) 3D textures (view-aligned Slices) texturing (trilinear interpolation) texturing (trilinear interpolation) compositing (blending) compositing (blending) texturing (bilinear interpolation) texturing (bilinear interpolation) compositing (blending) compositing (blending)

6 Visualization and Interactive Systems Group,University of Stuttgart Problems - Axis Aligned Slices Missing trilinearly interpolated slices visual artifacts due to fixed number of slices higher number of slices Undersampling Artifacts

7 Visualization and Interactive Systems Group,University of Stuttgart Trilinear Interpolation using 2D Multi-Textures Idea: Compute intermediate slices SiSi S i+1 bilinear interpolation by texture environment S i+α S i+α = (1-α) S i + α S i+1 blending of two textures Real trilinear interpolation Efficient implementation using multitextures

8 Visualization and Interactive Systems Group,University of Stuttgart Flexible PC Graphics Hardware – Multi-Textures  (modulate) = lightmaps only decal only combined scene Light maps in Quake2

9 Visualization and Interactive Systems Group,University of Stuttgart Flexible PC Graphics Hardware – Register Combiners rasterization primitive assembly texture fetching texture environment application color sum fog coverage application texture unit 0 texture unit 1 register combiners final cmb general cmb1 general cmb0

10 Visualization and Interactive Systems Group,University of Stuttgart Flexible PC Graphics Hardware – Result Cryoelectron-microscopic Volume Isosurface of Escherichia Coli Ribosome at 18 Ångström All data slices 10 times more slices

11 Visualization and Interactive Systems Group,University of Stuttgart Higher Sampling Rates – Problem Discrete Approximation of Volume Rendering Integral will converge to correct result for d  –According to Sampling Theorem sampling rate must be greater than the Nyquist frequency –But: High frequencies in the Transfer Function may considerably increase the required sampling rate Pre-Integrated Volume Rendering –Idea: Split numerical integration into one pre-integration for the transfer function one integration for the scalar field –Pre-Integrate Ray-Segments in a pre-processing step

12 Visualization and Interactive Systems Group,University of Stuttgart Volume Rendering - Classification voxels Post- classification interpolation Pre- classification transfer functions classification

13 Visualization and Interactive Systems Group,University of Stuttgart Pre-Integrated Volume Rendering slice-by-slice slab-by-slab sbsb sfsf sfsf sbsb fetch integral from dependent texture sbsb sfsf pre-integrate all possible combinations hardware-accelerated implementation on NVidia GeForce3 chip project slice sfsf sbsb front slice back slice texture polygon

14 Visualization and Interactive Systems Group,University of Stuttgart Flexible Rasterization Hardware - Texture Shaders rasterization primitive assembly texture fetching texture environment color sumfog coverage application texture unit 0 texture unit 1 register combiners final cmb general cmb1 general cmb0 texture shaders

15 Visualization and Interactive Systems Group,University of Stuttgart Flexible Rasterization Hardware - Texture Shaders Texture Shaders (when enabled) replace the standard OpenGL texture fetch mechanism ARB_multitexture with NV_texture_shader ARB_multitexture only (s,t,r,q) 0 (s,t,r,q) 1 (s,t,r,q) 2 (s,t,r,q) 0 (s,t,r,q) 1 (s,t,r,q) 2 stage 0 math & fetch stage 1 math & fetch stage 2 math & fetch unit 0 fetch unit 1 fetch unit 2 fetch With texture shaders, results from previous stages can affect the lookup of a subsequent stage

16 Visualization and Interactive Systems Group,University of Stuttgart Pre-Integrated Volume Rendering RGB 1 (s 2,t 2,r 2 )  (1,0,0) stage 2 DOT_PRODUCT_NV (1,0,0) RGB 1 =s b stage 2 DOT_PRODUCT_NV (1,0,0) RGB 1 =s b RGB 0 (s 3,t 3,r 3 )  (1,0,0) stage 3 DOT_PRODUCT_ TEXTURE2D_NV (1,0,0) RGB 0 =s f stage 3 DOT_PRODUCT_ TEXTURE2D_NV (1,0,0) RGB 0 =s f RGBA result on to register combiners front slice front slice back slice back slice sbsb sbsb stage 1 TEXTURE_2D stage 1 TEXTURE_2D (s 1,t 1 ) RGBA result sfsf sfsf stage 0 TEXTURE_2D stage 0 TEXTURE_2D (s 0,t 0 ) RGBA result sbsb sfsf

17 Visualization and Interactive Systems Group,University of Stuttgart Pre-Integrated Volume Rendering - Isosurfaces Isosurfaces: particular dependent texture 3296 sfsf sbsb 32 96 front slice back slice 1. 1 front slice back slice 4. 4 front slice back slice 2. 2 front slice back slice 3. 3 3a

18 Visualization and Interactive Systems Group,University of Stuttgart Results – Direct Volume Rendering 128 slices pre- classification 128 slices pre-integrated 284 slices post- classification 128 slices post- classification

19 Visualization and Interactive Systems Group,University of Stuttgart Results - Direct Volume Rendering – Random TF

20 Visualization and Interactive Systems Group,University of Stuttgart Results - Isosurfaces

21 Visualization and Interactive Systems Group,University of Stuttgart Results - Tooth data set

22 Visualization and Interactive Systems Group,University of Stuttgart Conclusions Interactive High-Quality Volume Rendering on Consumer Graphics Hardware –Higher Sampling Rates  Trilinear Interpolation using 2D Textures  But: high rasterization requirements –Better: Pre-Integration of Ray-Segments –Pre-Integration as general as post- and pre- classification already applied to cell projection (Roettger et al., Vis‘00) can be applied to ray-casting as well

23 Visualization and Interactive Systems Group,University of Stuttgart Pre-Integrated Volume Rendering Demo Demo and Data Download: http://wwwvis.informatik.uni-stuttgart.de/~engel/pre-integrated/


Download ppt "Interactive High-Quality Volume Rendering on Flexible Consumer Graphics Hardware Klaus Engel, Martin Kraus, Thomas Ertl Visualization and Interactive Systems."

Similar presentations


Ads by Google