Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 6

Data Mining in digital image processing using

the Gabor filters algorithm

Oana Astrid Vatamanu a , Mihaela Ionescu a ,


a
University of Medicine and Pharmacy “Victor Babeş”/ Department of Medical Informatics,
300173-Timişoara, Tudor Vladimirescu Street 14, Romania, astridv2002@yahoo.com

Abstract

This paper presents a method of analysis and processing of digital images, with a particular interest
in the technique that uses the set of Gabor mathematical functions (Gabor wavelet). Medicine represents a
possible field of application, as different types of images that appear in this area may be therefore analyzed:
x-rays, ultrasounds, NMR, etc.

Keywords: Gabor, wavelet, image, digital, medicine, analysis

I. Introduction

During the past few years, digital images are becoming increasingly used, in accordance
with the development of digital equipments that are cheaper and more accessible. The fields of
image analysis, especially the texture analysis, also received a special attention. Since the images
may be considered a mosaic of textures separated by certain borders, a pertinent analysis must
comprise the obtaining process, the classification and the segmentation of the image. In order to
classify and obtain the textures, it is necessary to take into consideration a function that measures
the similarities between the given image and the images included in a database, selected for
comparison. This function measures the distances between certain features of the textures. This is a
two step method:
- Feature Extraction – FE
- Similarity Measurement – SM

We used the facilities of .NET Framework, the programming environment Visual Studio
and the C# programming language, as it is object oriented, easy to use for a desktop application,
and finally as it is of latest generation in programming languages. Another advantage is represented
by the fact that the code is easy to read and to “generate”, due to the multitude of predefined
libraries offered by Microsoft. [2, 3]

II. Digital images analysis and processing

A digital image is a representation of a two-dimensional image, defined as a finite set of


digital values, named image elements or pixels. The digital image consists of a fixed number of
pixel lines and columns. Pixels represent the smallest informational units of an image (usually
associated with small dots) which contain quantifiable values for brightness and for the image dots.
Normally, pixels are stored in memory as a two-dimensional matrix of integer values of type small.
These values are sent or stored in a compressed way.
Each pixel in an image is associated to a specific position in a two-dimensional area. It has
a specific numeric value quantifying the image features (brightness, grey shades or color
information) that define the corresponding image dot. Therefore, the digital images may be
classified according to the number and the nature of these samples: binary, grayscale, false-color,
multi spectral, thematic, graphical functions.
Even if the term “texture” refers to the properties belonging to the external surfaces of the
objects and to the sensations induced by touch, it is sometimes used to describe non-tactile
sensations. Also, the textures may represent sub-dimensioned models (especially in case of non-
tactile two-dimensional textures), where the individual elements are placed one next to the other, in
order to generate undistinguishable models.
Color may be an integral part of the texture’s model, or it may be applied separately. In this
case, a repetitive model of the texture may be used in a number of ways in computer graphics:
green for grass, blue for water, grey for concrete, dark grey for nocturnal images, etc.

III. Gabor wavelet

This paper presents the textures analysis using Gabor filters, evaluating also the
performance in identifying models in a large database of images representing textures. These
images are compared with other representations of existing textures. A simple algorithm for a
neural network is used to discover the similarities between the texture’s space segmentation. [1, 7]
The performance of finding similar models increases significantly by the discovery of similarities.
[10] An important aspect of this process is its use on real images. The extraction of texture patterns
and the discovery of similarities are used in searching in high dimensional digital images.
As mentioned, a function to measure the similarities is necessary; this function works in
two steps: Feature Extraction – FE and Similarity Measurement – SM.
As an example, we may consider two texture models: a weaver model, which may be
studied by frequency analysis, and a grass model, which may be analyzed throughout statistic
descriptions. [4] Still, these models correspond to extreme cases that do not fit in real images. The
general FE and SM methods define constrains: the pattern must be small sized, it must correctly
characterize the texture, and the numeric value that defines similarity must be accurate and small
for similar features; in opposition, a large pattern is needed for the other cases. Also, the features
may be set as invariant to translations and rotations, in order to accept two textures as being
equivalent, one deriving from another by translation or rotation. [9]
Gabor functions are Gaussian functions modulated by complex sinusoids. In two
dimensions, they may be defined as follows:

 1    2 2  
g ( x, y )    exp  1  x  y   2jWx
 2    2   x  y 
2 2

 x y 

The masks for the Gabor filters may be considered as orientation and scale regulators. [8]
In a given region, statistics for these micro features may be used to characterize the information
behind the texture. Gabor wavelet represents a class of this type of functions. The dictionary of
similarity filters may be obtained using the corresponding dilatation and rotation of g(x,y), through
the generating function.

g mn ( x, y )  a  m g ( x ' , y ' ) , a>1, m,n – integers


x'  a  m  x cos   y sin   , y '  a  m   x sin   y cos  
n
where   , K being the number of orientations.
K

A measure of similarities in the feature space should capture the similarities between the
initial image models. Still, many times, the value scale is a subjective measure. The simple
measurement of distances, as the Euclidian distance, may not maintain the initial similarity.
Therefore, the computation of the right measure of similarity may be seen as a learning problem.
The purpose of learning is to divide the original feature space into clusters with similar visual
models. A large number of labeled images and the associated characteristic vectors are used during
the last phase. When a texture model is presented, the network allocates a class, based on the
characteristic vector. The final ordered set of results is then computed using the Euclidian distance
within the same class. [6]
The analysis based on the texture properties is largely used in multimedia or image
databases. [5] Usually, the images from these databases have very large dimensions, varying from
several MB to hundreds of MB, representing a serious challenge for the image analysis and data
visualisation.

IV. Example

In order to exemplify the way to use the Gabor wavelet in image analysis, we realized a
tool consisting of two parts: a theoretical part and the program itself.
This tool was implemented in C# programming language and it offers, besides the
corresponding forms, certain classes, among: FeatureVector, GaborAnalyse and
GaborFeatureExtraction. These classes define the objects used by the tool. By calling the
corresponding method, we shall obtain the characteristic vector, which will lately be used for
comparison.
Next, it is exemplified the manner in which an image is interpreted. We used an ultrasound
image (Figure 1). In order to reduce the analysis time, the image was resized to 200x250 pixels.
Considering that the images received from the analysis laboratory have the same sizes in pixels,
usually generated in very high resolution, to be represented in the graphical interface (GUI –
Graphical User Interface), each image will be resized in order to fit in the entire space of the cell
reserved for the GUI image. The display manner of the images does not influence their analysis
process, as the tool will analyze the initial image files.

Figure 1 - Ultrasound medical image

The work flow is the following: the analyzed image is chosen by pressing the
corresponding button, and then the tool will extract its features and will generate the characteristic
vector using the Gabor wavelet and the „Energy Based” method, as well as the images
corresponding to the filtering operation, in .png format.
The tool itself works with medical images databases (x-rays, ultrasounds, etc). The
databases are either newly created, or already existing. In order to add an image to the database, it
is necessary to press the „Add reference image” button (Figure 2), which triggers the extraction of
features and the generation of the characteristic vector (using the same Gabor filters). Before
performing these computations, the tool requires a description in medical terms of the image and a
diagnosis as input data.
Figure 2 - Stages in image processing – loading the image database

A visualization of the existent images in the database and the corresponding diagnosis is
possible in any moment. There is also the possibility to delete a record from the database, if the
user desires it. By a record, one can understand the set of information which characterizes an image
(name, the image itself, description, diagnosis).
After the comparison of the new image with the images already stored in the database, the
following results will be presented: the most similar image found in the database, the similarity
percentage and a presumptive diagnosis (the one already known – of the most resembling image)
(Figure 3). If the user accepts the given result, a reference to the analyzed image will be recorded in
the database, in the corresponding category (Figure 4).
Figure 3 - Stages in image processing – loading an image that will be compared with those from
the database

Figure 4 - Stages in image processing – recording the image to be included in the image database

There is also the possibility to export the characteristic vectors obtained in .xls format, in
order to be processed and analyzed using other Data Mining tools.
Conclusions

This tool may be used in most fields that use image comparison, but it is mostly useful in
medicine, where it may be developed towards an expert system, by combining the medical
knowledge with mathematics.

References

1. Daugman, J.G., Complete discrete 2-D Gabor transforms by neural networks for image analysis and
compression, In: IEEE Trans. ASSP, July 1988, vol. 36, pp. 1169-1179.
2. Forsyth, D.A., Ponce, J., Computer Vision – A Modern Approach, Prentice Hall 2003.
3. Blythe, D., Advanced Graphics Programming Techniques Using OpenGL, Siggraph 1999.
4. Chang, T., Jay Kuo, C.-C., Texture analysis and classification with tree-structured wavelet transform,
In: IEEE Trans. Image Processing, October 1993, vol. 2, no. 4, pp. 429-441
5. Manjunath, B.S., Ma, W.Y., Texture features for browsing and retrieval of image data, CIPT TR-95-06,
July 1995.
6. Kohonen, T., The self-organizing map, In: Proc. IEEE, 1990, vol. 78, no. 9, pp. 1464-1480.
7. Haykin, S., Neural Networks, Macmillan Publishing, 1994.
8. Alexandrov, A.D., Ma, W.Y., El Abbadi, A., Manjunath, W.Y., Adaptive filtering and indexing for
image databases, In: Proc. of SPIE, San Jose, CA, February 1995, vol. 2420, pp. 12-23.
9. Haley, G.M., Manjunath, B.S., Rotation invariant texture classification using the modified Gabor
filters, In: Proc. IEEE Intl. Conf. on Image Processing '95, Washington D.C., October 1995, vol. I, pp.
265.
10. Ma, W.Y., Manjunath, B.S., Texture features and learning similarity, In: Proc. IEEE International
Conference on Computer Vision and Pattern Recognition, San Francisco CA, June 1996, pp. 425-430.

You might also like