Unsupervised Texture Segmentation Using Gabor Filters1: Ani1 Jain Farshid Farrokhnia
Unsupervised Texture Segmentation Using Gabor Filters1: Ani1 Jain Farshid Farrokhnia
Unsupervised Texture Segmentation Using Gabor Filters1: Ani1 Jain Farshid Farrokhnia
Filters1
Ani1 K. Jain Farshid Farrokhnia
Department of Computer Science Department of Electrical Engineering
Michigan State University Michigan State University
East Lansing, MI 48824-1027, U.S.A. East Lansing, MI 48824-1226, U.S.A.
[email protected] [email protected]
(l
.. . Filtered
Images
Nonlinearitv
Square-Error Clustering
I Figure 2: (a) An even-symmetricGabor filter in the spatial do-
main. (b) Corresponding MTF. The origin is at ( r ,c ) = (32,32).
Segmented Image
quency [17]. Intuitively, a wavelet transform can be interpreted tial forward selection procedure:
as a band-pass filtering operation on the input image. The Gabor
1. Select the filtered image that best approximates s(z, y), i.e.
function is an admissible wavelet, however, it does not result in an
results in the highest value of R2.
orthogonal decomposition. This means that a wavelet transform
based on Gabor wavelets is redundant. A decomposition obtained 2. Select the next filtered image that together with previously
by our filter set is nearly orthogonal, as the amount of overlap selected filtered image(s) best approximate s(z,y).
between the filters (in the spatial-frequency domain) is small.
Figure 4 shows examples of filtered images for an image 3. Repeat Step 2 until R2 2 0.95.
containing ‘straw matting’ @55) and ‘wood grain’ (D68) textures
A minimum value of 0.95 for R2 means that we will use only as
from the photographic album of textures by Brodatz [2]. The abil-
many filtered images as necessary to account for at least 95% of
ity of the filters to exploit differences in spatial-frequency (size)
the intensity variations in s(z, y).
and orientation in the two textures is evident in these images. The
differences in the strength of the responses in regions with dif- Let r;(z,y) be the zth filtered image and R,(u,v)be its Dis-
ferent textures is the key to the multi-channel approach to texture crete Fourier Transform. The amount of overlap between the
analysis. To maximize visibility, each filtered image has been MTFs of the Gabor filters in our filter set is small. Therefore,
scaled to full contrast. the total energy E in S ( I , y ) can be approximated by
n
E R ~ E ; ,
2.2 Filter Selection i= 1
Using only a subset of the filtered images can reduce the com- where
putational burden at later stages, because this directly translates
Ei = [ ~ i ( z ? y )=] ~ (R,(U,V)~~.
into a reduction in the number of texture features. Let s(z,y ) be Z,Y u,u
the reconstruction of the input image obtained by adding all the Now, it is easily verified that for any subset A of filtered images
filtered images. Let .^(z,y) be the partial reconstruction of the
image obtained by adding a given subset of filtered images. The
e m r involved in using S(z,y) instead of s(z, y ) can be measured
by
An approximate filter selection would then consists of computing
SSE = C
Z,Y
[S^(X,Y) - 4 x 1 Y)12
E; for z = 1,. . . ,n. These energies can be computed in the Fourier
The fraction of intensity variations in s(z,y) that is explained by domain, hence avoiding unnecessary inverse Fourier transforms.
S^(z,y) can be measured by the coefficient of determination We then sort the filters (channels) based on their energy and pick
as many filters as needed to achieve R2 2 0.95. Computationally,
SSE this procedure is much more efficient than the sequential forward
R2=1--
SSTOT’ selection procedure described before.
16
small numerical ranges by those with larger ranges.
3 Computing Feature Images Clustering a large number of pattems becomes computation-
ally demanding. Therefore, we first cluster a small randomly se-
We use the following procedure to compute features from each lected subset of pattems into a specified number of clusters. Pat-
filtered image. First, each filtered image is subjected to a non-
rems in each cluster are given a generic category label that distin-
linear transformation. Specifically, we use the following bounded
guishes them from those in other clusters. These labeled panems
nonlinearity are then used as training patterns to classify pattems (pixels) in
1-
Q(4= tanh((Yt) = -7 (3) the entire image using a minimum distance classifier.
In texture segmentation, neighboring pixels are very likely
where (Y is a constant. This nonlinearity bears certain similari- to belong to the same texture category. We propose a simple
ties to the sigmoidal activation function used in artificial neural method that incorporates the spatial adjacency information directly
networks. In our experiments, we have used an empirical value in the clustering process. This is achieved by including the spatial
of (Y = 0.25 which results in a rapidly saturating, threshold-like coordinates of the pixels as two additional features.
transformation. As a result, the application of the nonlinearity
transforms the sinusoidal modulations in the filtered images to
square modulations and, therefore, can be interpreted as a blob 5 Experimental Results
detector. However, the detected blobs are not binary, and unlike
the blobs detected by Voorhees & Poggio [23] they are not nec- We now apply our texture segmentation algorithm to several im-
essarily isolated from each other. Also, since each filtered image ages in order to demonstrate its performance. These images are
has a zero mean and the nonlinearity in (3) is odd-symmetric, both created by collaging subimages of natural as well as artificial tex-
dark and light blobs are detected. tures. We start by a total of 20 Gabor filters in each case. Each
Instead of identifying individual blobs and measuring their at- filter is tuned to one of the four orientations and to one of the five
tributes, we simply compute the average absolute deviation (AAD) highest radial frequencies. For an image with a width of 256 pix-
from the mean in small overlapping windows. This is similar to els, for example, 4fi, 8d?, 16fi,32fi, and 64fi cycleshmage-
the ‘texture energy’ measure that was first proposed by Laws [15]. width radial frequencies are used. We then use our filter selection
Formally, the feature image ek(z, y) corresponding to filtered im- scheme to determine a subset of filtered images that achieves an
age ~ is given
y )( i, by
++++++++++++++++
++++++++++++++++
++++++++++++++++
++++++++++++++++
++++++++++++++++
+ + + + + L L L L L L + + + + +
+ + + + + L L L L L L + + + + +
+ + + + + L L L L L L + + + + +
+ + + + + L L L L L L + + + + +
+ + + + + L L L L L L + + + + +
+ + + + + L L L L L L + + + + +
++++++++++++++++
++++++++++++++++
++++++++++++++++
++++++++++++++++
++++++++++++++++
References
[ l ] Bovik, A.C., Clark, M., and Geisler, W.S. (1990), “Multichannel
Texture Analysis Using Localized Spatial Filters,” IEEE Trans.
PAMI, vol. 12, no. 1, pp. 55-73.
Table 1: Percentage of misclassified pixels. [Z] Brodatz, P. (1966). Textures: A Photographic Album for Artists
and Designers, Dover, New York.
texture pair have identical third-order s d e ~statistics. The tex- [3] Caelli, T.M. (1988). “An Adaptive Computational Model for Tex-
ture Segmentation,” IEEE Trans. SMC,vol. 18, no. 1, pp. 9-17.
tures in the ‘m-arr’ and ‘S-IO’ texture pairs, on the other hand,
141 Campbell, F.W. and Robson, J.G. (1968), “Application of Fourier
have identical second-order statistics. The ‘even-odd’ and ‘tri-arr’ Analysis to the Visibility of Gratings,” J. Physiology. vol. 197, pp.
textures are two of the counter-examples to the original Julesz 551-566.
conjecture that texture pairs with identical second-order statistics [5] Chellappa, R., Chatterjee, S., and Bagdazian, R. (1985), ‘Texture
cannot be preattentively discriminated [14]. While the first three Synthesis and Compression Using Gaussian-MarkovRandom Field
texture pairs in Figure 9 are easily discriminated, the ‘S-IO’ texture Models,” IEEE Trans. SMC, vol. 15, no. 2, pp. 298-303.
pair is not preattentively discriminable. Our algorithm appears to [6] Coggins, J.M. and Jain, A.K. (1985). “A Spatial Filtering Approach
perform as predicted by preattentive texture discrimination by hu- to Texture Analysis,” Pattern Recognition Letters, vol. 3, no. 3,pp.
man - the algorithm successfully segments the first three texture 195-203.
pairs, but fails to do so for the ‘S-IO’ texture pair. 171 Daugman, J.G. (1980). “Two-dimensional Spectral Analysis of
The lack of appropriate quantitative measures of the goodness Cortical Receptive Field Profiles,” Vision Research, vol. 20, pp.
of a segmentation makes it very difficult to evaluate and compare 847-856.
texture segmentation algorithms. One simple criterion that is of- [SI Daugman, J.G. (1985). “Uncertainty Relation for Resolution in
ten used is the percentage of misclassified pixels. Table 1 gives Space, Spatial-Frequency, and Orientation Optimized by TWO-
dimensional Visual Cortical Filters,’’ J. OSA, vol. 2, no. 7, pp.
the percentage of misclassified pixels for the segmentation ex-
1160-1169.
periments reported here. As seen in this table, there is a clear
[9] De Valois, R.L. and De Valois, K.K. (1988). Spatial Vision, Oxford
advantage in using the pixel coordinates (spatial information) as University Press.
additional features. [ 101 De Valois, R.L., Albrecht, D.G., and Thorell, L.G. (1982). “Spatial-
Frequency Selectivity of Cells in Macaque Visual Cortex,” Vision
6 Summary and Conclusions Research, vol. 22, pp. 545-559.
(1 1 1 Haralick, R.M. (1979). “Statistical and Structural Approaches to
We have presented an unsupervised texture segmentation algo- Texture,” Proc. IEEE, vol. 67, no. 5, pp. 786-804.
[ 121 Jain, A.K. and Dubes, R.C. (1988). Algorithms for Clustering Data,
rithm that uses a fixed set of Gabor filters. Our choice of Gabor
Prentice-Hall, New Jersey.
filters and their parameters were motivated by a goal to construct
[13] Julesz, B. and Bergen, J.R. (1983). “Textons, The fundamental
an approximate basis for a wavelet transform. The use of a non-
Elements in Preattentive Vision and Perception of Textures,” Bell
linear transformation following the linear filtering operations has
Syst. Tech. J . , vol. 62, no. 6, pp. 1619-1645.
been suggested as one way to account for inherently nonlinear 1141 Julesz, B., Gilbert, E.N., Shepp, L.A., and Frisch, H.L. (1973).
nature of biological visual systems [9]. We argued that the lo- “Inability of Humans to Discriminate Between Visual Textures That
calized filtering by our Gabor filter set followed by a nonlinear Agree in Second-Order Statistics - Revisited,” Perception, vol. 2,
transformation can be interpreted as a multi-scale blob detection pp. 391-405.
operation. [I51 Laws, K.1. (1980), Textured Image Segmentation, Tech. Rep.
One of the limitations of our texture segmentation algorithm USCIPI-940, Image Process. Inst. Univ. of Southem Califomia.
is the lack of a criterion for choosing the value of a in the non- [ 161 Malik, J. and Perona, P. (1 9%), “Preattentive Texture Discrimina-
linear transformation. Also, the algorithm assumes that different tion with Early Vision Mechanisms,” J. OSA: A , vol. 7, no. 5, pp.
channels are independent from each other. However, there is psy- 923-932.
chophysical and physiological evidence indicating inhibitory inter- [ 171 Mallat, S.G. (1989). “Multifrequency Channel Decomposition of
actions between different spatial frequency channels [9]. Allowing Images and Wavelet Models,’’ IEEE Trans. ASSP, vol. 37, no. 12,
inhibitory interactions among the channels is shown to have the pp. 2091-2110.
potential to reduce the effective dimensionality of the feature space [ 181 Marcelja, S. (1980), “Mathematical Description of the Responses
of Simple Cortical Cells,” J. OSA, vol. 70, pp. 1297-1300.
131.
In our texture segmentation algorithm, we assumed that the [19] Perry, A. and Lowe, D.G. (1989), “Segmentation of Textured Im-
ages,” Proc. CVPR, pp. 326-332.
number of texture categories is given. The pattem clustering tech-
nique that is used by our segmentation algorithm will produce 1201 Pollen, D.A. and Ronner, S.F. (1983), “Visual Cortical Neurons as
a clustering with the desired number of clusters, even if it does Localized Spatial Frequency Filters,” IEEE Trans. SMC, vol. 13,
not make “sense”. We believe that an integrated approach that no. 5, pp. 907-916.
I21 1 Tumer, M.R. (1986), “Texture Discrimination by Gabor Functions,”
uses both a region-based and an edge-based segmentation can be
Biol. Cybern., vol. 55, pp. 71-82.
used to resolve the question of determining the number of texture [221 Van Gool, L., Dewaele, P., and Oosterlinck, A. (1985), “Texture
categories. Mal& 8~ Perona [16], for example, have developed Analysis Anno 1983,” CVGIP, vol. 29, pp. 336-357.
a multi-channel filtering technique that produces edge-based seg- [231 Voorhees, H. and Poggio, T. (1988). “Computing Texture Bound-
mentations. The basic idea is to generate an oversegmented solu- aries from Images,” Nature. vol. 333, no. 6171, pp. 364-367.
19