Download presentation

Presentation is loading. Please wait.

Published bySteven Barker Modified over 3 years ago

1
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

2
IDAV 2 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

3
IDAV 3 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.

4
IDAV 4 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

5
IDAV 5 Cell Movement 1.2 0.7 1.2 1.6 1.1 0.8 0.9

6
IDAV 6 Cell Movement 0.4 0.5 1.0 1.1 1.0 0.7 0.9

7
IDAV 7 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

8
IDAV 8 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

9
IDAV 9 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

10
IDAV 10 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

11
IDAV 11 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

12
IDAV 12 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

13
IDAV 13 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

14
IDAV 14 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 D n 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 k n We chose every 4 th time step

15
IDAV 15 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 k 0 Extract the difference intervals for value q, from D 0 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 D 1 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

16
IDAV 16 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

17
IDAV 17 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 doesnt move in span space between two frames, it produces no difference intervals Creates fewer but wider difference intervals

18
IDAV 18 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

19
IDAV 19 Extraction Time

20
IDAV 20 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

21
IDAV 21 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.

22
IDAV 22 Questions?

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google