570 likes | 707 Views
Toward Effective Visualization of Ultra-scale Time-Varying Data. Han-Wei Shen Associate Professor The Ohio State University. Applications. Large Scale Time-Dependent Simulations Richtmyer-Meshkov Turbulent Simulation (LLNL) 2048x2048x1920 grid per time step (7.7 GB) Run 27,000 time steps
E N D
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
Time-Space Partition (TSP) Tree(Two Level Hierarchical Subdivision) • First level: spatial subdivision bricks “Shallow” Complete Octree SC05 Time-Varying Visualization Workshop
[0,3] [0,1] [2,3] T= 0 1 2 3 Time-Space Partition (TSP) Tree(Two Level Hierarchical Subdivision) • Second level: temporal subdivision 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
T = 1 [0,3] [0,1] [2,3] T= 0 1 2 3 Tree Traversal and Rendering SC05 Time-Varying Visualization Workshop
Image Compositing Front-to-back SC05 Time-Varying Visualization Workshop
[0,3] [0,1] [2,3] T= 0 1 2 3 Rendering Performance • The cached partial images can be re-used for the nodes that have high temporal coherence 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
Time Step 0 10 20 30 # Bricks Loaded 561 73 75 72 Percentage 100 % 13.0 % 13.3 % 12.8% 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 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 = 0 t = 1 SC05 Time-Varying Visualization Workshop
Previous Approach • Algorithm: • Extract the complete set of isosurfaces • Overlap test • Overlapping features are identified and the number of intersecting nodes is calculated. • Best matching test • 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 = 2 T = 1 T = 0 SC05 Time-Varying Visualization Workshop
2D Example • Extract 3D isosurface and then slice back T = 2 T = 1 T = 0 SC05 Time-Varying Visualization Workshop
2D Example • Extract 3D isosurface and then slice back T = 2 T = 1 T = 0 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
T … t+4 t+3 t+2 t+1 t Integration Through Time • 4D to 3D projection (chronovolume) • Regular volume rendering to visualize chronovolumes chronovolume SC05 Time-Varying Visualization Workshop
T … t+4 t+3 t+2 t+1 t 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 ??? SC05 Time-Varying Visualization Workshop
t D - a(s(x(t’)))dt’ C = c(s(x(t)) e dt 0 0 Alpha Compositing • Commonly used in 3D volume rendering D 0 C 2D Image SC05 Time-Varying Visualization Workshop
T t T - a(s(x(t’)))dt’ … C = c(s(x(t)) e dt 0 t+4 0 t+3 t+2 t+1 t Alpha Compositing (2) • Adopt the model to time integration post-classified (color) volume SC05 Time-Varying Visualization Workshop
t T - a(s(x(t’)))dt’ C = c(s(x(t)) e dt 0 0 Transfer Function • Color and opacity function • Modulate by time stamp and data Alpha function example: a a * 0.2 0.7 t v 3 8 6 SC05 Time-Varying Visualization Workshop
Alpha Compositing Example 10 time steps 3 time steps SC05 Time-Varying Visualization Workshop