scispace - formally typeset
Open AccessProceedings ArticleDOI

Imaging vector fields using line integral convolution

Brian Cabral, +1 more
- pp 263-270
TLDR
This approach builds on several previous texture generation and filtering techniques but is unique because it is local, one-dimensional and independent of any predefined geometry or texture.
Abstract
Imaging vector fields has applications in science, art, image processing and special effects. An effective new approach is to use linear and curvilinear filtering techniques to locally blur textures along a vector field. This approach builds on several previous texture generation and filtering techniques[8, 9, 11, 14, 15, 17, 23]. It is, however, unique because it is local, one-dimensional and independent of any predefined geometry or texture. The technique is general and capable of imaging arbitrary two- and three-dimensional vector fields. The local one-dimensional nature of the algorithm lends itself to highly parallel and efficient implementations. Furthermore, the curvilinear filter is capable of rendering detail on very intricate vector fields. Combining this technique with other rendering and image processing techniques — like periodic motion filtering — results in richly informative and striking images. The technique can also produce novel special effects.

read more

Content maybe subject to copyright    Report

% /'
UCRL-JC-112935
PREPRINT
i.
Imaging Vector Fields Using Line Integral Convolution
B. Cabral
L. Leedom
This paper was prepared for submittal to the
Computer Graphics .._._,,........, ._,
Anaheim, California :_"" "" "
August 1-6, 1992 SEe 0 _ 100_3
March 1, 1993 O S T
:.::..:: :-.. "" i:_..... 7
:: ..:i:
.:: ,.:>::. :... :,
:.:.:.:...: . ...
....:,:::::::.
:.. :::::::::::::::.:
! :ii:iii!ii:iii!:!i_!?i?iii!i::
i .
,:: .::!:)
'lhis is a preprint of apaper intended for publication in a journal or proceedings. Since "
. changes may be made before publication, this preprint is made available with the
understanding that it will not be cited orreproduced without the permission of the - !i!::::ii:i
_uth_.
ASTER '
O,lSTRlilUTIONOFTHISDOCIJME.NTIS LINkf,MITL:_LI

DISCLAIMER
This document was prepared as an account of work sponsored _y an agency of the
United States Government. Neither the United States Government nor the University
of California nor any of their employees, makes any warranty, express or implied, or
assumes any legal liability or responsibility for the accuracy, completeness, or usefulness
of any information, apparatus, product, or process disclosed, or represents that its use
would not infringe privately owned rights. Reference herein to any specific commercial
products, process, or service by trade name, trademark, manufacturer, or otherwise,
does not necessarily constitute or imply its endorsement, recommendation, or favoring
by the United States Government or the University of California. The views and
opinions of authors expressed herein do not necessarily state or reflect those of the
United States Government or the University of California, and shall not be used for
advertising or product endorsement purposes.

iii
W°
Imaging Vector Fields Using Line Integral Convolution
Brian Cabral
Leith (Casey) Leedom *
Lawrence Livermore National Laboratory
ABSTRACT pletely new family of periodic motion filters which have wide
Imaging vector fields has applications in science• art, image pro- application (see section 4.1). It represents a confluence of signal
cessing and special effects. An effective new approach is to use and image processing and a variety of previous work done in com-
linear and curvilinear filtering techniques to locally blur textures puter graphics and scientific visualization.
along a vector field. This approach builds on several previous tex-
ture generation and filtering techniques[8, 9, 11, 14, 15, 17, 23]. It 2, BACKGROUND
is, however, unique because it is local• one-dimensional and inde- There are currently few techniques which irnage vector fields in
pendent of any predefined geometry or texture. The technique is a general manner. These techniques can be quite effective for visu-
general and capable of imaging arbitrary two- and three-dimen- alizing vector data. However, they break down when operating on
sional vector fields. The local one-dimensional nature of the algo- very dense fields and do not generalize to other applications. In
rithm lends itself to highly parallel and efficient implementations, particular, large vector fields (512x512 or greater) strain existing
Furthermore, the curvilinear filter is capable of rendering detail on algorithms.
very intricate vector fields. Combining this technique with other Most vector visualization algorithms use spatial resolution to
rendering and image processing techniques -- like periodic motion represent the vector field. These include sampling the field, such as
filtering N results in richly infonnative and striking images. The with stream lines[12] or particle traces, and using icons[19] at
technique can also produce novel special effects, every vector field coordinate. Stream lines and particle tracing
CR categories and subject descriptors: 1.3.3 [Computer techniques depend critically on the placement of the "streamers" or
Graphics]: Picture/Image generation; 1.3.7 [Computer Graphics]: the particle sources. Depending on their placement, eddies or cur-
Three-Dimensional Graphics and Realism; 1.4.3 [Image Process- rents in the data field can be missed. Icons, on the other hand, do
ing]: Enhancement. not miss data, but use up a considerable amount of spatial resolu-
Keywords: convolution, filtering, rendering, visualization, tex- tion limiting their usefulness to small vector fields.
ture synthesis, flow fields, special effects, periodic motion filtering. Another general approach is to generate textures via a vector
W'"
1. INTRODUCTION field. Van uk s spot noise algorithm[231 uses a vector field to
control the generation of bandlimited noise. The time complexity
Upon first inspection, imaging vector fields appears to have lira- of the two types of implementation techniques presented by Van
ited application -- confined primarily to scientific visualization.
However, much of the form and shape in our environment is a Wijk are relatively high. Furthermore the technique, by definition,
depends heavily on the form of the texture (spot noise) itself. Spe-
function of not only image intensity and color, but also of direc- cifically, it does not easily generalize to other forms of textures that
tional information such as edges. Painters, sculptors, photogra- might be better suited to a particular class of vector data (such as
phers, image processors[16] and computer graphics researchers[9] fluid flow versus electromagnetic).
have recognized the importance of direction in the process of
inaage creation and form. Hence, algorithms that can image such Reaction diffusion techniquesl20, 24] also provide an avenue
directional information have wide application across both scien- for visualizing vector fields since the controlling differential equa-
tific and artistic domains, tions are inherently vector in nature, lt is possible to map vector
Such algorithms should possess a number of desirable and data onto these differential equations to come up with a vector
sometimes conflicting properties including: accuracy, locality of visualization technique. Here too lt _wever, the time complexity of
these algorithms limit their general usefulness.
calculation, simplicity, controllability and generality. Line Integral
_" Convolution (LIC) is a new technique that possesses many of these Three-dimensional vector tields can be visualized by three-
properties. Its generality allows for the introduction of a com- dimensional texture generation techniques such as texels and
hypertextures described in I11, 15]. Both techniques take a texture
on a geometrically defined surface and project the texture out some
*Authors' current e-mail addresses are: ,'abrtH@llnl.gov and distance from the surface. By definition these techniques are bound
,'asey(W. gau._s.l/nl.gov, tOthe surface and do not compute an image for the entire lield as is
done by Van Wijk[23]. This is limiting in that it requires a priori
knowledge to piace the surface. Like particle streams and vector
streamers these visualization techniques are critically dependent
on the placement of the sampling surface.
The technique presented by Haeberlil9] for algorithnficly gener-
ating "paintings" via vector-like brush strokes can also be thought
of as a vector visualization technique. Crawlis and Maxl5]

describe a three-dinmnsionai variation on this in which blurred cyl-
inders represent three-dimensional brush strokes whose directions
and colors are controlled by a three-dimensional vector field. Both
- techniques represent a conceptual extension of traditional icon
placement, where the icons are more sophisticated shapes. How-
ever, these techniques break down as the density of the field
increases since they require spatial resolution to work.
, What is needed is a technique that can image dense vector fields,
is independent of both predefined sampling placement constraints
and texture generation techniques and can work in two and three
dimensions. Such a technique would be very general and have
wide application.
Figure 2: Circular and turbulent fluid dynamics vector fields
3. DPA CONVOLUTION imaged using DDA convolution over white noise.
One approach is a generalization of traditional DPA line draw-
ing techniques[ 1] and the spatial convolution algorithms described straight line. For points in vector fields where the local radius of
by Van Wijk[23] and Perlin[14]. Each vector in a field is used to curvature is large, this assumption is valid. However, where there
are complex structures smaller than the length of the DPA line, the
define a long, narrow, DDA generated filter kernel tangential to the local radius of curvature is small and is not well approximated by a
vector and going in the positive and negative vector direction some
fixed distance, L. A texture is then mapped one-to-one onto the straight line. In a sense, DPA convolution renders the vector field
vector field. The input texture pixels under the filter kernel are unevenly, treating linear portions of the vector field more accu-
summed, normalized by the length of the filter kernel, 2L, and rately than small scale vortices. While this graceful degradation
placed in an output pixel image for the vector position. Figure I, may be fine or even desirable for special effects applications, it is
illustrates this operation for a single vector in a field, problematic for visualizing vector fields such as !he ones in figure
2, since detail in the small scale structures is lost.
This effectively filters the underlying texture as a function of the
vector field. The images in figure 2 are rendered using the DDA Van Wijk's spot noise algorithm[23] also suffers from this prob-
convolution algorithm. On the left is a simple circular vector field; lem since the spots are elliptically stretched along a line in the
to its right is the result of a computation fluid dynamics code. The direction of the Ideal field. If the ellipse major axis exceeds the
input texture image in these examples is white noise. Although the local length scale of the vector field, the spot noise will inaccu-
description above implies a box filter, any arbitrary filter shape can rately represent the vector field. An accurate measure of local field
be used for the filter convolution kernel, lt is important to note that behavior would require a global analysis of the field. Such tech-
this algorithm is very sensitive to symmetry of the DDA algorithm niques currently do not exist for arbitrary vector fields, would most
and filter. If the algorithm weights the forward direction more than likely be expensive to calculate[13] and are an area of active
the backward direction, the circular field in figure 2 appears to spi- research[7].
ral inward implying a vortical behavior that is not present in the 4. LINE INTEGRAL CONVOLUTION
vector field. The local behavior of the vector field can be approximated by
3.1 LOCAL FIELD BEHAVIOR computing a local stream line that starts at the center of i?ixel (x, v)
The DPA approach, while efficient, is inherently inaccurate, lt and moves out in the positive and negative directions." The flir-
ward coordinate advection is given by equation (I).
assumes that the local vector field can be approximated by a
Po = (x + 0.5, 3' + 0.5)
Vector field
V(L.P,__J)
t'_ ---P,__+ iiV(LP,_t_j)llA.h_z (i)
V( LP_I) = the vector from the input vector
DDAme field at lattice point (L PxJ, LPvJ )
__ _c if vii e
if ' < () (bottom, y)
: = I ,-_ ,,_lm_" "" Input texture
.... .__ .... _-_' _ s_ = . for(e,c) e (2)
.r..,,,_.._,.-j,. ._ _.,:_.,_. ( h,f t, x)
, a:-;""_"'_' '_;"'_r .. _; otlaerwjse (righi, x)
Outpul :mage
A .__= nlJn (._'top,siTottom,Sh,/t,._'right)
I Vectorfield lattice and image co()rdinales are usually spccitied m a left-
handed coordinate systenl while vector c,t}lll[_()nenls are usually specilied in
a right-handed coordinate system. In this case, they-componenl of the lal-
tice coordinate in equatmn (I) rous! be rellecled aboul the venica} center _d"
Figure 1: The mapping of a vector onto a DPA line and input the lattice to Ol:?ralein a consistent coordinale system. This reflection has
pixel field generating a single output pixel, been omitted to presen,e simplicity of presentalion.

i _ ""NN i i . bined with LIFK to form a Line Integral Convolution (LIC). This
"--- ".-.. i ",., "\ "- "', i %, i \ \ \ results in a variation of the DDA approach that locally tbllows the
i ......... _ - " vector field and captures small radius of curvature features. For
" --.- "-., ! "--,. '% ".-,, ",, ', \ \ each continuous segment, i, an exact integral of a convolution ker-
nel k(w) is computed and used as a weight in the LIC as shown in
,,.. ,,., ,-., ,,,,. ,,, \ \ ._\ \ \ equation (4).
Si + AS t
\ \ where s,
' so = 0
........_................................_......... _........ i............. _...._.........
/ ¢" _ \ \ _ '_ ] _ The entire L1C for output pixel F'(x, y) is given by equation (5).
i l r
_, ". /" ? t _ i t r E F(LPiJ)hi+ E F(LP"J)h',
' ' i
- _ _.__.._ , where
%, "_ "_ "" "" _ "-" --" ""* i -I" .-" i 7 F ( LPI ) is the input pixel con'esponding to
! 1 [ the vector at position ( LPx J, [ Py J )
Figure 3: A two-dimensional vector field showing the local / = i such that s i _; L < si + I (6)
stream line starting in cell (x, y), The vector field isthe upper
left corner of the fluid dynamics field in figures 2 and 4,
The numerator of equation (5) represents the line integral of the til-
Only the directional component of the vector field is used in this ter kernel times the input pixel field, b: The denominator is the line
advection. The magnitude of the vector field can be used later in integral of the convolution kernel and is used to normalize the out-
post processing steps as explained in section 4.3.1. Asi is the posi- put pixel weight (see section 4.2).
tive parametric distance along a line parallel to the vector field The length of the local stream line, 2L, is given in unit pixels.
from Pi to the nearest cell edge. Depending on the input pixel field, F, if L is too large, ali the
As with the DDA algorithm, it is important to maintain symme- resulting LICs will return values very close together for ali coordi-
try about a cell. Hence, the local stream line is also advected back- nates (x, y). On the other hand, if L is too small then an insufficient
wards by the negative of the vector field as shown in equation (3). amount of filtering occurs. Since the value of L dramatically
P'0 = Po affects the performance of the algorithrn, the smallest effective
V (L P'i- l J ) (3) value is desired. For most of the figures, a value of 10 was used.
P'i = P'i-1 - IIv (Le', ,J)ll as';_ _ Singularities in the vector field occur when vectors in two adja-
- cent local stream line cells geometrically "'point" at a shared cell
Primed variables represent the negative direction counterparts to edge. This results in Asi values equal to zero leaving ! in equation
the positive direction variables and are not repeated in subsequent (6) undefined. This situation can easily be detected and the advec-
definitions. As above As'i, is always positive, lion algorithrn terminated. If the vector field goes to zero at any
The calculation of Asi in the stream line advection is sensitive to point, the LIC algorithm is terminated as in the case of a field sin-
round off errors. Asi must produce advected coordinates that lie gularity. Both of these cases generate truncated stream lines. If a
within the/+l th cell, taking the stream line segment out of the cur- zero field vector lies in the starling cell of the LIC, the input pixel
rent cell. In the implementation of the algorithm a small round off value for that cell, a constant or any other arbitrary value can be
term is added to each Asi to insure that entry into the adjacent cell returned as the value of the LIC depending on the visual effect
occurs. This local stream line calculation is illustrated in figure 3. desired for null vectors.
Each cell is assumed to be a unit square. Ali spatial quantities (e.g., Using adjacent stream line vectors to detect singularities can
Asi) are relative to this measurernent. However, the cells need not however result in false singularities. False singularities occur when
be square or even rectangular (see section 6) for this approxima- the vector field is nearly parallel to an edge, but causes the LIC to
lion to work. So, without loss of generality, descriptions are given cross over that edge, Similarly, the cell just entered also has a near
.,
relative to a cubic lattice with unit spacing, parallel vector which points to this same shared edge. This artifact
Continuous sections of the local stream line --. i.e. the straight can be rernedied by adjusting the parallel vector/edge test found in
line segments in figure 3 -- can be thought of as parameterized equation (2), to test the angle formed between the vector md the
space curves in s and the input texture pixel mapped to a cell can edge against some small angle theta, instead of zero. Any vector
be treated as a continuous scalar function of x and y.2 lt is then which forms an angle less than theta with some edge is deemed to
possible to integrate over this scalar field along each pararneterized be "'parallel" to that edge. Using a value of 3° for theta _emoves
space curve. Such integrals can be summed in a piecewise C l fash- these artifacts.
ion and are known as line integrals of the lirst kind (LIFK)[2[. The The images in figure 4 were rendered using LIC and correspond
convolution concept used in the DDA algorithm can now be com- to the same two vector fields rendered in figure 2. Note the
increased amount of detail present in these irnages versus their
2 Bilinear. cubic or Bezier splines are viable alternatives to slraight line DDA counterparts. In particular the image of the lluid dynarnics
. segments. However. these higher order curves are more expensive to com- vector lield in figure 4 shows detail incorrectly rendered or absent
pure. in figure 2.

Citations
More filters
Proceedings ArticleDOI

Stability of persistence diagrams

TL;DR: The persistence diagram of a real-valued function on a topological space is a multiset of points in the extended plane and it is proved that under mild assumptions on the function, the persistence diagram is stable.
Journal ArticleDOI

Robust Point Matching via Vector Field Consensus

TL;DR: This paper proposes an efficient algorithm, called vector field consensus, for establishing robust point correspondences between two sets of points, and suggests a two-stage strategy, where the nonparametric model is used to reduce the size of the putative set and a parametric variant of the approach to estimate the geometric parameters.
Journal ArticleDOI

Three‐dimensional Magnetohydrodynamic Simulations of Radiatively Inefficient Accretion Flows

TL;DR: In this article, the authors present three-dimensional MHD simulations of rotating radiatively inefficient accretion flows onto black holes, where they continuously inject magnetized matter into the computational domain near the outer boundary and run the calculations long enough for the resulting accretion flow to reach a quasi-steady state.
Journal ArticleDOI

Influence of tissue conductivity anisotropy on EEG/MEG field and return current computation in a realistic head model: A simulation and visualization study using high-resolution finite element modeling

TL;DR: A study of the sensitivity to tissue anisotropy of the EEG/MEG forward problem for deep and superficial neocortical sources with differing orientation components in an anatomically accurate model of the human head is reported on.
References
More filters
Book

The Visual Display of Quantitative Information

TL;DR: The visual display of quantitative information is shown in the form of icons and symbols in order to facilitate the interpretation of data.
Book

An introduction to wavelets

TL;DR: An Overview: From Fourier Analysis to Wavelet Analysis, Multiresolution Analysis, Splines, and Wavelets.
Journal ArticleDOI

An introduction to wavelets

TL;DR: The mathematics have been worked out in excruciating detail, and wavelet theory is now in the refinement stage, which involves generalizing and extending wavelets, such as in extending wavelet packet techniques.
Journal ArticleDOI

The visual display of quantitative information

TL;DR: Med sin høye kompetanse innen informasjonsgrafikk blir Edward Tufte i dag sett på som en av de fremste pioneerene innen faget, og han har blitt tildelt over 40 priser for sine verker.
Trending Questions (1)
Who did the special effects for The Matrix?

The technique can also produce novel special effects.