scispace - formally typeset
Open AccessProceedings ArticleDOI

A sketch-based interface for classifying and visualizing vector fields

Reads0
Chats0
TLDR
This work employs an automatic clustering method to generate field-line templates for the user to locate subfields of interest and leverages the user's knowledge about the flow field through intuitive user interaction, resulting in a promising alternative to existing flow visualization solutions.
Abstract
In flow visualization, field lines are often used to convey both global and local structure and movement of the flow. One challenge is to find and classify the representative field lines. Most existing solutions follow an automatic approach that generates field lines characterizing the flow and arranges these lines into a single picture. In our work, we advocate a user-centric approach to exploring 3D vector fields. Our method allows the user to sketch 2D curves for pattern matching in 2D and field lines clustering in 3D. Specifically, a 3D field line whose view-dependent 2D projection is most similar to the user drawing will be identified and utilized to extract all similar 3D field lines. Furthermore, we employ an automatic clustering method to generate field-line templates for the user to locate subfields of interest. This semi-automatic process leverages the user's knowledge about the flow field through intuitive user interaction, resulting in a promising alternative to existing flow visualization solutions. With our sketch-based interface, the user can effectively dissect the flow field and make more structured visualization for analysis or presentation.

read more

Content maybe subject to copyright    Report

A Sketch-Based Interface for Classifying and Visualizing Vector Fields
Jishang Wei
University of California, Davis
Chaoli Wang
Michigan Technological University
Hongfeng Yu
Sandia National Laboratories
Kwan-Liu Ma
§
University of California, Davis
ABSTRACT
In flow visualization, field lines are often used to convey both global
and local structure and movement of the flow. One challenge is to
find and classify the representative field lines. Most existing solu-
tions follow an automatic approach that generates field lines char-
acterizing the flow and arranges these lines into a single picture.
In our work, we advocate a user-centric approach to exploring 3D
vector fields. Our method allows the user to sketch 2D curves for
pattern matching in 2D and field lines clustering in 3D. Specifically,
a 3D field line whose view-dependent 2D projection is most similar
to the user drawing will be identified and utilized to extract all sim-
ilar 3D field lines. Furthermore, we employ an automatic clustering
method to generate field-line templates for the user to locate sub-
fields of interest. This semi-automatic process leverages the user’s
knowledge about the flow field through intuitive user interaction,
resulting in a promising alternative to existing flow visualization
solutions. With our sketch-based interface, the user can effectively
dissect the flow field and make more structured visualization for
analysis or presentation.
1 INTRODUCTION
Flow visualization is relevant to many areas of science and engi-
neering from understanding the evolution of universe, analyzing
weather patterns, to designing more efficient engines for cars. Over
the years, many flow visualization techniques and tools have been
developed and scientists routinely use them for validating and an-
alyzing the data generated by their simulations or measurements.
Despite its widespread uses, one area of flow visualization can use
more innovations is visualization of 3D vector fields. For visual-
izing vector fields, most of the existing techniques are based on
particle tracing, and the most commonly used technique is field-
line based visualization, such as streamlines which are curves ev-
erywhere tangent to the flow field. One fundamental problem for
making streamline visualization is determining the placement and
density of streamlines. A related but particularly essential problem
for analyzing 3D flow is locating and highlighting flow features of
interest in large and complex fields. In this paper, we present a
user-centric solution to this problem.
Among different solutions to this problem, automatic clustering
plays a vital role towards effective understanding of the flow pat-
terns. There exists a wealth of literature on this topic, which can
be divided into two categories: the voxel-based and curve-based
methods. The first category is based on voxel-wise analysis which
classifies similar contiguous vectors so that the whole vector field
can be divided into several cluster regions. In each cluster, average
field lines can be generated to represent the vector characteristics
e-mail: jswei@ucdavis.edu
e-mail:chaoliw@mtu.edu
e-mail:hyu@sandia.gov
§
e-mail:ma@cs.ucdavis.edu
within the region. Alternatively, seed points can be placed to fol-
low important patterns and capture interesting features. In this way,
the vector field can be illustrated with sparse field lines. The prob-
lem with this voxel-based method is that although a good summary
picture of the data set is shown, details may be lost due to averaging
quantitative parameters.
The second category is built on curve-based analysis which
groups field lines directly. Several methods can be used to repre-
sent field lines and measure the similarity between them. For ex-
ample, each field line can be simply treated as a sequence of traced
points. Curves are matched by registering two sets of points fol-
lowing their r espective orders along the line. Another way is to
match the curves with metrics such as the closest point distance, or
the Hausdorff distance. Although this treatment is convenient, the
comparison is sensitive to the variation of the underlying flow pat-
terns. A better alternative is to parameterize the curve and represent
it with parameters such as length, curvature, and torsion, which can
be organized into a new vector that captures the shape feature of the
curve. After curve representation and similarity comparison, vari-
ous clustering approaches, such as k-means or spectral clustering,
can be applied to classify the field lines. However, there are still
issues with this curve-based method. For ins tance, most existing
solutions are specifically suitable for brain white matter and mus-
cle fiber clustering since these data normally exhibit certain known
patterns. Thus, it cannot be easily extended to general vector fields
with various flow patterns. Another problem lies in the cluster-
ing algorithms themselves. Automatic clustering methods usually
aim at dividing curves into different clusters automatically. Nev-
ertheless, for complex vector fields, they could not always achieve
satisfactory classification results.
In this paper, we advocate a user-centric approach to field lines
classification in which we keep the flow details and explicitly take
into account the important role that the user plays in the visual
data exploration process. Our approach is achieved through an in-
tuitive sketch-based interface and straightforward interaction: the
user simply sketches a 2D curve and this input curve will be used to
brush similar streamlines in 3D. A typical scenario is when the user
is examining streamlines of a complex vector field and is interested
in certain line pattern, she can then sketch a curve in the 2D inter-
face close to what is observed under the current view. The input
curve will be used to match and retrieve all similar 3D streamlines
automatically. Note that our interface allows fuzzy specification of
the input curve and our algorithm is able to identify the most sim-
ilar streamlines. By introducing user interaction, streamlines can
be clustered in a way that is meaningful to the users. In addition,
we also present a s olution that applies similar user input to query
streamline templates produced from an automatic clustering algo-
rithm. We believe that our semi-automatic approach provides an
alternative for scientists to understand vector fields where simple
yet informed user input plays a central role.
2 RELATED WORK
One of the most important goals in flow visualization is to display
the vector field in a clear and meaningful way, in which flow char-
acteristics are carefully presented and thus can be easily perceived.

Different approaches have been taken to study this topic.
A key issue that affects the quality of streamlines representa-
tion is the seeding strategy and streamlines placement [11] because
straightforward solutions would easily lead to clutter. Verma et al.
[20] presented a seed placement strategy to capture flow patterns
around the critical points and to provide sufficient coverage in non-
critical regions. Ye et al. [23] presented a method for streamline
placement in 3D flow field. Their aim is to present all significant
flow patterns with maximum coverage and minimum clutter. Chen
et al. [3] introduced a technique for the placement of streamlines in
2D and 3D steady vector field. In their approach, a new metric for
local similarity measurement among streamlines was introduced to
guide field line generation. This metric involves statistical informa-
tion of streamline shape and direction as well as the Euclidean dis-
tance of each pair of curves. Li et al. [8] presented an image-based
seeding strategy which is used for 3D flow visualization. Their
algorithm tries to control scene cluttering by placing seeds in the
image plane in such a way that the depths and structures of stream-
lines can be clearly presented. Li et al. [7] also introduced another
method for streamline placement which is different from [8] in that
its goal is to generate representative and illustrative streamlines in
2D vector fields to enforce visual clarity and evidence. They used a
minimum amount of streamlines to describe the underlying patterns
by only creating new lines at places with flow characteristics that
have not shown yet. In [17], Spencer et al. described an automatic
streamline seeding algorithm for vector fields defined on surfaces
in 3D space. This algorithm generates evenly-spaced streamlines
quickly and efficiently for any general surface-based vector field.
Clustering is another key technique to generate meaningful vi-
sualization for representing complex flow patterns. In voxel-based
clustering, seed points are placed in individual clusters to capture
important flow patterns. A holistic overview in a coarser definition
is exhibited along with clutter-free rendering. Heckel et al. [6] in-
troduced a top-down clustering method by splitting groups of vox-
els iteratively. This approach allows more than one level in the hi-
erarchy to be visualized simultaneously. Telea et al. [18] proposed
a bottom-up method by merging neighboring groups of voxels with
the highest similarity in an iterative manner. Simplified vector field
visualization results can be obtained at different levels of details.
Du et al. [4] presented a clustering technique based on the cen-
troidal Voronoi tessellation (CVT) to separate the vector field into
a fixed number of groups. McKenzie et al. [10] extended the work
in [4] by employing different error metrics in the variational clus-
tering.
Another category of vector field clustering is based on direct
clustering of field lines. This approach is most commonly found
in visualizing diffusion tensor imaging (DTI) data such as brain
white matter and muscle fibers [12]. In general, these algorithms
all share the steps of first defining a similarity metric between the
trajectories, and then employing an algorithm for clustering accord-
ing to the established similarity measurement. For instance, Shi-
mony et al. [16] tested several distance metrics that measure the
distance between tracks. They used the fuzzy c-means algorithm
for clustering. Brun et al. [1] compared pairwise fiber traces in
dimension-reduced Euclidean feature space to create a weighted,
undirected graph which is partitioned into coherent sets using the
normalized cut. O’Donnell et al. [13] utilized the symmetrized
Hausdorff distance as the similarity measurement among trajecto-
ries and achieved spectral clustering using the Nystr
¨
om method and
the k-means algorithm in the embedding space. Tsai et al. [19] con-
structed tract distances between fiber tracts from dual-rooted graphs
where both local and global dissimilarities are taken into account.
The considered distance is then incorporated in a locally linear em-
bedding framework and clustering is performed using the k-means
algorithm. Curve modeling has also been utilized in clustering. For
example, Maddah et al. [9] defined a spatial similarity measure
Figure 1: The sketch-based vector field visualization process. The
user can use sketching to find field lines (left branch) or field-line
clusters (right branch) of interest.
between curves for a supervised clustering algorithm. Expectation-
maximization (EM) algorithm is used to cluster the trajectories in
the context of a gamma mixture model.
3 OVERVIEW
Figure 1 illustrates the flowchart of our vector field sketching and
clustering process. Our approach introduces user interaction into
the clustering. We assume that we are given enough field lines that
could capture as many features as possible in the vector field. For
instance, we can randomly place a large number of seed points to
generate field lines. We point out that our method can work with
existing seeding strategies that capture different aspects of flow fea-
tures. The resulting eld lines may provide valuable information for
purposeful sketching. Our approach consists of two different direc-
tions: one uses sketching to cluster field lines and the other uses
sketching to query field line template.
3.1 Sketching for Field Line Clustering
For field line clustering, our approach includes two steps: 2D curve
selection [22, 2] and similar 3D field lines clustering [14]. The
user’s input is constrained in the 2D space. Thus all field lines are
projected into the 2D space f or matching with the input curve. The
projection corresponds to a user-specified viewpoint where features
of interest may exist. Based on these projected curves, we utilize
the string matching approach to find the field line that is most sim-
ilar to the input. Specifically, we approximate the user’s drawing
and the projected field lines by an arc length parameterized cubic
B-spline. The shape features are extracted by sampling the curva-
ture at equal arc length intervals along the curve. Then, we measure
the similarity between two curves using the edit distance.
After getting the 2D curve resembling the input pattern, we us e
its original 3D field line as the reference for 3D field line cluster-
ing. The 3D similarity measurement is similar to that in the 2D
curve selection. The only difference is that one 3D curve should
be represented by both curvature and torsion. Identified similar 3D
field lines will be highlighted with different colors and/or opacities.
They can also be removed from the rendering so that the user can

continue to explore the remaining field by changing the view and
sketching interested patterns observed. New groups of similar eld
lines will be identified. After a few iterations, the entire vector filed
would be partitioned into different clusters. The user can examine
one group at a time, or combine several groups to find their rela-
tions. Alternatively, representative field lines from each group can
be used for selective display so that a less cluttered visualization
can be realized while distinct flow patterns are exhibited.
3.2 Sketching for Template Query
For field line template query, a list of clusters is pre-generated us-
ing a hierarchical clustering algorithm during preprocessing. The
algorithm allows the user to change the number of clusters inter-
actively at runtime. For each cluster, a view-dependent field line
that displays the maximum amount of projection information will
be used as the template to represent the corresponding cluster. The
user sketches a partial 2D pattern and our algorithm dynamically
reorders the pre-genereated field line templates according to their
similarities. This step is similar to the 2D curve selection described
in Section 3.1. This similarity comparison helps narrow down a
potentially large number of templates to only a few most similar
ones for user selection. As the user keeps drawing the pattern, the
template reordering becomes more accurate. The user can simply
select one from the filtered template list anytime during her draw-
ing and the corresponding filed line cluster will be highlighted in
the display. Unlike field line clustering, the reason that we can per-
form dynamic reordering for template query is due to the limited
number of templates generated, which normally is set by the user
and is much smaller than the total number of input field lines.
4 SKETCH-BASED CLUSTERING
4.1 Representation of 2D User Sketching
Although drawing 3D curves is possible, we constraint the user in-
put in a 2D interface because it is more intuitive and convenient for
the user to sketch 2D curves. A meaningful representation of the
input drawing is required for the following 2D curve selection and
3D curve clustering. We use a descriptor that includes geometric
parameters such as the curvature along the curve. The curvature is
defined as an instantaneous rate of change of the angle with respect
to arc length. T he main advantage of this representation is that it is
invariant with respect to rotation and translation.
In practice, direct handling the user’s sketching leads to some
problems related to image rasterization. Moreover, small changes
cannot be preserved in this case. To address this, we smooth the
user’s sketching by sampling it at certain intervals and remodel it
with the cubic B-spline. As such, the curve is defined as a func-
tion of parameter t in the range of [t
min
, t
max
], where t
min
and t
max
correspond to the start and end of the curve. That is,
V (t) =
x(t)
y(t)
.
To compute the line’s curvature, the curve needs to be reparameter-
ized by the arc length s in the range of [0, L] where L is the total
length along the curve, i.e.,
V (s) =
x(s)
y(s)
.
Let
V (s) and
V (t) denote the same curve, in which
V (s) =
V (t) implies a relationship between t and s. We apply the chain
rule to obtain
d
V (t)
dt
=
d
V (s)
ds
ds
dt
.
Then we have
d
V (t)
dt
=
d
V (s)
ds
ds
dt
=
ds
dt
,
Figure 2: Examples of the sign on curvature. In (a), the first four
points (from left to right) have the positive sign while the rest three
points have the negative sign. In (b), all points have the positive sign.
where
d
V (s)
ds
=
d
V (s)
|ds|
= 1 and
ds
dt
is nonnegative as the arc length
s increases with the increase of t. From this equation, we can get
the relationship between s and t by integration
s =
Z
t
t
min
d
V (
τ
)
dt
d
τ
,
when t = t
min
, s = 0; and when t = t
max
, s = L. Given t, we can de-
termine the corresponding arc length s from the integration. How-
ever, what we need is the inverse problem. Given an arc length s, we
want to know the corresponding t. To solve this, we employ numer-
ical methods to compute t [t
min
,t
max
] given the value of s [0,L].
We tr eat
dt
ds
=
1
d
V (t)
dt
.
The above equation may be solved numerically with any standard
differential equation solver such as the Runge-Kutta method.
Let
T (s) denote the unit vector tangent to this curve and
θ
be
the angle change of two consecutive vectors. Expressed in terms of
the derivatives of x(s) and y(s) with respect to the arc length s, the
curvature (
κ
) at point s is then given by
κ
(s) =
x
(s)y
′′
(s) y
(s)x
′′
(s)
x
(s)
2
+ y
(s)
2
3
2
,
where the absolute value of
κ
is larger when the curve is turning
rapidly and smaller when the curve is relatively straight. In our
system, instead of using the exact definition of curvature, we use the
angular difference between the tangent vectors at two consecutive
points of the curve [5]. The benefit of using the angular difference
is that it is easy to understand with clear physical meaning. Besides,
it is simple to set in the cost function for string matching.
Another key issue is how to set the sign of angular difference. In
our application, at the starting point the sign of angular difference is
assigned as positive. In the following steps, if angular difference of
two consecutive vectors changes from clockwise to counterclock-
wise or vise versa, the sign is changed to the opposite. For in-
stance, in Figure 2(a), the angular difference at the first four points
are positive and those at the last three points are negative since the
proceeding direction of the curve changes from counterclockwise
to clockwise. In Figure 2(b), the angular difference on all points
are positive since the curve moves along the counterclockwise di-
rection all the time.
At this point, we have already constructed a signature for one
curve composed of an ordered set of accumulated curvatures along
the line at equal intervals:
f = (c
1
,c
2
,.. ., c
r
).
However there is still one problem remaining. During point sam-
pling along the curve, some points with large curvature may be

Figure 3: Sampling points on two different curves yields the same
feature vector since in (a), the corner is not sampled. Taking into ac-
count the accumulated curvature can capture the difference between
the two curves.
missed, which is important in describing the curve. For example,
in Figure 3, we show a sequence of points sampled along the line
in (a) and (b), respectively. Because the turning point in (a) is not
sampled, the feature signature for both (a) and (b) will be exactly
the same as f = (0,0,0, 0,0,0). To overcome this problem, we ap-
ply the accumulated curvature in which angular differences along
the curve are summarized first and then the total angular differences
for that curve segment is used.
According to this feature generation method, different field lines
would have different numbers of curvatures in the feature represen-
tation. Actually, all the information about the curve such as the
total arc length, angle change, and vertex order, are saved in the
signature. With this representation, we will select the most similar
curves to the user’s input and then cluster all similar field lines in
the 3D space.
4.2 Matching 2D Field Line Projections
In our system, the user can observe the vector field from different
points of view. At a certain viewing direction, the user may find
some pattern she is interested in and she can sketch this curve pat-
tern in the given 2D interface. The system will find similar field
line projections in the 2D space under the current view.
4.2.1 String Matching
We use the string matching approach to find similar curves based on
the user’s input. A string is composed of primitives which are N-
dimensional vectors of numerical values. To measure the difference
between strings, we employ the edit distance. The edit distance, in-
troduced by Wagner and Fisher [21], is a metric for measuring the
amount of difference between two sequences. The edit distance be-
tween two strings is given by the minimum number of operations
needed to transform one string into the other, where an operation
is an insertion, deletion, or substitution of a single primitive. For
the 2D curve representation, every primitive vector composing one
string is only one-dimensional which is the curvature. Our basic
idea is to represent both the input line and the field line’s 2D pro-
jection as strings using the method introduced in Section 4.1. In
this way, the curve matching problem can be transformed into string
matching, which is implemented using dynamic programming. The
reference curve will be the user’s sketching and all the other lines
will be matched accordingly to identify the most similar one.
One critical issue with s tring matching is the definition of the
cost function. There are two contradictory considerations in our
application. One of them is to enhance the total arc length of each
curve. For instance, we will not classify curves with significant dif-
ferent lengths into one group because curves with different lengths
in the vector field usually indicate different patterns. In other words,
similar lines have similar lengths. The other consideration is to in-
sert or delete one primitive whenever it is necessary. That means
when the curvatures at some pair of points make a significant differ-
ence, we should delete or insert a point instead of only substituting
corresponding curvatures and count the difference in the final cost.
With this consideration, we define a cost function as follows
f
sub
=
κ
xi
κ
y j
, f
del
= f
ins
= cmax f
sub
;
where f
sub
, f
del
, and f
ins
are the costs for the substitution, deletion,
and insertion, respectively;
κ
xi
and
κ
y j
are curvatures of the ith and
jth sample points on curves x and y, respectively; c (0, 1) is a
constant and is set to 2/3 in this paper. The heuristic is that the
deletion or insertion operation must be greater than half of the cost
of substitution operation. Otherwise, each pair of strings will be
matched using the deletion or insertion operation only.
4.2.2 Repetition, Scale, and Tolerance in Patterns
If streamlines are traced very long due to the underlying flow pat-
tern, the total length and angle changes of each field line can be very
large. As a consequence, it will be difficult for the user to character-
ize the whole curve. At the same time, the number of string prim-
itives for describing each line will increase, which would demand
more time for curve matching. As a matter of fact, we observe
that many feature patterns are repetitive along the curve. There-
fore, only the characteristic part of the curve needs to be matched
instead of the whole line. A simple example is a circular field line
with a large number of loops. In this case, the user would prefer to
sketch one loop to catch this feature field line rather than sketching
many loops. In our work, we propose a simple yet effective way to
extract line patterns for matching. According to the angle changes
along the curve, only sample points at which the absolute value of
total angle change is less than a certain value are considered. In our
application, we set this value to 720
. In this manner, both the line
patterns on curves or circles can be successfully captured.
The scale of the field lines indicates its relative size. The change
of scales for certain flow patterns is an important aspect and should
be taken into consideration in curve matching as well. In some
cases, flow patterns of small size are just noise, but in others, they
are probably important areas in the vector field. For example, ed-
dies/vortices/swirling zones at a particular scale in practice, could
be either good or bad indications. To incorporate this, we normalize
all points on the curve into the range of [0,1] and store its magni-
tude during the B-spline parameterization. The magnitude which
indicates its relative scale will serve as an additional parameter in
curve matching. In this way, the user is able to find the same shape
of features but in different scales.
Another important parameter is the similarity tolerance. Instead
of setting the extent beforehand and determining which range of
similar field lines should be assigned to one group, we allow the
user to change the similarity tolerance on the fly. By varying this
parameter, the user can either display only the most similar stream-
lines or most of the streamlines, and everything else in between.
This also makes it possible to show how different groups of field
lines are similar to each other as the tolerance parameter varies. In
addition, we can also use the total angle change and curve length
as the tolerance. The assumption here is that similar flow patterns
have similar total angle changes and curve lengths.
4.3 Matching 3D Field Lines
Only matching curves in 2D does not complete our work because
similar field lines in 3D are likely to have quite different shapes
after projected onto the 2D viewing plane. Our goal is to find all
similar field lines, and therefore, we need to classify field lines in
the 3D space. We point out that the 2D curve matching method
can be extended to 3D. The difference lies in the representation of
2D and 3D curves. In 3D, a curve can be uniquely represented
by its curvature and torsion while in 2D, using only the curvature
information suffices. The curvature (
κ
) and torsion (
τ
) in 3D can
be represented as

(a) (b) (c)
Figure 4: (a)-(c) show streamlines traced in the hurricane, plume, and computer room data sets, respectively. The velocity magnitudes are
mapped to the streamline colors. For the hurricane and computer room data sets, the scalar fields are also volume rendered to provide the
context information.
κ
(s) =
K
1
2
x
(s)
2
+ y
(s)
2
+ z
(s)
2
3
2
and
τ
(s) =
det
x
y
z
x
′′
y
′′
z
′′
x
′′′
y
′′′
z
′′′
!
K
,
where
K = (y
(s)z
′′
(s) y
′′
(s)z
(s))
2
+
= (z
(s)x
′′
(s) z
′′
(s)x
(s))
2
+
= (x
(s)y
′′
(s) x
′′
(s)y
(s))
2
.
The curvature and torsion at each sample point can be organized
into a two-dimensional vector, which serves as a primitive in string
matching. Similar to the 2D case, the cost functions now become
f
sub
= (
κ
xi
κ
y j
) + (
τ
xi
τ
y j
), f
del
= f
ins
= cmax f
sub
;
where
κ
xi
and
τ
xi
are curvature and torsion values of the ith sam-
ple point on curve x respectively, and so are
κ
y j
and
τ
y j
at the jth
sample point on curve y. Again, we set c = 2/3.
5 SKETCH-BASED TEMPLATE QUERY
For automatic clustering, we use a typical agglomerative hierarchi-
cal clustering method. Before clustering, each field line is consid-
ered as a separate cluster. Then, we perform a bottom-up clustering
algorithm iteratively such that in each iteration, the two most sim-
ilar lines are merged into a larger cluster. This merging process
repeats until we arrive at a single cluster that represents the whole
set of field lines. A binary tree is generated during this clustering
process indicating which two clusters are merged at each iteration.
Each tree node has a level attribute indicating at which stage the
cluster is created. By default, all leaf nodes have the level of 0 and
the root has the level of N 1, where N is the number of field lines
traced from the flow data set. All the initial field lines are stored in
the leaf nodes.
The key step of this clustering algorithm is to evaluate the simi-
larity of two clusters and merge them. In our implementation, each
cluster is associated with a representative string. Initially, for each
field line, the representative string is its corresponding string, which
is constructed in the same way as described in Section 4.2.1. The
similarity evaluation of two clusters compares their representative
strings. When merging two clusters into a new one, the representa-
tive string for the new cluster is the mean string of the merged clus-
ters. The mean string is calculated using the approach presented in
[15]. The clustering is performed at the preprocessing stage.
During runtime visualization, we first select the number of clus-
ters by choosing the level in the binary tree. Then, the selected
clusters are displayed using the projections of their representative
field lines. The selection of the representative field line for a clus-
ter is view-dependent. Give a cluster, we traverse its corresponding
binary tree node to obtain all its leaf nodes where the initial field
lines are stored. Among them, we select a line with the maximum
viewpoint quality as the representative line of a cluster. We mea-
sure the viewpoint quality of a line using a heuristic approach. We
first sample the 2D projection of the field line, and then accumu-
late the angles of the two consecutive sample line segments, where
a larger angle represents more information shown in the 2D pro-
jection and therefore a higher viewpoint quality. In practice, we
precalculate the viewpoint qualities of a field line by sampling the
viewing sphere with a constant angle spacing (say 5
). At runtime,
the quality of a field line from a viewing direction is looked up from
the closest sampled viewpoint. The measurement of the similarity
between the pattern sketched by the user and the projected represen-
tative field lines of the clusters follows the same method described
in Section 4.2. The measuring is performed in real time as the user
sketches a pattern. The most similar clusters are dynamically up-
dated and listed for user selection.
6 RESULTS AND DISCUSSION
6.1 Results
We experimented with our user-centric approach on several flow
data sets. The first one is the velocity vector field of the hurricane
Isabel data set, provided by the National Science Foundation and
the National Center for Atmospheric Research (NCAR ). The sec-
ond one is the solar plume velocity vector field, provided by the sci-
entists at the NCAR. The third one is the flow field in a computer
room. Figure 4 s hows the streamlines generated in the three data
sets respectively by random seeding in the vector field and tracing
with the Runge-Kutta method. Clearly, all rendered images con-
tain a great deal of clutter. In the following, we demonstrate how
our sketch-based interface helps the users specify line patterns and
cluster the flow fields. We also present results that use sketch-based
interface for template query where the corresponding clusters are
pre-generated using the automatic clustering algorithm.

Figures
Citations
More filters
Journal ArticleDOI

Regression Cube: A Technique for Multidimensional Visual Exploration and Interactive Pattern Finding

TL;DR: This work introduces an interactive 3D extension of scatterplots called the Regression Cube (RC), which augments a 3D scatterplot with three facets on which the correlations between the two variables are revealed by sensitivity lines and sensitivity streamlines.
Journal ArticleDOI

Sketch-based interactive visualization: a survey

TL;DR: An overview of relevant research works related to sketch-based interface in visualization, and a categorization based on the aim of interaction, of which there are seven primary categories: selection, cutting, segmentation, matching, coloring, augmentation, and illustration.
Journal ArticleDOI

A Vocabulary Approach to Partial Streamline Matching and Exploratory Flow Visualization

TL;DR: FlowString is introduced, a novel vocabulary approach that extracts shape invariant features from streamlines and utilizes a string-based method for exploratory streamline analysis and visualization and extends to handle multiple data sets.
Proceedings ArticleDOI

Pattern Search in Flows based on Similarity of Stream Line Segments

TL;DR: This work proposes a method that allows users to define flow features in form of patterns represented as sparse sets of stream line segments, and finds similar segmentations for similar flow structures that are invariant to similarity transformations.
Journal ArticleDOI

User-defined feature comparison for vector field ensembles

TL;DR: This paper uses a detail-to-overview searching scheme to help extract vortex with a user-defined shape and shows that the method is capable of extracting the features across different runs and comparing them spatially and temporally.
References
More filters
Journal ArticleDOI

The String-to-String Correction Problem

TL;DR: An algorithm is presented which solves the string-to-string correction problem in time proportional to the product of the lengths of the two strings.
Book

Modern Differential Geometry of Curves and Surfaces with Mathematica

TL;DR: Modern Differential Geometry of Curves and Surfaces with Mathematica explains how to define and compute standard geometric functions, for example the curvature of curves, and presents a dialect ofMathematica for constructing new curves and surfaces from old.
Journal ArticleDOI

Over Two Decades of Integration-Based, Geometric Flow Visualization

TL;DR: This survey reviews and classify geometric flow visualization literature according to the most important challenges when considering such a visualization, a central theme being the seeding algorithm upon which they are based.
Book

On curve matching

TL;DR: Two algorithms to find the longest common subcurve of two 2D curves are presented, based on conversion of the curves into shape signature strings and application of string matching techniques to find long matching substrings, followed by direct curve matching of the corresponding candidate subcurves to finding the longest matching subCurve.
Book ChapterDOI

Clustering Fiber Traces Using Normalized Cuts.

TL;DR: A simple and yet effective method for pairwise comparison of fiber traces is presented which in combination with the N cut criterion is shown to produce plausible segmentations of both synthetic and real fiber trace data.
Related Papers (5)
Frequently Asked Questions (2)
Q1. What are the contributions in "A sketch-based interface for classifying and visualizing vector fields" ?

In their work, the authors advocate a user-centric approach to exploring 3D vector fields. Furthermore, the authors employ an automatic clustering method to generate field-line templates for the user to locate subfields of interest. This semi-automatic process leverages the user ’ s knowledge about the flow field through intuitive user interaction, resulting in a promising alternative to existing flow visualization solutions. 

For further work, the authors will involve scientists in the evaluation of their technique. To support real-world applications, the technique must be extended to handle time-varying vector fields, that is to extract and track complex flow features over time. The authors will also develop advanced interfaces and interaction techniques for such a user centric approach to flow visualization. In particular, sketching and brushing may be done creatively and quite naturally through touch and stereoscopic interfaces.