an advanced evenly-spaced streamline placement algorithm
DESCRIPTION
ADVESS. An Advanced Evenly-Spaced Streamline Placement Algorithm. Zhanping Liu Robert J. Moorhead II Joe Groner Visualization Analysis and Imaging Lab High Performance Computing Collaboratory Mississippi State University. Introduction. ADVESS. - PowerPoint PPT PresentationTRANSCRIPT
An Advanced Evenly-Spaced Streamline Placement Algorithm
Zhanping Liu Robert J. Moorhead II Joe Groner
Visualization Analysis and Imaging LabHigh Performance Computing Collaboratory
Mississippi State University
Outline
Results
Conclusions
Introduction
ADVESS
Accelerating Placement Generation
Enhancing Placement Quality
Detecting Streamline Loops
IEEE VISUALIZATION 2006
Introduction
Texture-based (e.g., LIC)
Evenly-Spaced Streamlines (ESS)
There has been significant research on flow visualization Geometry-based (e.g., arrow plots)
IEEE VISUALIZATION 2006
Introduction
Evenly-Spaced Streamlines (ESS)
a global but cluttered imageor
Streamlines remain one of the simplest and fastest techniques Without effective streamline placement, the result tends to be
an incomplete coarse view
IEEE VISUALIZATION 2006
Introduction
Evenly-Spaced Streamlines (ESS) A global ESS placement provides an aesthetic and intuitive pattern to facilitate mental reconstruction of the flow
IEEE VISUALIZATION 2006
Introduction
Evenly-Spaced Streamlines (ESS) Four problems with ESS placement generation
Non-uniformity
Flow convergence anddivergence cause threeclosely-related issues
IEEE VISUALIZATION 2006
Introduction
Evenly-Spaced Streamlines (ESS) Four problems with ESS placement generation
Non-uniformity
Flow convergence anddivergence cause threeclosely-related issues
Discontinuity
IEEE VISUALIZATION 2006
Introduction
Evenly-Spaced Streamlines (ESS)
Cavity
Discontinuity
Non-uniformity
Flow convergence anddivergence cause threeclosely-related issues
Four problems with ESS placement generation
IEEE VISUALIZATION 2006
Introduction
Evenly-Spaced Streamlines (ESS)
Loop-cluttering
Cavity
Discontinuity
Non-uniformity
Flow convergence anddivergence cause threeclosely-related issues
Four problems with ESS placement generation
IEEE VISUALIZATION 2006
Introduction
Existing ESS Algorithms
Image-guided methods
Sample-controlled methods
Turk-Banks [96] and Mao et al [98]
Take a streamline placement as a binary-valued image
Compare each intermediate placement against a reference gray-scale
image to drive an iterative refinement process
Jobard-Lefer [97], Verma et al [00], Mebarki et al[05], and et al
Use inter-sample distance control to approximate inter-line distance control
Distance checking is performed on each newly generated sample against
other existing samples to determine if the distance is less than a threshold
IEEE VISUALIZATION 2006
Introduction
incoming sample to the controller
locate the containing cell and the eight nearest neighbor cells
any sample registered in thecells is at a distance less than thethreshold to the incoming sample?
pop queue head to get a seed
use FSSI to getthe next sample
register samples
save the sample to the line buffer
outside field?critical point?
N
delete samples in the line buffer
sample is a seed?
the number of samples in the line buffer > M?
queue is empty?N
streamline placement ENDs
a simplistic FIFO queue of candidate seeds
push to queue tail two orthog- onal neighbors for each sample
BEGIN: push aseed to the queue
NY
YY
N
YY
Y
N
inter-sample distance controller
seeding strategy
A Sample-Controlled ESS Pipeline
Jobard-Lefer pipeline
FSSI: fixed step size integrator
RK4-ASSEC + CHPI+ fewer samples
Improved for ADVESS
RK4-ASSEC:fourth-order Runge-Kuttaintegrator with adaptive step size & error control
CHPI: cubic Hermitepolynomial interpolation
double queues (primary & secondary) of candidate seeds
candidates by seeds to weighted prim., others goto FIFO second.
begin: push topologyseeds to prim. queue
seeding strategy
any sample registered in thecells is at a distance less than thethreshold to the incoming sample?
adaptive threshold distance basedon local flow characteristics
a loop formed? YN
IEEE VISUALIZATION 2006
ADVESS
Accelerating Placement Generation
RK4-ASSEC (Runge-Kutta 4th-order integrator with Adaptive Step Size and Error Control) is used for fast and accurate streamline advection The distance between two successive raw samples obtained from RK4-ASSEC may be very large Inter-sample distance control mandates the distance between any two successive samples along a streamline be less than the threshold distance to well approximate inter-line distance control ADVESS uses CHPI (Cubic Hermite Polynomial Interpolation) for fast and flexible curve sampling to create evenly-spaced samples along a streamline A large sampling size may be chosen to reduce the number of samples and accordingly the amount of distance checking
IEEE VISUALIZATION 2006
ADVESS
Accelerating Placement Generation
PTD (Proximity Tolerance Degree) of an ESS placement the extent to which the inter-line distance may be actually less than the advetion threshold d_test (a percentage of the seeding threshold d_sep)
S
A1 B1 B2A2
S
d_test
1 2
L1 L2 L1 L2
longer line segment shorter line segment
larger distance control error 1 larger PTD
smaller distance control error 2 smaller PTD
Suppress PTD by using a larger d_test to maintain uniformity
IEEE VISUALIZATION 2006
Raw samples and CHPI samples are used for distance checking against each new sample while only raw samples are rendered
S
A BC
DE
FG
HIJ
black dots: raw(RK4-ASSEC) samples
red dots: interpolated CHPI samplesblue dot: newly generated sample
d_test
ADVESS
Enhancing Placement Quality Adaptive step sizing requires line-clipping against boundaries
without line-clipping artifacts line-clipping without normal distance checking on the extended partremain
IEEE VISUALIZATION 2006
streamlets shown in red encroach inward near the field boundaries
ADVESS
boundary artifacts are removed with line-clipping + normal distance
checking on the extended part
Enhancing Placement Quality Adaptive step sizing requires line-clipping against boundaries
there are stillcavities anddiscontinuities
IEEE VISUALIZATION 2006
ADVESS
Enhancing Placement Quality Double-queue seeding strategy
primary queue head
secondary queue head
Two queues: primary queue has priority over secondary queue in seeding Only when primary queue is temporarily empty is secondary queue used as backup to enable primary queue to be fed with new candidate seeds Primary queue is a sorting queue and is initialized with some topological seeds of a highest weight (through the use of simply topological templates)
sort and insert
Candidate seeds introduced by the seed of a streamline are stored in primary queue (to help spread the schematic topological seeding pattern) and sorted by the weight — the streamline length (to favor long streamlines)
append to tail
Secondary queue is simply an FIFO queue Candidate seeds introduced by each regular sample (non-seed) of a streamline are appended to the tail of secondary queue
IEEE VISUALIZATION 2006
ADVESS
Enhancing Placement Quality
Topological structures are well
shown in the ESS placement
Discontinuities are reduced
long streamlines are favored
Uniformity is not degraded
Cavities are reduced to some
extent, but some remain
IEEE VISUALIZATION 2006
ADVESS
Enhancing Placement Quality
Adaptive distance control is used to reduce cavities by exploiting flow characteristics
Inspired by the use of 2 distance parameters in sample-controlled algorithms
— d_sep for distance control over seeding
— d_test = d_sep a; a < 1.0
for relaxed distance control over advection to alleviate discontinuity
fine-granularity / context-sensitive / flow-driven distance control Obtain the local flow variance magnitude about convergence & divergence
Map the magnitude to [0, 1] & use it to locally adjust threshold distance(s)
The adjusted threshold distance is larger for laminar areas and smaller for
turbulent areas to reduce cavities without noticeable uniformity degradationIEEE VISUALIZATION 2006
ADVESS
Detecting Streamline Loops — rarely mentioned in ESS algorithms A naïve intra-line inter-sample distance checking does not work since the distance between any two successive samples of a streamline is less than the threshold distance and a simplistic intra-line inter-sample distance checking always terminates advection from the beginning
A loop is a closed streamline or an open but tightly spiraling streamline
A streamline is ill-looping when the distance between two successive cycles is less than the advection threshold distance d_test
A closed streamline is always ill-looping
A spiraling streamline is ill-looping when it spirals tightly enough and then it may be ill-looping as a whole or only in part
The ill-looping part of a streamline (closed or spiraling) is what a loop detector should be really focused on and the ill-looping part does not necessarily begin with the seed
ill-looping as a whole
seed
the ill-looping part of each streamline is shown in red
ill-looping only in part
seed
d_test
IEEE VISUALIZATION 2006
IEEE VISUALIZATION 2006
ADVESS
Detecting Streamline Loops — so far without a robust solution for ESS A strategy using seed-based inter-sample distance checking does not work regardless of the use of a seed-based curve length or accumulated angle as a threshold to begin such kind of distance checking Our principle is to allow the ill-looping part of a streamline to advect as long as within a one-cycle limit and this encourages a closed streamline to form the first cycle and a spiraling streamline to show the structure in more detail without cluttering the placement Our universal, effective, and robust strategy is to perform both distance checking and ill-looping angle checking on each existing sample against the current sample (NOT the seed) to see whether or not the ill-looping part approaches the one-cycle limit and is going to cause loop problems The use of dot-product for ill-looping angle representation, cell-based inter-sample distance checking for saving the approach-the-one-cycle- limit judgment, and sample-stamp checking for skipping unnecessary inter-sample distance checking makes our strategy a fast solution
closed streamlines are shown as distracting broken ones and spiraling streamlines cause an ambiguity by tightly merging the negative part (blue) and the positive part (green)
the approach-the-one-cycle-limit judgmentdistinguishes
sample pn (which approaches the one-cycle limit relative to the current sample p0) from
sample pm (which is still far from the one-cycle limit relative to the current sample p0)
due to the use of dot-product for indirect but efficient ill-looping angle representation
Results
Three Algorithms in Comparison Our ADVESS algorithm
RK4-ASSEC + CHPI, streamline clipping, double-queuing, adaptive distancecontrol, and our loop detector
Jobard-Lefer’s algorithm Developed using C++ on WinTel with exactly the same code as that of ADVESS on vector interpolation, inter-sample distance controller, and data structures for storing streamlines Fixed step size RK4 integrator, FIFO neighborhood seeding strategy
Mebarki et al’s algorithm (online executable program from Mebarki)
Test platform — WindowsXP / P4 / 1.70GHz / 512MB RAM
Comparison through 2.0%, 1.5%, and 1.0% density ESS placements ESS placement quality regarding uniformity, continuity, & coverage using a 300 300 flow without centers or tight foci for ESS placement generation speed
a loop-free comparison
IEEE VISUALIZATION 2006
ESS placements generated using our ADVESS algorithm
ESS placements generated using Jobard-Lefer’s algorithm
ESS placements generated using our ADVESS algorithm
ESS placements generated using Mebarki et al’s algorithm
Results
Three Algorithms in Comparison Three Algorithms in Comparison
Jobard-Lefer algorithm our ADVESS algorithm Mebarki et al’s algorithm placement density (%
width) 1.0% 1.882s 1.262s 0.241s
1.5% 1.382s 0.811s 0.140s
2.0% 1.142s 0.621s 0.080s
Timings measured on Pentium IV (1.70GHz, 512MB RAM)
Our ADVESS algorithm is an order-of-magnitude faster than Jobard & Lefer’s algorithm with better placement quality Our ADVESS algorithm is over 5 times faster than Mebarki et al.’s algorithm with comparable placement quality (without considering that Mebarki et al’s algorithm is not robust in loop detection and hence streamline loops may affect placement quality when a flow field with centers or tightly spiraling foci is handled)
When considering loop-related issues, our ADVESS is better in overall placement quality than Mebarki et al’s algorithm as we will demonstrate
IEEE VISUALIZATION 2006
Results
ADVESS adopts an effective, robust, and fast loop detector
generated with our loop detector (time: 0.280 seconds)
two 1% density ESS placements generated for a 400 400 flow field
generated without loop detection(time: 0.671 seconds)
without loop detection excessive samples are generated due to ill-loopingstreamlines more distance checking is needed for them more time consumed
IEEE VISUALIZATION 2006
ESS placement generated without our loop detection
(0.307 seconds)
threshold distance= 4.82 in cell size
flow field size= 525 241
ESS placement generated with
our loop detector (0.253 seconds)
IEEE VISUALIZATION 2006
Results
our loop detector adds a negligible cost to ADVESS
the same 1% density ESS placement produced using ADVESS with (0.262s) and without (0.224s) our loop detector for a 400 400 flow field without centers or
tightly spiraling foci it takes ADVESS 0.038s to run the loop detector for this placement
IEEE VISUALIZATION 2006
generated using ADVESS (threshold distance: 2.34 in cell size)
Northeast Pacific Ocean(180 W ~ 78 W, 20 N ~ 62 N)
Flow field size: 468 337
Hawaii islands
IEEE VISUALIZATION 2006
Results
generated using Mebarki et al’s algorithm (time: 1.684 seconds)
two 1% density ESS placements produced for a 201 201 ROI of the Pacific Ocean
generated using our ADVESSalgorithm (time: 0.362 seconds)
IEEE VISUALIZATION 2006
ESS placement (1% of height) generated usingour ADVESS algorithm for a 661 481 ocean flow
IEEE VISUALIZATION 2006
ESS placement (1% of height) generated using Mebarki et al’s algorithm for a 661 481 ocean flow
IEEE VISUALIZATION 2006
Conclusions ADVESS is capable of interactive placement of evenly-spaced streamlines RK4-ASSEC allows rapid but accurate streamline advection, which is critical to the fast and robust loop detection strategy CHPI provides a fast and flexible curve-sampling scheme to generate evenly- spaced samples along a streamline for inter-sample distance control The use of a large sampling size for CHPI considerably reduces the amount of distance checking while maintaining acceptable uniformity A double-queue seeding strategy helps preserve important flow structures and favors long streamlines in an ESS placement Adaptive distance control exploits flow characteristics to reduce cavities and discontinuities by context-sensitively adjusting inter-line threshold distance An effective, robust, and fast loop detector is capable of handling complex flow fields without cluttering an ESS placement ADVESS is an order-of-magnitude faster than Jobard-Lefer’s algorithm with better placement quality ADVESS is over five times faster than Mebarki et al’s algorithm with comparable placement quality but with more robust loop detection
IEEE VISUALIZATION 2006
IEEE VISUALIZATION 2006
Conclusions
Future Work to extend ADVESS to view-dependent placement of evenly-spaced streamlines for 2D planar flows, 3D curved surface flows, and volume flows
Acknowledgments DoD HPCVI Program NSF grant EPS-0132618 NGI URI Program Abdelkrim Mebarki for his online executable program Anonymous reviewers for their valuable suggestions
Welcome to Our ADVESS
Open to Your Advice
Any Questions?
Thank you!