34

An Advanced Evenly-Spaced Streamline Placement Algorithm

  • Upload
    anevay

  • View
    56

  • Download
    0

Embed Size (px)

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 Presentation

Citation preview

Page 1: An Advanced Evenly-Spaced  Streamline Placement Algorithm
Page 2: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 3: An Advanced Evenly-Spaced  Streamline Placement Algorithm

Outline

Results

Conclusions

Introduction

ADVESS

Accelerating Placement Generation

Enhancing Placement Quality

Detecting Streamline Loops

IEEE VISUALIZATION 2006

Page 4: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 5: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 6: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 7: An Advanced Evenly-Spaced  Streamline Placement Algorithm

Introduction

Evenly-Spaced Streamlines (ESS) Four problems with ESS placement generation

Non-uniformity

Flow convergence anddivergence cause threeclosely-related issues

IEEE VISUALIZATION 2006

Page 8: An Advanced Evenly-Spaced  Streamline Placement Algorithm

Introduction

Evenly-Spaced Streamlines (ESS) Four problems with ESS placement generation

Non-uniformity

Flow convergence anddivergence cause threeclosely-related issues

Discontinuity

IEEE VISUALIZATION 2006

Page 9: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 10: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 11: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 12: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 13: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 14: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 15: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 16: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 17: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 18: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 19: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 20: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 21: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 22: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 23: An Advanced Evenly-Spaced  Streamline Placement Algorithm

ESS placements generated using our ADVESS algorithm

ESS placements generated using Jobard-Lefer’s algorithm

Page 24: An Advanced Evenly-Spaced  Streamline Placement Algorithm

ESS placements generated using our ADVESS algorithm

ESS placements generated using Mebarki et al’s algorithm

Page 25: An Advanced Evenly-Spaced  Streamline Placement 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

Page 26: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 27: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 28: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 29: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 30: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 31: An Advanced Evenly-Spaced  Streamline Placement Algorithm

ESS placement (1% of height) generated usingour ADVESS algorithm for a 661 481 ocean flow

IEEE VISUALIZATION 2006

Page 32: An Advanced Evenly-Spaced  Streamline Placement Algorithm

ESS placement (1% of height) generated using Mebarki et al’s algorithm for a 661 481 ocean flow

IEEE VISUALIZATION 2006

Page 33: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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

Page 34: An Advanced Evenly-Spaced  Streamline Placement Algorithm

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!