sc05 time-varying visualization workshop toward effective visualization of ultra-scale time-varying...
TRANSCRIPT
SC05 Time-Varying Visualization Workshop
Toward Effective Visualization of Ultra-scale Time-Varying
Data
Han-Wei Shen Associate Professor
The Ohio State University
SC05 Time-Varying Visualization Workshop
Applications• Large Scale Time-Dependent
Simulations
• Richtmyer-Meshkov Turbulent Simulation (LLNL)– 2048x2048x1920 grid per time
step (7.7 GB)
– Run 27,000 time steps
– Multi-terabytes output LLNL IBM ASCI system
SC05 Time-Varying Visualization Workshop
Applications • Oak Ridge Terascale
Supernova Initiative (TSI)– 640x640x640 floats– > 1000 time steps– Total size > 1 TB
• NASA’s turbo pump simulation – Multi-zones – Moving meshes – 300+ time steps – Total size > 100GB
ORNL TSI data
NASA turbo pump
SC05 Time-Varying Visualization Workshop
Research Goals and Challenges• Interactive data exploration
• Quick overview, detail on demand
• Feature enhancement and tracking • Display the “invisible”
• Understand the evolution of salient features over time
• Challenges• managing, indexing, and processing of data
SC05 Time-Varying Visualization Workshop
Research Focuses
• Multi-resolution data management schemes• Acceleration Techniques
– Efficient data indexing– Coherence exploitation– Effective data culling – Parallel and distributed processing
• Feature tracking and enhancement– Visual representation– Geometric tracking
SC05 Time-Varying Visualization Workshop
Bricking and Multi-resolution• Bricking – subdivide the volume into
mutiple blocks
SC05 Time-Varying Visualization Workshop
Bricking and Multi-resolution• Create a multi-resolution representation
for each block
SC05 Time-Varying Visualization Workshop
Spatial Data Hierarchy
• Combining octree with multi-res transform
bricks
SC05 Time-Varying Visualization Workshop
Temporal Data Hierarchy?
• Option1 - Multiple Octrees
t = 0 t = 1 t = 2 …
SC05 Time-Varying Visualization Workshop
Temporal Data Hierarchy?
• Option 2: Treat time as another dimension – a single 4D tree (16 tree)
…
SC05 Time-Varying Visualization Workshop
• First level: spatial subdivision
Time-Space Partition (TSP) Tree(Two Level Hierarchical Subdivision)
“Shallow” Complete Octree
bricks
SC05 Time-Varying Visualization Workshop
• Second level: temporal subdivision
Time-Space Partition (TSP) Tree(Two Level Hierarchical Subdivision)
T= 0 1 2 3
[0,3]
[0,1] [2,3]
4 time steps
SC05 Time-Varying Visualization Workshop
Spatio-Temporal Data Encoding
• Wavelet Transform (DWT)
3D wavelet transform
1D WT
SC05 Time-Varying Visualization Workshop
Spatio-Temporal Data Indexing• Time-Space Partitioning (TSP) Trees
SC05 Time-Varying Visualization Workshop
Tree Traversal and Rendering
T= 0 1 2 3
[0,3]
[0,1] [2,3]
T = 1
SC05 Time-Varying Visualization Workshop
Image Compositing
Front-to-back
SC05 Time-Varying Visualization Workshop
Rendering Performance
• The cached partial images can be re-used for the nodes that have high temporal coherence
T= 0 1 2 3
[0,3]
[0,1] [2,3]
SC05 Time-Varying Visualization Workshop
E = 0.05 (3.4% image diff.)
Time-Varying Volume Rendering
Error = 0
11.2 speedup
SC05 Time-Varying Visualization Workshop
I/O Efficiency
Shock wave: 1024 x 128 x 128 , 40 time steps
Minimum brick size 32 x 32 x 32
Temporal error tolerance = 0.02
Time Step
# Bricks Loaded
Percentage
0 10 20 30
561 73 75 72
100 % 13.0 % 13.3 % 12.8%
SC05 Time-Varying Visualization Workshop
Time-Space Partition (TSP) Tree
• More cohesively integrate the temporal and spatial information into a single hierarchical data structure
• Exploit both temporal and spatial coherence - Octree becomes a special case of the TSP tree
SC05 Time-Varying Visualization Workshop
Analyzing Time-varying Features
• Animation might not be sufficient
SC05 Time-Varying Visualization Workshop
Strategy 1: Tracking individual components
SC05 Time-Varying Visualization Workshop
Strategy 2: High Dimensional Visualization
• Chronovolumes
SC05 Time-Varying Visualization Workshop
Tracking Time-Varying Isosurface
• Two main goals:– Identify correspondence
– Detect important evolution events and critical time steps
?
SC05 Time-Varying Visualization Workshop
Evolutionary Events
SC05 Time-Varying Visualization Workshop
Tracking Correspondence
• Wang and Silver’s assumption - Corresponding features in adjacent time steps overlap with each other
SC05 Time-Varying Visualization Workshop
Tracking Correspondence
• A common assumption - Corresponding features in adjacent time steps overlap with each other
t = 0t = 1
SC05 Time-Varying Visualization Workshop
Previous Approach• Algorithm:
1. Extract the complete set of isosurfaces
2. Overlap test 1. Overlapping features are identified and
the number of intersecting nodes is calculated.
3. Best matching test1. Find the best match among features.
SC05 Time-Varying Visualization Workshop
Challenges
• Exhaust search is expensive
• Solution: A local tracking – The user selects a local
feature of interest and start
tracking– Extract high dimensional (4D) isosurfaces
SC05 Time-Varying Visualization Workshop
2D Example
• 2D time-varying isocontours
T = 0
T = 1
T = 2
SC05 Time-Varying Visualization Workshop
2D Example
• Extract 3D isosurface and then slice back
T = 0
T = 1
T = 2
SC05 Time-Varying Visualization Workshop
2D Example
• Extract 3D isosurface and then slice back
T = 0
T = 1
T = 2
SC05 Time-Varying Visualization Workshop
4D Isosurface
• 3D time-varying = 4D • Extract “isosurfaces” from 4D hypercubes• Use 4D maching cubes table (Bhaniramka’02)
• Slice the tetrahedra to get the surface at the desired time step
(x,y,z,t)
SC05 Time-Varying Visualization Workshop
Algorithm
To track an isosurface component:
• User chooses a local component at t
• Propagate 4D “isosurface” from the seed
• Slice the 4D isosurface at t+1
• Continue to t+2 if desired
SC05 Time-Varying Visualization Workshop
Detect critical time steps for isosurface tracking
• A 4D isocontour component is a tetrahedral mesh embedded in four dimensional space. We can treat the 4D mesh as a normal 3D mesh, with the time values as the scalar values defined over the tetrahedron vertices.
• The critical points of this mesh indicate when and where the topology of the isosurface will change.– Local minimum Creation– Local maximum Dissipation– Saddle Amalgamation/Bifurcation– Regular vertex Continuation
SC05 Time-Varying Visualization Workshop
Color the components
SC05 Time-Varying Visualization Workshop
Color the components
SC05 Time-Varying Visualization Workshop
Critical Time Steps
SC05 Time-Varying Visualization Workshop
Chronovolumes
• A Direct Rendering Technique for Visualizing Time-Varying Data
(Jonathan Woodring and Han-Wei Shen 2003)
SC05 Time-Varying Visualization Workshop
Main Idea
• Render data at different time steps to a single image – Establish correspondences between features– Compare shapes and sizes of features in time – Reason about the positions of the features – Reveal temporal trend
SC05 Time-Varying Visualization Workshop
Early Work
Chronophtography (Marey, 1830-1904)
Nude descending a staircase – Duchamp, 1912
SC05 Time-Varying Visualization Workshop
Chronovolumes
• 4D rendering idea
• Integration through time– Integration functions
SC05 Time-Varying Visualization Workshop
4D Rendering • Direct visualization of 4D data
• Project the 4D data into a visualizable lower dimensional space (2D images)
2D -> 1D 3D -> 2D
SC05 Time-Varying Visualization Workshop
4D Rendering
• 4D to 2D projection?
• Need to preserve the relationships between different objects in (3D) space and also reveal their relationship in time
SC05 Time-Varying Visualization Workshop
Integration Through Time
1. 4D to 3D projection (chronovolume)
2. Regular volume rendering to visualize chronovolumes
tt+1
t+2 t+3t+4 …
T chronovolume
SC05 Time-Varying Visualization Workshop
Integration Function
• Vc = F (Vt, V t+1, V t+2, V t+3, …, V t+n-1)
• No so called ‘correct’ integration – the design of F depends on the visualization need
tt+1
t+2 t+3t+4 …
T
???
SC05 Time-Varying Visualization Workshop
Alpha Compositing
• Commonly used in 3D volume rendering
C = c(s(x(t)) e dt - a(s(x(t’)))dt’
0
D
0
t
C0
D
2D Image
SC05 Time-Varying Visualization Workshop
Alpha Compositing (2)
• Adopt the model to time integration
tt+1
t+2t+3
t+4
…
T
C = c(s(x(t)) e dt - a(s(x(t’)))dt’
0
T
0
t
post-classified (color) volume
SC05 Time-Varying Visualization Workshop
Transfer Function
• Color and opacity function
• Modulate by time stamp and data
C = c(s(x(t)) e dt - a(s(x(t’)))dt’
0
T
0
t
t
v
*
Alpha function example:
3 8
0.2 0.7
6
SC05 Time-Varying Visualization Workshop
Alpha Compositing Example
10 time steps 3 time steps
SC05 Time-Varying Visualization Workshop
Additive Colors
• Show how features overlap
tt+1
t+2t+3
t+4
…
T
C = c(s(x(t)) dt 0
T~
SC05 Time-Varying Visualization Workshop
Additive Color Example
Alpha Compositing Additive Color
SC05 Time-Varying Visualization Workshop
Additive Color Example
Alpha Compositing Additive Colors
SC05 Time-Varying Visualization Workshop
Additive Color Example
Alpha Compositing Additive Colors
SC05 Time-Varying Visualization Workshop
Min/Max Intensity
• Detect the ‘hot spot’
tt+1
t+2t+3
t+4
…
T F(V i) = such that V > Vi for any i<
• Show which time step has the highest(lowest) value, and also what that value is.
SC05 Time-Varying Visualization Workshop
Maximum Intensity Example
Additive Colors Maximum Intensity
SC05 Time-Varying Visualization Workshop
Maximum Intensity Examples
Alpha Compositing Maximum Intensity