Adaptive Visualization of Dynamic Unstructured Meshes
Steven P . Callahan Dissertation Defense in partial fulfillment for a Ph.D. in Computing
Adaptive Visualization of Dynamic Unstructured Meshes Steven P . - - PowerPoint PPT Presentation
Adaptive Visualization of Dynamic Unstructured Meshes Steven P . Callahan Dissertation Defense in partial fulfillment for a Ph.D. in Computing Overview What is the problem? Where were we then? Where are we now? How did we
Steven P . Callahan Dissertation Defense in partial fulfillment for a Ph.D. in Computing
[Max 1995] [Porter and Duff 1990] [Sabella 1988] [Blinn 1982]
[Max 1995] [Porter and Duff 1990] [Sabella 1988] [Blinn 1982]
Absorption
[Max 1995] [Porter and Duff 1990] [Sabella 1988] [Blinn 1982]
Absorption Emission
[Kindlmann and Durkin 1998] [Kniss et al. 2002] [Kindlmann et al. 2003] [Demarle et al. 2003] [Schneider and Westermann 2003]
[Farias et al. 2000] [Bunyk et al. 1997] [Weiler et al. 2002] [Weiler et al. 2003] [Wylie et al. 2002]
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Software Raycaster
[Garrity 1990]
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Software Raycaster
Projected Tetrahedra
[Shirley and Tuchman 1990]
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Software Raycaster
Incremental Slicing
Projected Tetrahedra
[Yagel et al. 1996]
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Software Raycaster
Hardware Projected Tetrahedra
Projected Tetrahedra
[Wylie et al. 2002]
Incremental Slicing
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Software Raycaster
Hardware Raycasting
Projected Tetrahedra
[Weiler et al. 2003]
Incremental Slicing Hardware Projected Tetrahedra
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Software Raycaster Projected Tetrahedra Incremental Slicing Hardware Projected Tetrahedra Hardware Raycasting
Interactive volume rendering of dynamic unstructured grids requires a combination of novel software algorithms and frameworks that efficiently amortize recent hardware configurations
Computing, 2007
2008
SCI Tech Report, 2007
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Projected Tetrahedra Software Raycaster Incremental Slicing Hardware Projected Tetrahedra Hardware Raycasting
Hardware-Assisted Visibility Sorting
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Projected Tetrahedra Software Raycaster Incremental Slicing Hardware Projected Tetrahedra Hardware Raycasting HAVS
Point-Based Volume Rendering
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Projected Tetrahedra Software Raycaster Incremental Slicing Hardware Projected Tetrahedra Hardware Raycasting HAVS PBVR
Unstructured Volume Rendering Algorithms vs. Hardware
1 10 100 1000 10000 100000 1000000 10000000 1 9 9 1 9 9 1 1 9 9 2 1 9 9 3 1 9 9 4 1 9 9 5 1 9 9 6 1 9 9 7 1 9 9 8 1 9 9 9 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Year Tetrahedra/Second Algorithms Hardware
Projected Tetrahedra Software Raycaster Incremental Slicing Hardware Projected Tetrahedra Hardware Raycasting HAVS PBVR
100% 5.6 fps 50% 20 fps 25% 50 fps 15% 100 fps
[Tomasi and Manduchi 1998] Input Output
Example from Siggraph 2007 Tutorial by Sylvain Paris
I = Image R = Reference Image f = spatial filter g = range filter p = position of center pixel k = normalization term Omega = spatial support Domain Range
[Kopf et al. 2007] I = Image R = Reference Image f = spatial filter g = range filter p = position of center pixel k = normalization term Omega = spatial support
Reference Image (R) Original Image (I) Solution Image (S)
Example from Siggraph 2007 presentation by Johannes Kopf
Reference Image (R) Image (I) Solution Image (S) I = Image R = Reference Image f = spatial filter g = range filter p = position of center pixel k = normalization term Omega = spatial support
Full Resolution Joint Bilateral Upsampled x4
upsampling
Image (I) Depth Layer 1 (R1) Depth Layer 2 (R2) Solution Image (S)
Original
Linearly Upsampled x8
Original Bilaterally Upsampled x8
Direct Indirect
100% at 18 fps 25% at 63 fps 10% at 125 fps
Results: dynamic data is only 5% slower than static data
α f
0 0 1 1
f(x) = R → R4, s → (r, g, b, α)
Original Histogram Range Mapping
TF1 TF2 TF1 ADD TF2 TF1 AND TF2 TF1 XOR TF2
ADD XOR AND
Time Step 12 Time Step 15 Time Step 32 Time Step 35 Step 1 Step 2 TF2 TF1 Step 1 Step 2 TF2 TF1
Linear Blend Non-Linear Blend
1 Million Tetrahedra 40 Time Steps 4 Transfer Functions 20% LOD Full Quality
This dissertation introduced new algorithms and frameworks that efficiently use available hardware for improving the state-of-the-art in volume rendering for large, dynamic unstructured volumes Contributions:
Carlos Scheidegger, John Schreiner, Clàudio Silva
Fellowship