Andrey S. Krylov,
Faculty of Computational Mathematics and Cybernetics,
e-mail: kryl@cs.msu.su
Andrey V. Kutovoi,
Faculty of Computational Mathematics and Cybernetics,
e-mail: kutovoi@fromru.com
Wee Kheng Leow,
e-mail: leowwk@comp.nus.edu.sg
Contents
The report
considers the task of texture identification using Hermite
expansion method. Three methods to analyze textured images in terms of
one-dimensional Hermite transform are described and
compared. The methods were tested with Brodatz
textures and real photo. Hierarchical coding without subtractions was found as
the most effective method for the Hermite transform
based texture identification. The method was also applied to the problem of
texture based image segmentation.
Keywords:
Hermite transform, texture identification, image
segmentation.
1. INTRODUCTION
Texture
nowadays is an important term in the world of computer vision, graphics
applications and computer modeling. Although the term “texture” is wide known,
it is difficult to construct a formal definition for it. Informal definitions
such as surface property, etc. are intuitively clear for a human, but
they do not reflect any approach to the textured images analysis. So it is
better to say that texture is related to periodical luminosity fluctuations in
the image, which let us interpret the surface as a homogenous structure.
Textures can be characterized using properties such as regularity, coarseness,
contrast and directionality. A system that is required to deliver meaningful
judgments concerning texture, needs to be able to extract a description of the
image data in a form that explicitly captures these properties.
The task
of texture processing first came up with the task of making the automatic image
recognition systems. Textures in the context of image recognition can be used
in different ways: image segmentation; detecting the physical properties and
materials of the surfaces represented in the image; detecting the shape and the
position of the objects and surfaces in the image.
Our first
aim will be the task of texture identification. During the
past decades there have been presented different approaches [2]: statistical,
geometrical, structural, model-based and signal processing. The focus of
this paper is to present a new approach in the concept of the signal processing
methods in texture analysis. The approach can also be referred to as filtering
approach.
The signal
processing method is based on applying a set of band-pass filters to extract
the so-called feature vectors from the image. Each filter responds most
strongly to a selected spatial-frequency and orientation bands. The 2-D Gabor filters h(x,y)
are very popular to be applied to images[5],[1]:
![]()
![]()
![]()
These
functions are often used because they are oriented, have the easy tunable
carrier frequency f, and are good localized both in the spatial and
frequency domains [1].
2. HERMITE FUNCTIONS
DEFINITION
In this paper the Hermite functions were taken as an alternative to the Gabor functions. These functions are defined as:
,
They also can be evaluated recursively:

These functions vanish at infinity and satisfy
the equation
,
and are the eigenfunctions of the Fourier
transform.
The Hermite functions also satisfy an important feature in
image processing, as they derivate a full orthonormal
in
system
of functions.
Hermite functions of the first six orders are plotted in
fig.1. Different applications of Hermite functions in
image processing can be found in [6-10].






Fig.1
Now
we describe the scheme of the feature vectors retrieval. We consider the 1-d
function f(x). It can be expanded into the series
|
|
|
|
where ai is the i-th Fourier coefficient, and Yi(x) is the i-th Hermite
function.
The
2-d Hermite function can be introduced as a separable
product of the corresponding 1-d functions:
but in this current work we use
![]()
![]()
In this paper
we will describe and compare three methods to analyze textured images in terms
of Hermite transform. They will be referred to as the
ordinary transform, the hierarchical coding with subtractions and the
hierarchical coding without subtractions.
For n=4
and n=15 the functions are plotted in fig.2


Fig.2
As can be
seen in fig.2, the functions have a strongly expressed orientation. To perform
an adequate analysis the functions should be turned at several different
angles. In this work 8 orientation angles were used: 0, 22.5, 45, 67.5, 90,
112.5, 135, 157.5. Applying of this method to Gabor
functions is described in [5].
In this
approach to get the feature vectors we consider the functions y n(x,y) where
n1=0..64, and 6 energy coefficients are caclulated:
E1 =
(a 0)2 + (a 1)2 ,
E2 =
(a 2)2+(a 3)2 + (a 4)2,
E3=
(a 5)2 +(a 6)2+(a 7)2+(a 8)2,
…
E6 =
(a 33)2+(a 34)2 + … + (a 63)2 +(a 64)2 ,
f(x,y) is the source
image.
Hence with
the 8 orientations we get a 48-dimensional feature vector for each texture
example.
3.2 Hierarchical Coding
When decomposing
a function by the standard scheme in context of the texture analysis some
problem arise. The most significant of them is that the images from the real
world are unstructured, i.e. luminosity, scale, size, perspective of objects
vary, and can cause inaccuracy during computer processing. Discussing the task
of texture retrieval the problem can be interpreted as follows: human can
easily detect a bricked wall in an image while variations in scale, size, perspectives can make the task unsolvable for computer
vision. To avoid the mentioned problem we took the Martens’ idea of the
Hierarchical coding[3].
This
approach lets us use several sets of patterns, inspired by the different
features that can arise in an image[3]. These sets
distinguish in spatial scale. So the basis Hermite
functions with changing of spatial scale repeatedly take part in forming the
different coefficients of the feature vector. The scheme of calculating the
feature vector components is as follows:
E1 =
(a 0(1))2 + (a 1(1))2 ,
E2 =
(a 0(2))2+(a 1(2))2 + (a 2(2))2 +(a 3(2))2 ,
…
E6 =
(a 0(6))2+(a 1(6))2 + … + (a 62(6))2 +(a 63(6))2 ,


f(x) is the source image,
f(i-1)(x)= a 0(i-1) × y 0(x) + … + a k(i-1) × y k(x) is the source function’s approximation at step i-1;
k=2(i-1)-1.
As the maximum order of the Hermite function in the current scheme is 63 we say that we
have a 6-level hierarchy. An important feature in the hierarchical coding is
that at each level of the hierarchy we stretch the segment of the functions’
approximation to the segment [-Aj; Aj] where Ajis
found from the condition

where k is the highest Hermite function
order at the current
|
|
level. We can say that we rescale our source function to be localized at the
same segment as the mentioned Hermite function. This
approach makes the method of texture detection invariant to the sizes of the
objects in the source textured images.
Similarly
to the ordinary coding, combining with 8 orientations we get a 48-dimensional
feature vector.
3.3 Hierarchical Coding Without Subtractions
This
approach is the same as the hierarchical coding, but the subtraction is not
performed. So we get the following feature vector:
E1 =
(a 0(1))2 + (a 1(1))2 ,
E2 =
(a 0(2))2+(a 1(2))2 + (a 2(2))2 +(a 3(2))2 ,
…
E6 =
(a 0(6))2+(a 1(6))2 + … + (a 62(6))2 +(a 63(6))2 ,

![]()
f(x) is the source image.
Combining
with 8 orientations, we get a 48-dimensional feature vector.
The
results of applying these methods to some textured images can be seen in fig.3
|
|
Texture sample |
Standard coding |
Hierarchical coding |
Hierarchical coding without subtractions |
|
A1 |
|
|
|
|
|
A2 |
|
|
|
|
|
A3 |
|
|
|
|
|
A4 |
|
|
|
|
|
B1 |
|
|
|
|
|
B2 |
|
|
|
|
|
B3 |
|
|
|
|
|
B4 |
|
|
|
|
|
C1 |
|
|
|
|
|
C2 |
|
|
|
|
|
C3 |
|
|
|
|
|
C4 |
|
|
|
|
Fig.3 Structures of
different textures give different patterns in the 2-D representations of the
feature vectors. In the 2-D representations, spatial frequency levels increase from
bottom up along the vertical axis, and orientation changes from left to right
along the horizontal axis and wraps around.
4. RESULTS
To compare
the resulting feature vectors we define the difference between two texture
examples as

a, b are the two
textures, a i, b i are the components of the feature
vectors of a and b respectively.
In table1
some results are reflected:
|
a |
b |
Standard coding |
Hierarchical coding |
Hierarchical coding without subtractions |
|
a1 |
a2 |
0.004505 |
0.005349 |
0.003739 |
|
b1 |
b2 |
0.009905 |
0.008160 |
0.007742 |
|
c1 |
c2 |
0.017778 |
0.011848 |
0.009946 |
|
a3 |
a4 |
0.008807 |
0.006047 |
0.002422 |
|
b3 |
b4 |
0.020075 |
0.010667 |
0.006275 |
|
c3 |
c4 |
0.128322 |
0.101591 |
0.080176 |
|
a1 |
b1 |
0.488420 |
0.492238 |
0.491653 |
|
b1 |
c1 |
0.315644 |
0.304597 |
0.305442 |
Table1.
The
differences between the a and b texture samples in different coding
schemes.
The
results in the Table 1 show that the hierarchical coding without subtractions
algorithm gives better results for the Brodatz
texture samples.
5. RESULTS OF APPLYING TO THE TEXTURE
SEGMENTATION TASK
The proposed hierarchical coding
without subtractions algorithm to obtain texture feature vectors has been
tested with images of natural scenes to perform the texture-based image
segmentation. All images used were 8-bit grayscale. To perform the analysis the
images were split into 50x50(fig.4) and 20x20(fig.5) square blocks. For each
square block the texture feature vector was calculated and by comparing them we
found the regions of the similar textures. Some of the results are shown in
figs.4-5 (fig.4 presents an artificial textured image with blocks of Brodatz texture samples and fig.5 is a natural scene
image). Both the fig.4 and fig.5 contain the source image and two segmented
images. The threshold parameter of the texture similarity was chosen manually.
The “b” images were segmented with a big threshold parameter and the “c” images
were segmented with approximately 10 times smaller threshold parameter. We must
also notice that depending on the current image set (i.e. air photography) the
threshold parameter can be obtained automatically. As is well seen from the
presented illustrations our method gives adequate results for the images of
natural scenes.
6. CONCLUSIONS
The Hermite coding schemes can be effectively used to analyze textured
images. Further work is going on to a) design the feature vectors which are
obtained using the 2-d Hermite functions and b) apply
and fasten the algorithm for the pattern recognition and image segmentation
tasks.
|
A |
b |
c |
|
|
|
|
Fig.4 The result of
applying the texture segmentation algorithm to the artificial textured image.
With the small threshold parameter all the different textures are separated
correctly (image “c”).
|
|
|
|
Fig.5 The result of
applying the texture segmentation algorithm to the “bricked wall” image. The
“strongly bricked” part of the wall is found as a homogenous surface fragment
in both the “b” and “c” images, and the “c” image is separated more strictly
due to the more precise threshold parameter selection.