Smart Hardware Accelerated Volume Rendering Stefan Roettger Stefan
- Slides: 23
Smart Hardware. Accelerated Volume Rendering Stefan Roettger Stefan Guthe Daniel Weiskopf Wolfgang Strasser
2 Overview • Current state of the art in direct volume rendering • What can be improved? • Rendering of segmented data • Hardware-accelerated raycasting Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
3 Direct Volume Rendering • 3 D slicing approach (Akeley ‘ 87) • Pre-integration (Max Vol. Vis ‘ 90, Roettger VIS ‘ 00, Engel HWW ‘ 01) • Pre-integrated material properties (Meissner GI ‘ 02) • Hardware-accelerated pre-integration (Roettger Vol. Vis ‘ 02, Guthe HWW ‘ 02) • Multi-Dimensional TF (Kniss VIS ‘ 01) • Volume clipping (Weiskopf VIS ‘ 02) Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
4 What is missing? • From a medical point of view: • Pre-integration is difficult to apply to segmented medical data • Pre-integration quality is still not good enough • 8 bit frame buffer produces artifacts on consumer graphics hardware Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
5 Pre-Integration • Ray integral depends on three variables: Sf, Sb, and l, where l is assumed to be constant • Pre-compute a table for all combinations of Sf and Sb and store it in a 2 D dependent texture Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
6 Volume Clipping • Use additional scalar clip volume C(x, y, z) • Iso surface for C=0. 5 defines clip geometry • Adjust Sf, Sb, and l according to clip volume (naive approach: set l=0) C=0. 5 • for the case Cf<0. 5<Cb • w = |Cb-0. 5|/|Cb-Cf| • S’f = (1 -w)*Sb+w*Sf • l’= l*w ’ ≈ *w Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
7 Pre-Integration & Segmentation • Segmentation with two materials is easy: • Define second transfer function TF 2 • In the pixel shader: • Make a lookup in TF 1 C=0. 5 for the blue area • Blend with the lookup in TF 2 for the grey area Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
8 Quality Comparison naive clipping clipped Bonsai correct adjustment Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
9 Undersampling Quality Slicing artifacts Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
10 Undersampling Quality Slicing artifacts Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
11 Sampling Quality Slicing artifacts Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
12 Sampling Quality Interpolation artifacts Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
13 Supersampling Quality Still minor interpolation artifacts Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
14 Supersampling Quality Almost correct Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
15 Drawback of Pre-Integration • Linear interpolation assumed in slab • But in fact the interpolation is trilinear • Inside the slab one may cross a voxel boundary • Lighting is also a non-linear operation • Conclusion: For superior quality we need at least 2 -times, better 4 -times oversampling! Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
16 Ray Casting • Supersampling is slow, but fortunately we do not need to supersample everywhere • Define importance volume which tells where to sample more precisely • Depends on 2 nd deriv. of scalar volume and 1 st deriv. of TF • Perform adaptive ray casting on the graphics hardware Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
17 Hardware-Accelerated Ray Casting • Implemented on the ATI Radeon 9700 with multiple floating point render targets: • Need to process all pixels at once • Cannot exploit ray coherence • Early ray termination by early Z-test • Exploit hierarchical Z-buffer compression • Adaptive sampling includes space leaping • Stop if all pixels are terminated (asynchronous occlusion query) Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
18 Hardware-Accelerated Ray Casting • Store ray parameter to determine actual position • Complete PS 2. 0 code given in the paper Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
19 Quality Comparison 4 -times oversampling 8 bit frame buffer HW ray casting full floating point Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
20 Performance • Same performance as 4 times over-sampling with alpha Direct 9 drivers (about 2 seconds per frame) • But already much better quality • With latest drivers we achieve 2 -5 frames per second due to greatly improved performance of occlusion query (12 ms vs. 100 ms) Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
21 ANFSCD: The Bonsai Note: Raw data of all three Bonsai’ is available on my homepage Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
22 Conclusions • We have shown how to combine volume clipping/segmentation with pre-integrated volume rendering • With respect to quality HW ray casting is superior to the traditional slicing approach and with latest drivers is also faster • By reducing the number of adaptive samples frame rates can be pushed even higher while maintaining good quality • Now switching to the Live Demo Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
23 Fin Thanks for your attention! Smart Hardware-Accelerated Volume Rendering Stefan Roettger, University of Erlangen - Stefan Guthe, University of Tübingen Vis. Sym ‘ 03 Grenoble
- Indirect volume rendering
- Direct volume rendering ray casting
- Volume rendering tutorial
- What is vtk
- Introduction to volume rendering
- Internal and external hardware
- Investing in you future smart answers
- One smart man he felt smart
- Book smarts definition
- It's not how smart you are
- Smart two men are
- Kim ung yong
- It's not how smart you are
- Street smart vs book smart quotes
- Rendering fur with three dimensional textures
- Visual rendering
- Rendering carcass
- Photorealistic rendering carlsbad
- Rastorization
- Eurographics symposium on rendering
- Hair rendering
- Teknik rendering grafik tiga dimensi dengan interaksi sinar
- Car paint rendering
- Rendering pipeline in computer graphics