Top Banner
Using Difference Intervals for Time- Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and Visualization Department of Computer Science University of California, Davis
22

Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

Mar 27, 2015

Download

Documents

Steven Barker
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

Using Difference Intervals for Time-Varying Isosurface Visualization

Kenneth W. Waters

Christopher S. Co

Kenneth I. Joy

Institute for Data Analysis and Visualization

Department of Computer Science

University of California, Davis

Page 2: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

2IDAVIDAV

Goals

Target out-of-core time-varying isosurface extraction• Interesting data sets are many times the size of core memory

Extend an existing out-of-core value space isosurface extraction method to work with time-varying data• Reduces development effort

Trade a long pre-processing step for fast visualization of all isosurfaces within a data set

Trade increased disk space usage for decreased disk traffic• Disk space is cheap• Disk access is very slow

Page 3: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

3IDAVIDAV

Terms

“Full Extraction” is the determination of which cells are active for a particular isosurface from a particular time step• This is provided to us by the underlying non time-varying isosurface

extraction algorithm

“Incremental Extraction” is the process of extracting only the differences between an isosurface in one time step and the same isosurface in the next time step.• This work focuses on adding incremental extraction using the

machinery of the underlying extraction algorithm

If you scalar volume data is incoherent the difference between two successive isosurfaces may be larger than the isosurfaces themselves, in this case our method is slower than the naive approach.

Page 4: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

4IDAVIDAV

Span Space Review

Developed by Livnat et. al. 2-D virtual space where cells are

represented by points located by their minimum and maximum intensity values

Isosurface extraction is reduced to finding which points lie within the rectangle corresponding to the isovalue

Each point in span space represents an interval of intensity values

Page 5: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

5IDAVIDAV

Cell Movement

1.20.7

1.2

1.6 1.1

0.8

0.9

Page 6: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

6IDAVIDAV

Cell Movement

0.40.5

1.0

1.1 1.0

0.7

0.9

Page 7: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

7IDAVIDAV

Difference Intervals

These two intervals break the scalar value space into five intervals.

Suppose you have the complete isosurface for a particular isovalue for the first time step

Page 8: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

8IDAVIDAV

Difference Intervals

Suppose you had the isosurface, with isovalue q <= a.

This cell is not active in either time step

No work needs to be done for this cell to transform the isosurface from the first time step to the second time step

Page 9: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

9IDAVIDAV

Difference Intervals - Add

Suppose you had the isosurface, with isovalue a < q <= b.

This cell is not active in the first time step but is active in the second time step

We need to add this cell to the isosurface to transform from the first time step to the second time step

Page 10: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

10IDAVIDAV

Difference Intervals

Suppose you had the isosurface, with isovalue b < q < c.

This cell is active in both the first time step and the second time step

No work needs to be done for this cell to transform the isosurface from the first time step to the second time step

This is where we save time and disk traffic

A full extraction of second time step would re-extract this interval, we can avoid reading this interval from disk

Page 11: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

11IDAVIDAV

Difference Intervals - Remove

Suppose you had the isosurface, with isovalue c <= q < d.

This cell is active in the first time step but is not active in the second time step

We need to remove this cell from the isosurface to transform from the first time step to the second time step

Page 12: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

12IDAVIDAV

Difference Intervals

Suppose you had the isosurface, with isovalue q >= d.

Identical to the first case

This cell is not active in either the first time step or the second time step

No work needs to be done for this cell to transform the isosurface from the first time step to the second time step

Page 13: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

13IDAVIDAV

Difference Intervals

We now have two intervals which describe when work needs to be done to transform our isosurface

These two intervals can be inserted as cells into our existing extraction algorithm

There are 11 different ways a cell can move in the span space• The two difference intervals are

always smaller than the intervals for the original cell

• The two difference intervals are always disjoint

Page 14: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

14IDAVIDAV

Using Difference Intervals - Preprocessing

Between every two time steps compute the set of difference intervals which can be used to transform the isosurface for any isovalue

Insert these difference intervals into our existing out-of-core isosurface extractor, there will be a different instance of the extractor for each pair of time steps.• Label these structures Dn

Create “key frame” extraction structures, use the existing out-of-core isosurface extractor on select “key frames” as if they where non time-varying data sets• Label these structures kn

• We chose every 4th time step

Page 15: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

15IDAVIDAV

Using Difference Intervals - Extraction

To view the isosurface for isovalue q, progressing through all of the time steps

• Extract the isosurface for the first time step, using k0

• Extract the difference intervals for value q, from D0

• Apply the extracted add and remove operations to the isosurface for the first time step, to extract the isosurface for the second time step

• Repeat with the difference intervals from D1 to get to the isosurface for the third time step, etc.

To change the isovalue or seek to a different time step• Do a full extraction from the nearest key frame• Apply difference intervals until your at the desired time step

Page 16: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

16IDAVIDAV

Preview Rendering

We only load data from disk when a cell becomes active or inactive• We have no information about

the intensity values for an active cell in a particular time step

• We cannot use a traditional rendering method to draw the isosurface

Render all the active cells as screen aligned points.

Using the depth buffer approximate normals and lighting in screen space

If the user pauses to take a close look at a particular time step, load the full data for that time step off disk, for higher quality rendering

Page 17: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

17IDAVIDAV

Compression

A generalized versions of the compression provided by the Temporal Hierarchical Index Tree [Shen 98]

Compress each cell independently If a cell moves less than in span space

over several time steps “move” that cell to its extreme value for all of those time steps• Makes the cell stationary for several

time steps, before jumping a long (> ) distance in span space

• Produces only false positives

If a cell doesn’t move in span space between two frames, it produces no difference intervals

Creates fewer but wider difference intervals

Page 18: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

18IDAVIDAV

Data Sets

Tested using two datasets 5jet

• 128 x 128 x 128• 1,000 time steps• Float data• 7.81 GiB

Argon Bubble• 640 x 256 x 256• 131 time steps• Float data• 20.4 GiB

Page 19: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

19IDAVIDAV

Extraction Time

Page 20: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

20IDAVIDAV

Build Time and Disk Usage

5jet• = 50 • 2.94% false positive rate• 96 minute differential span space generation time• 11,574 MiB for difference intervals, 6,000 MiB for key frames • 46.8 GiB uncompressed difference interval size

Argon Bubble• = 0.025• 3.34% false positive rate• 83 minute differential span space generation time• 7,496 MiB for difference intervals, 20,948 MiB for key frames• 121.8 GiB uncompressed difference interval size

Page 21: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

21IDAVIDAV

Conclusion

Extended any existing value-spaced out-of-core isosurface extraction algorithm to work on time-varying data by generating difference intervals

Difference intervals allow us to skip extracting cells which remain active from time step to time step• Reduces disk traffic

Applied compression to the data before difference interval generation• Reduces disk space usage

Rendered the isosurface with only the active cell positions• Eliminates the need to fetch volume data from disk for rendering

Extraction for the 5jet data set averaged 200ms. Extraction for the larger data set was not real-time, but the results

where promising.

Page 22: Using Difference Intervals for Time-Varying Isosurface Visualization Kenneth W. Waters Christopher S. Co Kenneth I. Joy Institute for Data Analysis and.

22IDAVIDAV

Questions?