Top Banner
Particle Flurries: a Case Study of Synoptic 3D Pulsatile Flow Visualization Jason S. Sobel, Andrew S. Forsberg,David H. Laidlaw, Robert C. Zeleznik, Daniel F. Keefe, Igor Pivkin, George Em Karniadakis and Peter Richardson Brown University Figure 1 An artist-enhanced illustration of a fully-immersed user standing in an artery just upstream of a bifurcation. A synoptic visualization is created as hundreds of haloed, motion-blurred particles are propelled by the fluid past her, and kelp anchored on the vessel wall shift in response to the flow’s be- havior. The vessel wall geometry is rendered as a chicken-wire mesh to both reveal its structure and objects behind it, as well as give the user a spatial reference without obscuring the pathlines. Abstract We present Particle Flurries, a case study of our efforts toward a synoptic visualization of pulsatile 3D flow that strives to show viewers all flow features simultaneously. The contributions are: a flow visualization technique for stereo viewing that quickly shows particle flow details throughout a volume; a novel poisson-based seeding strategy that prevents redundancy in the particle visualiza- tion; interactively controlled “sponges” that can emphasize specific areas of flow; and “kelp” that highlights flow behavior near sur- face geometry. Our solution uses immersive stereoscopic VR to dis- play a novel volume-filling particle animation of complex 3D flow together with a visually rich wall representation that reveals the wall geometry, shows data near surfaces, and minimally obscures flow. We developed a tunable particle display algorithm that is both sparse and Poisson-disk-like distribution based; these two features ensure, respectively, that individual flow features are easily seen and that all flow features are shown over time. Interactive tools bias the display algorithm to provide different synoptic views to explore and emphasize various flow qualities such as near-wall flow or fast flow. We studied a number of visual design choices, for example haloing motion-blurred particles, that further enhance 3D viewing and synoptic visualization. Our novel seeding algorithm can reduce the number of seeds required to generate a synoptic particle ani- mation of complex 3D flow by 93% over comparable fixed-interval seeding algorithms. We successfully applied this technique to both internal and external flows. Using our technique, domain experts informally reported that they could better understand the details of complex 3D flow and could find unexpected features more quickly than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study of our efforts to- wards a synoptic visualization of complex pulsatile 3D flow (see Figure 2 A view of animated particles and “kelp” near the bifurcation. The kelp visualization technique complements the PF technique and are drawn as greenish-blue streamlines anchored by polygons colored by pressure near the vessel surface. The reddish color shown here indicates high pressure. Figure 3 A 2D illustration of the 3D artery geometry and flow direction. The labels 1 and 2 indicate the approximate view position and orientation of Figures 1 and 2, respectively. Figure 4 A snapshot of a bat flying in a wind tunnel with small reflective markers on its body. Motion capture techniques helped create a 3D bat model which was then used to compute data sets of simulated 3D airflow past the bat’s flapping wings. Particle flurries visualized the simulated air flow in the context of the model. Figures 1, 2, 3, and 4). A synoptic visualization shows the viewer a synopsis of all flow features simultaneously. Weather maps from TV news reports and online web pages, which give overviews of important information, are examples of 2D synoptic visualizations. Because the human visual system is so adept at finding patterns, we hypothesize that users will be able to find unexpected features more quickly using a synoptic visualization method and that this will speed the understanding of complex 3D time-varying flows. Our approach to making synoptic visualizations of 3D pulsatile
10

Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

Jul 13, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

Particle Flurries: a Case Study of Synoptic 3D Pulsatile Flow Visualization

Jason S. Sobel, Andrew S. Forsberg, David H. Laidlaw, Robert C. Zeleznik, Daniel F. Keefe,Igor Pivkin, George Em Karniadakis and Peter Richardson

Brown University

Figure 1 An artist-enhanced illustration of a fully-immersed user standing inan artery just upstream of a bifurcation. A synoptic visualization is created ashundreds of haloed, motion-blurred particles are propelled by the fluid pasther, and kelp anchored on the vessel wall shift in response to the flow’s be-havior. The vessel wall geometry is rendered as a chicken-wire mesh to bothreveal its structure and objects behind it, as well as give the user a spatialreference without obscuring the pathlines.

Abstract

We present Particle Flurries, a case study of our efforts towarda synoptic visualization of pulsatile 3D flow that strives to showviewers all flow features simultaneously. The contributions are: aflow visualization technique for stereo viewing that quickly showsparticle flow details throughout a volume; a novel poisson-basedseeding strategy that prevents redundancy in the particle visualiza-tion; interactively controlled “sponges” that can emphasize specificareas of flow; and “kelp” that highlights flow behavior near sur-face geometry. Our solution uses immersive stereoscopic VR to dis-play a novel volume-filling particle animation of complex 3D flowtogether with a visually rich wall representation that reveals thewall geometry, shows data near surfaces, and minimally obscuresflow. We developed a tunable particle display algorithm that is bothsparse and Poisson-disk-like distribution based; these two featuresensure, respectively, that individual flow features are easily seenand that all flow features are shown over time. Interactive tools biasthe display algorithm to provide different synoptic views to exploreand emphasize various flow qualities such as near-wall flow or fastflow. We studied a number of visual design choices, for examplehaloing motion-blurred particles, that further enhance 3D viewingand synoptic visualization. Our novel seeding algorithm can reducethe number of seeds required to generate a synoptic particle ani-mation of complex 3D flow by 93% over comparable fixed-intervalseeding algorithms. We successfully applied this technique to bothinternal and external flows. Using our technique, domain expertsinformally reported that they could better understand the details ofcomplex 3D flow and could find unexpected features more quicklythan with laboratory experiments or 2D viewing tools.

1 Introduction

We present Particle Flurries (PF), a case study of our efforts to-wards a synoptic visualization of complex pulsatile 3D flow (see

Figure 2 A view of animated particles and “kelp” near the bifurcation. Thekelp visualization technique complements the PF technique and are drawn asgreenish-blue streamlines anchored by polygons colored by pressure near thevessel surface. The reddish color shown here indicates high pressure.

Figure 3 A 2D illustration of the 3D artery geometry and flow direction.The labels 1 and 2 indicate the approximate view position and orientation ofFigures 1 and 2, respectively.

Figure 4 A snapshot of a bat flying in a wind tunnel with small reflectivemarkers on its body. Motion capture techniques helped create a 3D bat modelwhich was then used to compute data sets of simulated 3D airflow past thebat’s flapping wings. Particle flurries visualized the simulated air flow in thecontext of the model.

Figures 1, 2, 3, and 4). A synoptic visualization shows the viewera synopsis of all flow features simultaneously. Weather maps fromTV news reports and online web pages, which give overviews ofimportant information, are examples of 2D synoptic visualizations.Because the human visual system is so adept at finding patterns,we hypothesize that users will be able to find unexpected featuresmore quickly using a synoptic visualization method and that thiswill speed the understanding of complex 3D time-varying flows.

Our approach to making synoptic visualizations of 3D pulsatile

Page 2: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

flow tractable was inspired by videos of particles animating througha vessel, which show many flow features in a short period of time.However, the video’s flat view raised questions about the precisebehavior of the complex 3D flow such as how particles moved inthe third dimension and what their movement was relative to thevessel wall. An immersive viewing environment promised to moreeffectively display complex 3D structures, thus our primary chal-lenge was the design of an effective 3D visualization based on themotivational 2D visualization style.

Interestingly, the choices we made in developing an effective vi-sual design for PF (e.g., immersive viewing, the vessel wall texture,rendering thousands of haloed motion-blurred particles) are not ap-propriate for paper and video viewing of PF. Adapting a 2D conceptto 3D or vice versa can introduce problems. To illustrate, the staticmonoscopic images in this paper can not recreate the immersiveexperience of PF. A more surprising example is that if we disabledonly stereo viewing in PF, viewers could not make sense of the vi-sualization.

PF tries to satisfy four goals:

� represent all flow features,� depict flow at artery surfaces,� be interactive, and� avoid visually overwhelming the viewer.

To briefly illustrate the technique, when a user begins exploration ofa dataset with PF three activities commence: the reference geometryappears around the user, particles that will traverse the entire floware continuously released, and streamlines anchored to the bound-ary surface and proportional in length to the velocity just off the sur-face will ebb and flow, like kelp in the sea. In our implementation,users change their viewpoint by moving their head (the system useshead-tracking) or by using a six degree-of-freedom hand-held wanddevice to control a flying or a “world-grabbing” navigation tech-nique. To fly, the user points the wand in a direction and pushes athumb-joystick forward or backward to move forward or backwardin the specified direction. Pressing a button on the wand causes sub-sequent wand translations and rotations to be applied to the worldview. Together, these techniques allow rapid navigation of data setswe have used. Many other published navigation techniques existand could be more appropriate for some data sets. Users also haveconsiderable control over the visual representation, as we describebelow.

This paper presents the overall design of PF including the algo-rithms for seeding particles, our method for creating salient bound-ary geometries and lucid particle paths, a complementary techniquecalled “kelp” for better showing flow data very close to surfaces, adescription of the “sponge” user interaction techniques, a descrip-tion of the tools for biasing the display algorithm to provide differ-ent synoptic views, and a discussion of the system we constructed totest PF and its associated tools. We demonstrate our techniques withdata sets of flow through an artery (an internal flow) and around abat flapping its wings (an external flow).

2 Motivation

This work is motivated by our ongoing study of the correlation be-tween arterial blood flow and lesions and by our research into themechanics, dynamics, and evolution of animal flight

In our group, cardiologists, bioengineers, and computer scientistswork together testing the hypothesis that the location of atheroscle-rotic disease is correlated with the arterial blood flow characteristics

within arteries. Pathological study has shown that plaque forma-tion is not random; thus biomedical engineers are investigating ifplaque formation is somehow related to the local details of bloodflow [1][2]. Blood flow interaction, both with substances carried inthe flow and some present or generated in the vessel wall, can accel-erate or decelerate the local progress of atherosclerosis. A carefulunderstanding of the interaction between the flow and the surfaceis needed in order to understand the cause of detrimental medicalconditions and how to better prevent or treat them.

Computational approaches to understanding arterial flow promiseto be extremely valuable tools, but are currently in a primitive state.Problem specifications approximating real-world situations as wellas simulation models can not yet account for all physical compo-nents of a real flow. Furthermore, understanding the simulationsproduced is difficult primarily due to the scale and complexity ofdata produced. The work presented here advances our capabilitiesto understand the simulated data produced.

The arterial flow data we used was derived from a prescribed ideal-ized artery geometry and simulated computationally.

In terms of animal flight, our goal is to better understand how flightworks in different species and how flight techniques evolved. Asidefrom gaining insight into these specific questions, the broader im-pact includes application to designing better flying machines. Weare studying bats because they are particularly good at flying andoffer tremendous genetic diversity via a thousand different species.Bats are much more agile, complex, and varied than birds and fly ata greater range of speeds.

The bat flow data we used was derived by motion capturing thegeometry of a bat flying in a wind tunnel. A volume around thecaptured geometry was meshed and flow velocities were calculatedwithin that volume.

3 Related Work

Particle Flurries integrates results on visual representation frommany scientific visualization sources. Illuminated streamlines weremotivational in creating the particle representation and seeding [3].Fuhrmann, et al, describe a similar virtual-reality system [4]. PFdiffers from both because we display unsteady flow, have no pathlines that begin or end mid-flow, and cycle among a much larger setof path lines– effectively displaying more complex flow. Work byZhang, et al, to carefully choose representative paths for the displayof tensor-valued volume data [5] is analogous to our efforts to care-fully choose particles for displaying 3D flow. Turk and Bank’s 2Dwork [6] is similarly related. Our tools aspire to show global and lo-cal behavior of the flow as does LIC [7] [8], but our approach usestime, 3D sponges, and stereo viewing, and hence is very different.

Steinman, et al, [9] produced motivational movies of carotid bloodflow with 3D particle traces, but they did so using a viewpoint out-side the flow volume and monoscopic view.

A single pathline, streamline, or streakline only shows a piece ofthe puzzle; they are useful for detailed analysis. Displaying a com-plex flow’s many streamlines and streaklines in order to achieve asynoptic visualization often fails because the resulting display over-whelms the viewer as the density of lines fills the volume. Ani-mated particles that follow path lines reduced the display complex-ity and reinforced the flow’s behavior. The differences between ourwork and earlier particle visualizations are the decision to allow theviewer to be immersed in an automatically constructed and visuallymanageable view of the flow, the development of an effective ren-dering style for immersive viewing, and a suite of tools for tuningthe visualization.

Bryson, et al, [10] point out that there is little to be gained frominteractively exploring a data set when a precise description of a

1

Page 3: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

feature can be used to extract it algorithmically. To make a scientistmore efficient PF can work with techniques that automatically ex-tract higher-level features such as vortex cores, shocks, flow separa-tion and attachment, and recirculation. Automatic extraction tech-niques have not been developed for all flow features and some arestill in the early stages of development so human-in-the-loop ex-ploration is still needed for some 3D flows. In some cases the “low-level” particle paths themselves are of interest for understanding thecause of a particular phenomena.

There exist several systems for exploring 3D flow. One of the mostwidely used is Tecplot [11], a commercial desktop application. Ourapproach differs significantly because we rely on stereo, head track-ing, and highly interactive 3D graphics to display flow data. Visual-izing complex time-varying 3D data in Tecplot can be difficult, seeFigure 5. Bryson’s virtual wind tunnel [12] is a clear antecedent toour work but requires the user to manipulate widgets to build-up thevisualization, whereas we aim to provide a complete view in a shorttime without require the user to do more than navigate the data set.

Kuester [13] designed a system that implements a virtual wind tun-nel in a virtual environment and renders up to 60,000 particles at 60frames per second. While Kuester’s goal was to enable visualiza-tion of arbitrarily large scientific data sets on commodity hardwareand high graphics performance, our goal was to achieve a synopticvisualization of 3D pulsatile flow. Our approaches to precomput-ing particle paths, particle representation, boundary wall represen-tation, and user interaction differ.

Crawfis, et al, developed “hairs”, a technique for visualizing flownear a surface[14]. Their method is similar to our kelp, but differsin the visual “anchor” that we use, in the calculation of the lines,and in the data-driven control over their colors and lengths.

Bauer, et al, [15] uses quasi-random particle seeding to avoid pat-terns and clusters and is similar to [16]. Their approach distributesthe seed points for calculating pathlines, but does not take into ac-count the pathlines in choosing seed points and so would generatemany more pathlines than our method.

Vis5D [17], Pv3 [18], CAVE5D [19], AVS [20], and SCIRun [21]all provide visualization functionality, but visualizations like PFhave not been produced with them and nome of the systems auto-matically provides a synoptic initial visualization. We also build onwork by Forsberg, et al, [22] that provided user-controlled widgetsfor constructing flow visualizations, but our approach is entirelydifferent because the visualization is generated automatically.

4 Our Approach

The goal of a synoptic visualization of 3D pulsatile flow and thefour requirements described above helped guide our work. Our spe-cific approach was primarily inspired by 2D animations of particlesproduced by hydrogen-bubble devices and analogous physical andcomputer visualizations. These interactively rendered animationsquickly revealed interesting features of a flow, displayed flow nearboundary surfaces, required no user interaction to create the visu-alization, and avoided overwhelming the user despite the particledensity. However, because these 2D visualizations of 3D flow hidthe depth component of the flow we wanted to extend this visual-ization style to 3D. At a high-level, this requires computing particlepaths and rendering them in a 3D viewing environment. The spe-cific issues for this strategy are achieving interactive display rates,guaranteeing the representation of all flow features, and designingan effective visualization.

4.1 Precomputing particle paths as pathlines

Advecting thousands of particles is computationally intensive andcan not be done interactively with our current resources. Therefore

Figure 6 A simplified illustration of the Poisson-disk seeding algorithm thatdoes not include the time dimension. A plane is swept from the inflow to theoutflow. At each step, seeds are added to fill gaps. a) shows the 3 initial seeds.Steps b) and c) both add one seed to fill in gaps.

for each slice (s)for each timestep (t)

create seeds for (s, t) using a Poisson-diskdistribution considering existing seedsmarked ‘‘old’’

mark each of these seeds as ‘‘new’’end

for each timestep (t)calculate a pathline forward and backward for eachseed in (s, t) marked as ‘‘new’’

for each pathline created (p)for each slice (s1)

determine the point of intersection (i)where p intersects s1determine the timestep (t1) at iadd i as a seed in (s1, t1)mark this seed as ‘‘old’’

endend

endend

Figure 7 The pseudocode for one of our pathline calculation algorithms.

we precompute particle paths and can then quickly animate them atrun-time. Paths have a “simulation start time” and a list of points.Synchronizing advection of many particle paths at run-time is sim-ple because the time difference between each point stored is con-stant and requires only incrementing an index into the array of pathpoints.

2

Page 4: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

Figure 5 Two images produced by Tecplot for the artery dataset. The image on the left is a 2D artery slice that uses black vectors to show velocity, backgroundcolor to show pressure, and white lines to show streamlines. The 3D image on the right uses vectors to show velocity where color hue represents pressure and blacklines to show streamlines. In both cases, the global behavior of the pulsatile flow is not readily apparent.

Figure 8 Comparisons between emphasis techniques in the artery. A user can focus on pathlines that share a specific quality using “emphasis.” On the left, pathswith low minimum velocity are emphasized and particles that go through the sidebranch or near the walls are more likely to be released. In the middle, no paths areemphasized and all particles are equally likely to be released. On the right, slow paths are emphasized, and particles near the walls are released more frequently.

4.2 Choosing a representative subset of particle paths

A key issue is determining which particle paths should be displayed.We want to find a set of pathlines which particles will follow suchthat all flow features can be represented. At a high-level, we findthis set by choosing a finite set of 4D seeds (i.e., points in space-time). For each seed, we compute a pathline that advects forwardand backward until it exits the data set and store it as a single path-line that combines the two segments. Due to practical considera-tions, we also terminate pathlines that reach a large maximum num-ber of points. At run-time, we initially draw a particle at the startof the pathline (not the seed position) and animate it until it reachesthe end of the pathline.

Our goal that all features be represented requires that some particlepass through each feature that could exist. Due to the discretizationof the flow problem required by computer simulation, a constant(possibly anisotropic) distance, D, exists below which no furtherfeatures can exist. In the case of our arterial blood flow data set,which was computed using

���������r[23] flow codes, D is a func-

tion of the polynomial order of�������

r’s spectral elements andthe density of elements within the volume. Since particles followpathlines, our goal will be met if a set of pathlines can be computedsuch that every point on one pathline is no further than D from a

point on any other pathline. This condition can always be met byadding additional seeds to fill gaps, sometimes at the cost of someredundancy in particle path coverage.

A simple seeding implementation that places seeds at fixed inter-vals of D on a regular grid could be used, but this approach wouldtypically produce many pathlines that are similar to each other. In-stead, we used a Poisson-disk-based strategy for seeding. Figure 6illustrates the technique and Figure 7 shows pseudocode for the al-gorithm. Specifically, a sweep plane steps in increments of D alongthe coordinate system axis that is most closely aligned with the pri-mary flow direction. At each step, a 2D Poisson-disk seeding al-gorithm with radius D adds seeds to the plane approximately nor-mal to the flow direction. Note that the plane already has seeds ateach point where an already calculated pathline intersects the plane.Each new plane may, thus, need only a small number of additionalseed points. A pathline extending forward and backward is com-puted for each new seed and stored on disk such that start positionand time are easily extracted. This algorithm repeats until the planereaches the end of the flow. Our implementation uses a data struc-ture representing all sweep plane positions in both space and time–thus for each plane in space there are multiple “copies” of it thatdiffer in the instant in time the plane represents and consequently

3

Page 5: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

Figure 9 A close-up of the rendering of several haloed motion-blurred par-ticles. Note the black halo effect, as well as the motion-blur fade-out seenhere most clearly on the green particles. This representation for particles re-duced occlusion of distant particles, animated more smoothly, reinforced thefront-to-back ordering of particles, and provided good visual cues for stereoconvergence.

the set of pathlines that pass through it. This is important becausedifferent pathlines can pass through a particular plane at differenttimes and the algorithm must know where to add seeds in order toensure complete pathline coverage in all plane positions and at allsimulation times. Note that to meet a targeted distribution goal stan-dard poisson-disk seeding fills a space with points by consideringwhere previous points have been placed, but our algorithm fills a4D space with lines (in particular, pathlines) by considering whereprevious lines have been placed.

The Poisson-disk method can be slower than the fixed-intervalmethod because of the overhead of the pathline-set data struc-ture and intersection and distance testing. However, for our arterydataset and D equal to 1 unit (the artery diameter is 8 units) thefixed-interval approach produced 62,880 seeds over 16 timestepsand the Poisson-disk approach produced 4,041 seeds; a reductionof 93%.

4.3 Visual design

In order to visualize time-varying fluid flow with animated particleswe had to design a representation for particles, choose which paththey would follow, and decide other particle-animation details.

4.3.1 Representation

A particle always follows a pre-computed pathline from the inflowto the outflow. We represent a particle as a motion-blurred OpenGLline-strip with a black halo surrounding it (see Figure 9). The blackhalo is created by enabling z-buffering, setting the GL line width toa thicker value (we used three pixels) turning on anti-aliasing, anddrawing the particle lines before any other geometry. The pointsdefining the OpenGL line-strip are a five-vertex window on a pre-computed pathline and vertices are equally spaced in time. The cen-ter vertex has 100% opacity, the end points have 0% opacity, and theother points are interpolated between these extremes. The windowadvances in-sync with a global timer thereby giving the appearanceof an animated particle. We found this representation to be moreeffective than using a 3D geometry to represent particles becauseit reduced occlusion of distant particles, its motion blur renderingstyle moved more smoothly, it reinforced the front-to-back order-ing of particles, and it provided good visual cues for stereo conver-gence. Bright colors were assigned randomly to help differentiateindividual particles, although coloring could also represent otherdata set information.

4.3.2 Particle Release and Advection

A set of active particles is maintained. At a user controlled rate, wemove each particle one step along its path. New particles added tothe set of active particles are selected as a function of initial position

Figure 10 Kelp in the artery show flow information near the vessel walls.Although not animated in this illustration, the kelp near the bifurcation ebband flow in response to the simulated heart beat.

and “start time,” to ensure that the visualization remains synchro-nized.

To address our interactive and complexity requirements, a user-controllable variable number of particles is released each frame.Fifteen additional particles per time-step works well with our arterydata set. However, different viewers have different needs so theseparameters can be modified interactively. Additionally, particle at-tributes can influence particle release behavior. For example, parti-cles can be released with equal probability, or the viewer can tunethe visualization by increasing the probability of releasing particleswith low average speed or low minimum velocity. The effects ofthese different release strategies are illustrated in Figure 8.

4.3.3 Tuning the Release of Particles

When particle release biasing is turned on, a normalized scalarvalue m ranging from 0 to 1 is computed for each pathline. Sev-eral metrics can be used: for example, a metric corresponding toaverage velocity is computed as m = v

Vmax, where v is a particle’s

average velocity and Vmax is the maximum inflow velocity. Untilthe target number of particles has been released for a given frame, arandom particle is selected and released if r � (s � m)p where r is arandom number between 0 and 1 and s and p are interactively con-trolled by the user. s allows the range of values between 0 and 1 tobe controlled and p shifts how the particles chosen are emphasized:for p � 1 low values are more often chosen, for p � 1 high valuesare more often chosen.

4.3.4 Visualizing the boundary surface

We wanted to clearly represent the curving boundary surface andbe able to see through to flow on the other side of a vessel wall.We achieved this by rendering the geometry with a “chicken-wire”style texture. The chicken-wire is composed of a thin weaving,fully opaque pattern interpolated with fully-transparent sections.This texture reveals structure without totally obscuring the flurries.This decision was inspired by Interrante’s work [24] showing thatopaque textures are more effective than semi-transparent texturesin conveying surface shape as well as interior features. Figures 1and 8 demonstrate how objects on the other side of the mesh can bepartially seen.

4.3.5 Flow near Geometries

Flow behavior near the boundary surface geometry is interestingbecause it is where the two entities interact. “Kelp” can be drawn at

4

Page 6: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

Figure 11 Virtual paint strokes create “sponges” that can also tune the re-leased particles. This upstream view from just past the bifurcation illustrateshow a white stroke releases particles and how a blue stroke causes the releaseof particles that will eventually pass through it.

the surface to help highlight flow behavior near surfaces (see Figure10). Kelp consist of an oriented glyph at a surface anchor pointand a streamline that uses a point in the flow just normal to theanchor point as its seed. A streamline is an integral path throughthe instantaneous flow field at a point in time, and so changes asthe flow changes. We color the glyph with scalar flow data, suchas pressure, and draw a streamline with length proportional to thespeed of the flow just normal to the anchor point– (the flow at theanchor point, which is on the surface, is always zero and thereforenot useful to show). At run-time pulsatile flows cause the kelp toebb and flow helping to identify regions of interest, e.g., locations offlow reversal or locations of high or low shear stress. Finally, as withparticle paths, we precompute the kelp seed points and streamlinesto achieve run-time interactivity.

4.4 User Interaction

The scientist can modify particle color and release behavior by cre-ating virtual paint strokes, or “sponges,” directly in the data volumewith the Cavepainting [25] metaphor. Before creating a sponge, theuser can select a color for it from the HSV color space using a colorselector widget. Particles that then pass through a sponge accruethe sponge’s color. Red, white, and blue sponges have special be-haviors: particles that pass through red sponges are deleted. A whitesponge causes particles to emit from it rather than at the inflow (seeFigure 11). Finally, a blue sponge exclusively induces the inflowrelease of particles that will eventually pass through it. This wasdone at interactive rates by using a 3D look-up table the size of thedata set’s bounding box. The look-up table data structure could bequickly queried for the set of paths that passed through the voxelcontaining a particular point. Sponges can be deleted, which re-stores deleted pathlines and resets the particles’ random colors thatchanged via sponges.

The scientist can navigate by physically walking around the space,(the head-tracked view is updated to reflect the changing viewingposition), by double-clicking the wand button to automatically flybetween stored viewpoints, by using a wand to point and fly in

a particular direction, and by “grabbing” the world with a wandbutton-press and subsequently translating and rotating the world ina one-to-one manner with hand movements.

5 Results

We have applied our system to four flow data sets. Three were ar-terial blood flow data sets that had varying peak inflow rates andone was a time-varying simulation of airflow past a bat’s flappingwings.

We implemented PF using an SGI Onyx2 driving a four-wall Cave.We achieved an average frame rate of 10 frames per second. Weexpected to achieve just under a ten-times speedup on commoditygraphics hardware such as 3D-Labs Wildcat 6210’s. The precom-putation of the artery data set’s pathlines and kelp required severalhours and 265MB of uncompressed disk space for 50 timesteps.Domain specialists have logged tens of hours in the artery data setand are eager to spend more time exploring the flow.

All viewers were been able to appreciate the flow just by looking atand navigating through the particle flurries. Some choose to anno-tate or modify the flow with sponges in order to highlight specificfeatures such as vortices. In the artery, one fluid researcher usedsponges in the following ways:

� To delete flow through the center of the artery, which he con-sidered “boring” because it traveled quickly, in a relativelystraight path.

� To give one color to the flow through the sidebranch and an-other color to the rest of the flow. This allowed him to returnto the inflow and see how the source of the side branch flow.

� To color an area of recirculation past the sidebranch and seewhere flow passing through it comes from and where it goes.

� To carefully study a subset of the flow near the floor of themain branch just upstream of the bifurcation using the bluesponge (see Figure 11).

� To increase the frame rate even more by only releasing par-ticles near the outflow and thereby reveal an even smootheranimation of downstream flow.

� To color two vertical columns of flow near the end of theartery with contrasting colors, such that the swirling flow be-comes more apparent as the two colors rotate around eachother.

� To create a yellow sponge inside the side-branch and then lookfor yellow particles at the inflow in order to see that the flowthat will go down the side-branch forms a crescent-shaped re-gion at the inflow along the wall the side-branch extends from.

At certain times in the periodic flow fluids researchers saw exam-ples of expected flow features such as backflow in the side-branch;particles reentering the main branch’s flow after initially movingdown the side-branch; and counter-rotating vortices in the curvedmain branch of the artery. Unexpected flow patterns have also beenfound such as a volume of space just downstream from the bifur-cation in the main branch that few particles could enter at certaintimes of the flow, and particles that moved diagonally along themain branch wall downstream of the bifurcation when it was ex-pected that they would not have a vertical component. Finally, wefound problems with the simulation parameters such as an inade-quate amount of flow moving into the sidebranch in an early run.

Most of our results came from the arterial blood flow data set, butwe also found useful results in our air flow past a bat data set(see Figures 12 and 13). From the data we have calculated a set

5

Page 7: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

Figure 12 Particle Flurries inside an artery (left) and around a bat (right). Over a short time the particle animation gives a synoptic visualization of the flow features.The kelp are the blue and pink lines attached to the artery walls, and the red lines trailing off the bat. They help show pressure and velocity information near thegeometries.

of pathlines. Viewing them in the Cave has revealed some bugs inthe data and in the simulations. Some of those were in surprisingplaces which PF revealed almost immediately but probably wouldhave been hard to find using a probing or cross-section method. Ourevolutionary biologist collaborator is very enthusiastic about usingthese tools to continue developing the motion capture methodol-ogy, for developing and testing the numerical methods for creatingthe data, and, ultimately for understanding and characterizing wakeand vortex structures, which will help develop us understand howdifferent species of bats fly.

� We have the bat calculation working to generate the flow andto do the pathline precalculations.

� Our evolutionary biologist collaborator is very .

6 Discussion

In this section we discuss our progressions in pathline computation,rendering, particle distribution in the visualization, the importanceof stereo viewing, and world scale. We conclude by discussing ouriterative design process and what we’ve learned from it.

At the highest level, we found that PF is an intuitive way to ex-plore complex pulsatile 3D flow, see Figure 12. It is not, however,a stand-alone system that can show everything. We support inter-active placement of streaklines as an example of a complementaryvisualization tool and envision a full-featured system that combinesPF with many other tools.

6.1 Pathline computation

Although a fixed-interval seeding algorithm for pathline computa-tion executes faster and is easier to implement than the Poisson-diskmethod, it may often calculate redundant pathlines since the pathlines created from seeds up and down flow from each other mayresult in nearly indistinguishable paths. It also may generate manymore seeds than are necessary; in particular, our Poisson seed spac-ing algorithm has shown reductions in seed counts by 93% overcomparable fixed-interval seeding strategies.

In the current form of the Poisson-seeding algorithm the upstreamslices may be oversampled because downstream seeds are inte-grated backwards. Viewers have not reported anything to indicatethat this is a problem, but this point could be addressed in futurework.

6.2 Pathline rendering

Choosing a particle animation led to surprising results. Our par-ticle representation (see Figure 9) evolved to help clearly repre-sent the flow in an immersive viewing environment and preventedoverwhelming the viewer. The particle used to animate a pathlinedid not start as a motion-blurred, haloed, GL line, however. Ini-tially the user could choose between a coarsely tessellated sphere,a flow-oriented triangle, or a flow-oriented textured triangle. Themain problem with these geometric representations was their size,which introduced occlusion and distraction when they swept nearusers’ eyes. Also, when animated, they introduced aliasing. Al-though there are approaches to motion-blurring geometric objects,viewer feedback favored a line representations for particles. Whileinitially a user-controlled variable, we found most viewers favoreda five-vertex window for particle representations (see section 4.3.1)over a longer or shorter representations.

We took a cue from one of the videos that inspired our work bynoticing that shutter speed caused motion blur in particle move-ment. We then came up with a better line-based representation forparticles, which is described in section 4.3.1. Since points on a pathare written out in a constant time interval, slower path segmentswill have many points spaced close together. Fast segments willhave fewer points, spread further apart. Since each particle con-nects the same number of points, fast particles will be longer thanslow ones, which allows users to make relative comparisons. Un-fortunately, slow moving particles can nearly disappear because thepoints become co-located. One idea for fixing this is to always drawa particle’s line representation some minimal length tangent to itspathline. The halos enhance depth perception, as described in In-terrante, et al, [26], although we implement it with real-time an-tialiasing, blending, as well as for pulsatile flow.

6.3 Distribution of particles

We found there are many synoptic visualizations that can beachieved with a particle visualization of flow data depending on theusers’ goals. Our initial approach was to release randomly coloredparticles into the flow with equal coverage throughout the volume.However, we extended the system to address the users’ desire tocontrol particle color and release strategies as well as clearly seenear-wall flow.

6

Page 8: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

Figure 13 A time series of the bat model flying and particle flurries visualizing simulated 3D flow around it. The bat model is facing roughly towards the cameraand the primary direction of air flow is away from the camera into the distance.

Figure 14 Sponges in the artery: The red sponge on the left has deleted allflow that does not go through the sidebranch, while the yellow sponge on theright has colored all flow that goes into the sidebranch.

6.3.1 Sponges

Particles are immediately released throughout the vessel withoutany initial interaction. We allow users to control how many par-ticles were released at each step and the time between steps, butthis only controls the global density of particles. Sponges, see Fig-ure 14, enable local refinement by modifying the color, release, andpresence of particles relative to a user-drawn paint stroke.

Figure 15 A view of wall splotches anchored on the artery walls. Pressure isapplied here and colors vary along a spectrum from red to blue indicating highand low pressure, respectively. The standard technique of mapping surfaceswith scalar data helps guide the viewer to potentially interesting regions inorder to explore with PF.

6.3.2 Emphasis

Often scientists are interested in a type of pathline rather than allpathlines in a certain area. For example, showing all “slow” pathsis important. Emphasis controls, as described, allow us to do justthat. In practice we have found that emphasizing slow flow is mostuseful. It has allowed us to focus on flow that runs near the arterywalls or goes into the sidebranch (see Figure 8). Emphasis also al-lows us to focus on particles that pass near the bat, which are farmore interesting than the others. Emphasis can easily be extendedto use other metrics; emphasis can be based on radius of curvature,proximity to some location, or streamwise recirculation.

7

Page 9: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

6.4 User interface for user-settable parameters and com-mands

Our implementation has several user-settable parameters includingrelease rate, simulation speed scalar, emphasis type, and two scalarvalues associated with emphasis (a scaling coefficient and a power).There are other commands such as clearing all particles and delet-ing all “sponges”.

Currently, users access these parameters and commands throughbutton presses on a conventional keyboard that is set on a table justinside our Cave. This approach will not scale much further and wehave considered using a command line interpreter or a gestural ormore graphical user interface technique in the future.

6.4.1 Splotches and kelp

A problem with the particle animation is that it only shows velocityinformation, nothing about other flow quantities. We also had notmet our goal of showing more information near the reference geom-etry. Initially we used splotches, circular geometries anchored on tothe reference geometry, colored to reflect residence times and pres-sure gradients (see Figure 15). We also developed the idea of kelpto more directly visualize flow near the vessel wall. After imple-menting them we felt they complemented the particle animation andhelped better show near-wall flow behavior. Some users preferredviewing both the particle animation and kelp together, and otherspreferred to just view one visual element at a time, but quickly tog-gle between the two.

6.5 Importance of stereo viewing

We implemented the ability to toggle between stereoscopic andmonoscopic viewing on the fly. Typically we started users view-ing in stereo and when we toggled to monoscopic viewing they re-ported that it was very difficult to resolve the depth component ofthe flow and boundary geometry. When stereo viewing was restoredthey could easily determine the relative depth of particles and theirpositions within the boundary geometry.

Another benefit of texturing the vessel wall with the chicken-wire-like texture is that it makes it much easier to see when viewed instereo than a smooth-shaded model. The hard edges in the tex-ture provide excellent visual cues for stereo convergence whereasa smooth-shaded model appears cloudy. It is much easier to makespatial judgments, such as the distance between a particle andthe vessel wall, with the textured model than with a non-texturedmodel. The texture also shows internal flow details from externalviewpoints.

6.6 Dynamic world scale

The scale of the world seen in PF can be changed dynamically.This can be a useful control for both internal and external flows. Forexternal flows it allows one to scale down the data so an overview iseasily seen, or scale up the data so a specific region can be studied.For internal flows, data can be scaled up so one can move inside aspace and comfortably view the data. In the case of the artery dataset the world was generally scaled so the artery walls appear to be 8feet apart such that the viewer could physically move around insideit and and minimize the need for flying using the wand. Smallerdiameters such as 6 inches all but removed the need to navigateexcept by physical head-movements and walking, but made it hardto appreciate the details of the particle animation and hard to fusethe stereo images if the user tried to move inside the artery vessel.Larger scales, such as a 30 foot vessel diameter, can help visually bydecreasing the apparent density of particles, but it also dramaticallyincreased the amount of navigation required to see all the flow andwas thus undesirable.

7 Conclusions

PF is a case study of our efforts toward a synoptic visualizationthrough the design and development of new algorithms, effectiveimmersive visual displays, and supporting interactive tuning. PF iseffective and efficient for exploring complex pulsatile 3D flows. Ithas been used to verify expected flow features, find unexpected flowfeatures, and debug simulation parameters.

With PF the flow visualization is created automatically without anyuser interaction. The benefit of this feature is that flow is morequickly explored and revealed than in systems where the user mustexplore the data volume in a piecewise manner with, for example,streamline or rake widgets. Furthermore, particles that traverse pathlines through all flow features are displayed in a short period oftime, as guaranteed by our seeding algorithm.

Thus, the person viewing the PF visualization becomes the “bot-tleneck” of the process because they are able to allocate nearly allof their mental capacity to understanding patterns PF reveals ratherthan to figuring out how to manipulate visualization tools that dis-play less information than PF.

Immersive viewing is critical to our technique’s effectiveness. Onceimmersed in the particle visualization an entirely new level of detailis revealed in the particle paths, which are now intimately close by.Enlarging the data to human-scale means the field-of-view is muchlarger and more visual information can be presented at any momentin time. All users selected stereo viewing after viewing PF bothmonoscopically and stereoscopically.

Small, sparse particles work well in immersive VR. A haloedmotion-blurred line-based particle representation worked betterthan larger geometric representations such as spheres or trianglesin terms of minimizing occlusion between particles and presentingthe viewer with more flow data in an information rich, but manage-able scene. Biasing the display algorithm with interactive tools canprovide different synoptic views to explore and emphasize variousflow qualities such as near-wall flow or fast flow.

An opaque and see-through texture on the wall containing the flowmade the wall easily discernible and only minimally occluded theparticle animation. Augmenting the wall with kelp and glyphs ofscalar data such as pressure helped better reveal near-wall flow fea-tures and guide viewers to areas of potentially interesting flow.

Our Poisson-disk based seeding algorithm precomputes a relativelysmall but complete set of path lines through the data volume. Thisset of path lines can be displayed interactively at run-time as particletraces. Our algorithm can reduce the number of seed points requiredto generate a synoptic particle animation by 93% compared withcomparable fixed-interval seeding strategies.

The differences between our work and earlier particle visualizationsare the decision to allow the viewer to be immersed in an automat-ically constructed and visually manageable view of the flow, thedevelopment of an appropriate rendering style for immersive view-ing, and a suite of tools for tuning the visualization. The net resultis an interactive synoptic flow visualization that presents a higherlevel of flow detail.

Acknowledgments

This work was supported, in part, by NSF (CCR-0086065) andLawrence Livermore National Laboratory Research SubcontractNo. B506432.

This work used UNC’s VRPN library, which is supported by theNIH National Research Resource in Molecular Graphics and Mi-croscopy at the University of North Carolina at Chapel Hill.

8

Page 10: Particle Flurries: a Case Study of Synoptic 3D Pulsatile ......than with laboratory experiments or 2D viewing tools. 1 Introduction We present Particle Flurries (PF), a case study

References

[1] N. Woolf. Pathology: Basic and Systemic. W. B. SaundersCo., London and Philadelphia, 1998.

[2] W. E. Stehbens and J. T. Lie. Vascular Pathology. Chapmanand Hall Medical, London, England, 1995.

[3] M. Zockler, D. Stalling, and H Hege. Interactive visualiza-tions of 3d-vector fields using illuminated streamlines. InIEEE Visualization ’96, October 1996.

[4] A. L. Fuhrmann and E. Groller. Real-time techniques for 3dflow visualization. In IEEE Visualization ’98, pages 305–312,1998.

[5] Song Zhang, Cagatay Demiralp, Daniel Keefe, MarcoDaSilva, Benjamin D. Greenberg, Peter J. Basser, Carlo Pier-paoli, E. A. Chiocca, T. S. Deisboeck, and David H. Laidlaw.An immersive virtual environment for DT-MRI volume visu-alization applications: a case study. In Proceedings of IEEEVisualization 2001, pages 437–440, October 2001.

[6] Greg Turk and David Banks. Image-guided streamline place-ment. In Holly Rushmeier, editor, SIGGRAPH 96 Confer-ence Proceedings, Annual Conference Series, pages 453–460.ACM SIGGRAPH, Addison Wesley, August 1996. held inNew Orleans, Louisiana, 04-09 August 1996.

[7] Brain Cabral and Leith Leedom. Imaging vector fields us-ing line integral convolution. In Proceedings of SIGGRAPH,pages 263–270. ACM Press, 1993.

[8] V. Interrante and C. Grosch. Strategies for effectively visu-alizing 3d flow with volume lic. In IEEE Visualization ’97,pages 421–424, November 1997.

[9] DA Steinman, JB Thomas, HM Ladak, JS Milner, BK Rutt,and JD Spencer. Reconstruction of carotid bifurcationhemodynamics and wall thickness using computational fluiddynamics and MRI. Magnetic Resonance in Medicine,47(1):149–159, January 2002.

[10] Steve Bryson, David Kenwright, Michael Cox, DavidEllsworth, and Robert Haimes. Visually exploring gigabytedata sets in real time. CACM, 42(8):82–90, 1999.

[11] Tecplot. Amtec Engineering, Inc., Bellevue, WA 98005, 1988-1998.

[12] Steve Bryson and Creon Levitt. The virtual windtunnel:An environment for the exploration of three-dimensional un-steady flows. In Visualization ’91, pages 17–24, 1991.

[13] Falko Kuester, Ralph Bruckschen, Bernd Hamann, and Ken-neth I. Joy. Visualization of particle traces in virtual environ-ments. In Symposium on Virtual Reality Software and Tech-nology, pages 151–157. ACM, November 2001.

[14] N. Max, R. Crawfis, and Ch. Grant. Visualizing 3D velocityfields near contour surfaces. In IEEE Visualization ’94 Pro-ceedings, pages 248–255. IEEE Computer Society, October1994.

[15] D. Bauer, R. Peikert, M. Sato, and M. Sick. A case studyin selective visualization of unsteady 3D flow. In IEEE Vi-sualization ’02 Proceedings, pages 525–528. IEEE ComputerSociety, October 2002.

[16] Detlev Stalling and Hans-Christian Hege. Fast and resolutionindependent line integral convolution. In Robert Cook, editor,SIGGRAPH 95 Conference Proceedings, Annual ConferenceSeries, pages 249–256. ACM SIGGRAPH, Addison Wesley,August 1995. held in Los Angeles, California, 06-11 August1995.

[17] See http://www.ssec.wisc.edu/ billh/vis5d.html.

[18] R. Haimes. pv3: A distributed system for large-scale unsteadycfd visualization, 1994.

[19] See http://www.ccpo.odu.edu/ cave5d.

[20] See http://www.avs.com.

[21] Steven G. Parker and Christopher R. Johnson. SCIRun: A sci-entific programming environment for computational steering.December 1995.

[22] Andrew S. Forsberg, Robert M. Kirby, David H. Laidlaw,George E. Karniadakis, Andries van Dam, and Jonathan L.Elion. Immersive virtual reality for visualizing flow throughan artery. In Proceedings Visualization ’00. IEEE ComputerSociety Press, 2000.

[23] Tim Warburton. Spectral/hp methods on polymorphic multi-domains: Algorithms and applications. Technical report,Brown University, RI, 1999.

[24] Victoria Interrante, Henry Fuchs, and Stephen M. Pizer. Con-veying the 3D shape of smoothly curving transparent surfacesvia texture. IEEE Transactions on Visualization and Com-puter Graphics, 3(2), April–June 1997. ISSN 1077-2626.

[25] Daniel Keefe, Daniel Acevedo, Tomer Moscovich, David H.Laidlaw, and Joseph LaViola. Cavepainting: A fully im-mersive 3D artistic medium and interactive experience. InProceedings of ACM Symposium on Interactive 3D Graphics2001, pages 85–93, March 2001.

[26] Victoria Interrante and Chester Grosch. Strategies for effec-tively visualizing 3D flow with volume LIC. In Roni Yageland Hans Hagen, editors, IEEE Visualization 9́7, pages 421–424. IEEE, November 1997.

9