Report PDF
Report PDF
ABSTRACT the sinusoid. Figure 1(c) shows another sinusoid whose fre-
We present a system for the visualization of an important quency is double that of the previous one; Figure 1(d) shows
signal processing technique- a Gabor Filter bank’s response the magnitude of its spectrum. Suppose we add these two si-
to an image. To do this, one must overcome the problem nusoids then we will obtain a signal as shown in Figure 1(e).
that no multi-dimensional space can be shown in a a single, Doing a spectral analysis on this would show the composi-
static graph. We use an interactive widget to change the tion of the signal - the two peaks in Figure 1(f) correspond to
visible range of the projected dimensions, and additional the component sinusoids. Fourier analysis has proven to be
graphics which summarize the responses in the projected one of the most powerful tools in signal processing. However,
dimensions. Thus, though we view this four-dimensional a key problem with Fourier analysis is that spectral features
space through 2-dimensional projections, we allow the user from different parts of the image are mixed together. Many
to understand all dimensions, not just the plane of projec- image analysis applications, e.g. object recognition, track-
tion. We found that the implemented system helped in get- ing, etc., require spatially localized features. Gabor filters
ting a better understanding of Gabor filter responses. We are a popular tool for this task of extracting spatially local-
think that use of a domain dependent interaction tool and ized spectral features [1, 2].
additional summarization graphics may be useful in a more
general Information Visualization setting. 1
0.8
80
70
0.6
60
0.4
−0.2
30
Data −0.4
20
−0.6
10
−0.8
Keywords −1
0 20 40 60 80 100 120 140 160 180 200
0
0 10 20 30 40 50 60 70 80 90 100
Data 0.8 90
0.6 80
0.4 70
1. INTRODUCTION 0.2
0
60
50
−0.4 30
−1 0
tations. The frequency characteristics of images can be an- 0 20 40 60 80 100 120 140 160 180 200 0 10 20 30 40 50 60 70 80 90 100
80
−0.5
60
40
(e) (f)
0.8
0.6
0.4
0.2
(a) (b) 0
−0.2
−0.6
(a)
1
0.9
0.7
0.4
0.1
Visualization. 0
0 20 40 60 80 100 120 140 160 180 200
(b)
1.1 Introduction to Gabor Filters 1
0.8
0.2
−0.4
−1
0 20 40 60 80 100 120 140 160 180 200
0.5
−0.5
−1
70
60
50
40
30
60
20 50
40
10 30
20
0 10
0
(a)
0.5
0
60
50
40
30
20 60
50
40
10 30
20
0 10
0
(b)
0.5
−0.5
−1
60
50
40
30
20
60
50
10 40
30
20
0 10
0
(c)
Figure 5: Example of Gabor filters with different
Figure 4: Gabor filter composition: (a) 2D sinusoid frequencies and orientations. First column shows
oriented at 30◦ with the x-axis, (b) a Gaussian ker- their 3D plots and the second one, the intensity plots
nel, (c) the corresponding Gabor filter. Notice how of their amplitude along the image plane.
the sinusoid becomes spatially localized.
problems in visualization.
strength of the response as color, we can visualize the entire
filter bank response in a single figure. For examples on syn-
Medical imaging also involves visualizing images with mul-
thetic signals, see Figures 7 and 8. For an example from a
tiple modalities simultaneously [6, 7, 8]. However, here the
real signal, see see Figure 9. Observe that for real signals, it
emphasis is on capturing the 3D human body structure. The
is very difficult to predict how a filter bank will respond to
usual approach is to stack the different image planes on top
a given signal. This is the major motivation for this work.
of one other and allowing the user to slice the across these
planes. Notice that in our case we are dealing with 4 di-
2.2 Other Possibilities mensions where only two have any explicit spatial meaning.
A straight forward extension of the 1D visualization ap- The other dimension would be created artificially by stack-
proach would be to simply show a matrix of intensity plots ing the image planes. Choosing a range of parameters would
on the screen. Each intensity plot would show the amplitude involve rotating the stack of image planes around and choos-
of Gabor filters for a particular orientation and frequency. ing a volume. It has been cited in visualization literature
The frequency could vary along the row in the matrix and that 3D rotations during visualizations are often disorient-
orientation could vary along the columns. The problem with ing as it is difficult to keep track of a frame of reference over
this approach is the lack of ability of the user to interact with the course of interaction. In our work, we have tried to get
the filter bank parameters. Typically users like to be able to the best possible interaction while confining ourselves to 2D
choose ranges of orientations and frequencies of the Gabor visualization.
filter bank and to observe the responses over the whole im-
age. Natural images rarely respond to specific frequencies or Another option would be to reuse our approach of visual-
orientation but rather exhibit a spread over these parame- izing Gabor filter responses to 1D signals. The user could
ters. Ability to dynamically choose the range of parameters be given an interface to enable him/her to slice an image
helps in better understanding of the response characteris- into a strip. Then we could apply Gabor filters of different
tics. Another issue is the pragmatics of screen real estate. frequencies along this strip and stack them as shown in Fig-
Typical images of interest in computer vision research are ure 7. However, it would be difficult to simultaneously view
of size 300 × 200. Assuming that the video screen resolu- responses for multiple orientations. Moreover, images have
tion is 1024 × 768 and we can occupy the whole screen with an inherently 2D structure - applying filters along 1D strips
the intensity plots, we can show only 3 orientations and 3 will ignore this.
scales. Even downsizing the image by half will only increase
these to 7 and 7 respectively. Downsizing further might pose Parallel coordinates are a popular approach for visualizing
(a)
(b)
multi-dimensional data [9, 10]. Each dimension is plotted Figure 8: 1 dimensional Filter response for a syn-
along an axis and all axes are placed parallel to one another. thetic signal
Each data point in the high dimensional space is represented
by correspondingly joining the axes with line segments. In
our case, two of the dimensions are coordinates on the im-
way to view this data. Thus, our approach is essentially in
age plane and hence plotting them on parallel coordinates
line with the GRID principles, but applied in an unusual
might not be a good idea. (Figure 10) Star Coordinates
way. The obvious thing here, would be to observe that with
is another popular visualization tool for multi-dimensional
4 dimensions, there are 6 possible projections- why not sim-
data [11]. However, it might not useful in our case as two of
ply show them and be done with it? There are two reasons.
the dimensions have explicit spatial meaning.
The first and minor reason is that most of these 6 projec-
2.3 Our Approach tions are not meaningful. For example, a projection onto
Now, for a two dimensional Gabor filter bank, the situation the (y, φ) plane is difficult to intepret. There are really only
is much more difficult. Take the response for such a bank two projections with natural interpretations: onto the (x, y)
to be G(x, y, θ, φ), where (x, y) is the position of the filter plane, and onto the (θ, φ) plane.
relative to the input signal, θ is the frequency of the filter,
and φ is the orientation of the filter. It is clear that no static The second and more important reason, is that we have too
presentation will allow us to view the response of the entire much data for full projections. If we simply project the data
filter bank. Here we adopt the philosophy that, in order downwards onto the (x, y) plane, we will be able to see the
to give a users an understanding of the response of this 4 maximum filter response for each image point, but we will
dimensional filter bank, interaction is necessary. have no idea what part of the filter gave this response. We
combat this problem in two ways. First, we allow users to
We feel that 2 dimensional projections are again the best project onto this plane, but we also allow them to restrict
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
1 1.5 2 2.5 3 3.5 4 4.5 5
Figure 11: (x, y) Interface Widget set by (θmin , φmin ) → (θmax , φmax ). Notice that here we
can see what parts of the image have a strong response
in the range set above, but this figure alone tells us little
The disc is discretized along the radius and angular direc- about which orientations and frequencies gave these strong
tion - in our case there were 7 quanta along θ and 10 quanta responses.
along the φ direction. Once the user has selected a range
(xmin , ymin ) → (xmax , ymax ), the program finds, for each
pair (θ, φ), the maximum response, G(x, y, θ, φ), such that
xmin ≤ x ≤ xmax , and ymin ≤ y ≤ ymax . The maximum
response is then plotted onto the (θ, φ) Projection - higher
the response, brighter the intensity of the plot. Observe
that the strongest filter responses, in this case, are medium-
frequency, and slightly off the horizontal- this corresponds
naturally to the zebra. We found that in this projection,
any windows attempting to summarize the range of x and
y which yielded the maximum response were not helpful, as
user is generally examining a small range.
3.6 φ plot
The plot of the φ found for each (x, y) such that G(x, y, θ, φ)
is maximum is shown in Figure Figure 15. This is not a
Figure 12: (θ, φ) Projection projection per-se, but rather tells us about what parts of
the projected dimension φ yielded the strongest response.
Rather than coding orientation as an intensity or color, we
have chosen to plot small lines with the same orientation as
3.4 (θ, φ) Interface Widget
φ. This is much easier to interpret, but we can only display
This interface is based upon a simple widget which allows φ for every few (x, y). (Otherwise the lines cover the entire
the users to select the range (θmin , φmin ) → (θmax , φmax ). image, and one cannot see anything at all.)
The widget is plotted on the (θ, φ) projection. It is in shape
of wedge in the (θ, φ) projection disc. By varying its radial
width, the user can choose different ranges of θ. Varying the 3.7 θ plot
angular width changes the range of φ in the Gabor filter. The plot of the θ found for each (x, y) such that G(x, y, θ, φ)
This scheme was chosen because it has a natural interpreta- is maximum is shown in Figure 16. Again, this is not exactly
tion: the angles spanned by the selected region, correspond a projection, but gives us information about how the projec-
to the orientation of the Gabor filters selected, while the tion was formed. Here, frequency is encoded as an intensity-
radius corresponds to the frequency. This is shown in Fig- darker colors correspond to higher frequencies. This encod-
ure 13. There, the user has selected orientations close to ing is not completely natural, but we were unable to find a
vertical, and medium frequencies. more intuitive way to display this.
6. REFERENCES
[1] D. J. Gabor, “Theory of communication,” IEE,
vol. 93, no. 26, pp. 429–457, 1946.
Figure 18: The user has selected the entire (x, y) range, and Gabor filters with nearly vertical orientations φ,
with medium or high frequency θ. Notice that in the bottom left plot, parts of the zerba with vertical edges
have a high response.
Figure 19: A different image. The user has selected the cadaver’s face area. The horizontal lines in the area
result in higher responses for Gabor filters with horizontal orientation, as show in the (θ, φ) plot in the center.
Because the user has selected high frequencies with any orientation, the edges in the image are highlighted.
Figure 20: The user has again selected all orientations φ, but now with medium to high frequencies θ