interactive high-quality volume rendering on flexible consumer graphics hardware klaus engel, martin...

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

Upload: estella-banks

Post on 16-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

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

Interactive High-Quality Volume Rendering

on Flexible Consumer Graphics Hardware

Interactive High-Quality Volume Rendering

on Flexible Consumer Graphics Hardware

Klaus Engel, Martin Kraus, Thomas ErtlVisualization and Interactive Systems GroupUniversity of Stuttgart, Germany

Graphiktag 2001 - Tübingen

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

Visualization and Interactive Systems Group,University of Stuttgart

Volume Data Sources

Measurements (CT,MRI)

Synthetic data(radial distance volume,

+ Perlin Noise)

Simulations (convection flow)

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

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

0s

s

2

10

0 )(),(')'()()( 21),'(),(

0

s

s

s

s

ssss dssssdsesqesIsI

nss 1

n

i

n

ijjiin CsI

0 1

)1()(

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

Visualization and Interactive Systems Group,University of Stuttgart

Volume Rendering - Methods

indirect methods

isosurface reconstruction:huge amount ofpolygons

direct methods

ray-casting:huge amount oftrilinear interpolations

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

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)

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

Visualization and Interactive Systems Group,University of Stuttgart

Problems - Axis Aligned Slices

Missing trilinearly interpolated slices

visual artifacts due tofixed number of slices

higher numberof slices

Undersampling Artifacts

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

Visualization and Interactive Systems Group,University of Stuttgart

Trilinear Interpolation using 2D Multi-Textures

Idea: Compute intermediate slices

Si

Si+1 bilinear interpolation bytexture environment

Si+α

Si+α = (1-α) Si + α Si+1

blending of two textures

Real trilinear interpolation

Efficient implementation using multitextures

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

Visualization and Interactive Systems Group,University of Stuttgart

Flexible PC Graphics Hardware – Multi-Textures

(modulate)

=

lightmaps onlylightmaps only decal onlydecal only

combined scenecombined scene

Light maps in Quake2Light maps in Quake2

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

Visualization and Interactive Systems Group,University of Stuttgart

Flexible PC Graphics Hardware – Register Combiners

rasterizationprimitiveassembly

texturefetching

textureenvironmentapplication

color sum

fogcoverage

application

texture unit 0

texture unit 1

registercombiners

final cmb

general cmb1

general cmb0

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

Visualization and Interactive Systems Group,University of Stuttgart

Flexible PC Graphics Hardware – Result

Cryoelectron-microscopic VolumeIsosurface of Escherichia Coli Ribosome at 18 Ångström

All data slices 10 times more slices

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

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

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

Visualization and Interactive Systems Group,University of Stuttgart

Volume Rendering - Classification

voxels

Post-classification

interpolation

interpolation

Pre-classification

classification

transfer functions

classification

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

Visualization and Interactive Systems Group,University of Stuttgart

Pre-Integrated Volume Renderingslice-by-slice slab-by-slab

sb

sfsf

sb

fetch integral fromdependent texture

sbsf

pre-integrate all possible combinations

hardware-accelerated

implementation on NVidia GeForce3

chip

project slice

sf sb

front slice

back slice

texture polygon

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

Visualization and Interactive Systems Group,University of Stuttgart

Flexible Rasterization Hardware - Texture Shaders

rasterizationprimitiveassembly

texturefetching

textureenvironment

color sum

fog

coverageapplication

texture unit 0

texture unit 1

registercombiners

final cmbgeneral cmb1general cmb0

textureshaders

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

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 0math & fetch

stage 1math & fetch

stage 2math & fetch

unit 0fetch

unit 1fetch

unit 2fetch

•With texture shaders, results from previous stages can affect the lookup of a subsequent stage

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

Visualization and Interactive Systems Group,University of Stuttgart

Pre-Integrated Volume Rendering

RGB1

(s2,t2,r2)

(1,0,0)

stage 2DOT_PRODUCT_NV

(1,0,0) • RGB1=sb

stage 2DOT_PRODUCT_NV

(1,0,0) • RGB1=sb

RGB0

(s3,t3,r3) (1,0,0)

stage 3DOT_PRODUCT_TEXTURE2D_NV

(1,0,0) • RGB0=sf

stage 3DOT_PRODUCT_TEXTURE2D_NV

(1,0,0) • RGB0=sf

RGBA result

on to register combiners

front slice

front slice

back slice

back slice

sbsb

stage 1TEXTURE_2D

stage 1TEXTURE_2D

(s1,t1)RGBA result

sfsf

stage 0TEXTURE_2D

stage 0TEXTURE_2D

(s0,t0)RGBA result

sb

sf

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

Visualization and Interactive Systems Group,University of Stuttgart

Pre-Integrated Volume Rendering - Isosurfaces

Isosurfaces:particular dependent texture

32 96 sf

sb

32

96

front slice

back slice

1.

1

front slice

back slice

4.

4front slice

back slice

2.

2

front slice

back slice

3.3

3a

3a

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

Visualization and Interactive Systems Group,University of Stuttgart

Results – Direct Volume Rendering

128 slicespre-

classification

128 slicespre-integrated

284 slicespost-

classification

128 slicespost-

classification

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

Visualization and Interactive Systems Group,University of Stuttgart

Results - Direct Volume Rendering – Random TF

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

Visualization and Interactive Systems Group,University of Stuttgart

Results - Isosurfaces

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

Visualization and Interactive Systems Group,University of Stuttgart

Results - Tooth data set

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

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

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

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/