Segmentation of Monochrome and Color Textures Using ... - CiteSeerX

Report 4 Downloads 57 Views
Segmentation of Monochrome and Color Textures Using Moving Average Modeling Approach Kie B. Eom Department of Electrical Engineering and Computer Science, The George Washington University, Washington, DC 20052, E-mail: [email protected].

Abstract The segmentation of textures using features extracted with 2-D moving average (MA) modeling approach is presented in this paper. The 2-D MA model represents a texture as an output of a 2-D nite impulse response (FIR) lter with simple input process. The 2-D MA model is exible, and can be used for modeling both isotropic and anisotropic textures. The maximum-likelihood (ML) estimators of the 2-D MA model are used as texture features. Supervised and unsupervised texture segmentation is considered. A neural network is used for supervised segmentation, and a fuzzy clustering algorithm is used for unsupervised segmentation. The texture features extracted by 2-D MA modeling approach from sliding windows are classi ed with a neural network for supervised segmentation, and are clustered by a fuzzy clustering algorithm for unsupervised texture segmentation. The performance of the segmentation algorithms using MA model features are demonstrated in the experiment with both synthetic and natural images. Keywords: Texture segmentation, image models, neural network, fuzzy clustering.

1 Introduction Segmentation of an image into meaningful regions is an important step in computer vision algorithms. The segmentation is done by testing the homogeneousness of the region in terms of color, texture property, brightness, etc., and texture features often gives more meaningful segmentation results than other features. Texture features are determined by the spatial relations between neighboring pixels. Many approaches in extracting texture features are suggested [7]-[32]. For example, features based on statistical image models [7], Markov random eld models [13,15,19,28], wavelet transform [10,22], extended self-similar model [31], Preprint submitted to Image and Vision Computing

24 June 1998

multichannel lters [11], fractal dimension [12], multi-resolution approach [14,16,25,27], Gabor functions [17], circular Mellin transform [18], gray-level cooccurrence matrix (GLCM) [6], spatial-frequency representation [29], and Wold-like decomposition [30] are suggested for texture segmentation. Many of texture features are based on local characteristics over small neighborhood, and are often not satisfactory for textures with dependency over large distance, such as cloud or crushed quartz textures. The 2-D moving average (MA) modeling approach presented in this paper characterizes a texture over large neighborhood, and textures with long-correlation characteristics are well represented by a 2-D MA model as demonstrated in the experiment. Under the 2-D MA model, an image is modeled as a convolution of a point spread function and a stationary input process. The point spread function is assumed as a linear geometric transform of an isotropic function. The parameters of the 2-D MA model can discriminate di erent types of textures well, and many images resembling natural textures can be synthesized from white Gaussian process [8]. One advantage of the 2-D MA model is that it can model isotropic textures as well as anisotropic textures. The modeling of isotropic textures in a rectangular grid by an image model de ned with small neighborhood is usually dicult. The parameters of the 2-D MA model are estimated by a maximum likelihood method in the frequency domain. Unlike ML estimation in the spatial domain which usually requires costly iterative maximization, the frequency domain estimation is computationally ecient. The transfer function parameters are estimated by solving a linear equation, and the geometric parameters are estimated by maximizing the likelihood function over a nite set of parameter values. The estimated MA model parameters are used as texture features for texture segmentation. The texture segmentation can be supervised or unsupervised. Supervised segmentation assumes that the number and types of textures in the image is known in advance. For some applications, such as terrain map segmentation where terrain types (grass, clearing, manmade regions, water, etc.) and numbers are known in advance, supervised segmentation approach is sucient. For supervised texture segmentation, a neural network classi er is 2

used. A feed-forward neural network is trained with MA model parameters estimated from training textures, and an image is segmented by classifying MA parameters estimated from sliding windows applied to the image. For unsupervised segmentation, fuzzy clustering algorithm is used. In the unsupervised segmentation approach, MA model parameters are estimated from sliding windows applied to the image. Each window may contain more than one type of texture if the window is applied on the boundary between textures, and the clustering approach assuming single membership may not give satisfactory results. Fuzzy clustering allows multiple membership, and it is more suitable for clustering parameters estimated from all windows applied to the image. The segmented result is obtained by labeling clustered result. The segmentation approaches are applied to both synthetic and natural images. Supervised segmentation algorithm is tested with synthetic images created by composing textures selected from Brodatz [5] and Visual Texture [33] database. In this experiment, both monochrome and color textures are used. The segmentation algorithms using 2-D MA modeling approach performed favorably in the comparison with gray-level cooccurrence matrix (GLCM) features. Unsupervised segmentation algorithm is tested with natural images. The performance of the segmentation algorithm is demonstrated with both indoor and outdoor images. This paper is organized as follows. In Section 2, 2-D moving average model is introduced, and ML estimation algorithm is presented. In Section 3, the supervised segmentation based on a neural network is discussed. In Section 4, the unsupervised algorithm based on a fuzzy clustering algorithm is presented. In Section 5, experimental results with synthetic and natural images is presented. In Section 6, the result is summarized.

2 2-D Moving Average Model In the 2-D MA modeling approach, a texture is modeled as a circular convolution of a point spread function with a simple input process. The input process is assumed as either a white 3

Input Process

Two-Dimensional MA Model

MA Parameters

Texture Output

Geometric Parameters

Fig. 1. MA modeling of a texture. An image is modeled as the output of a MA lter speci ed by MA parameters and geometric parameters. The input process is assumed as a sum of white Gaussian and structured processes.

Gaussian process for stochastic textures or a summation of white Gaussian process and a deterministic trend function for structured textures. The point spread function is modeled as a linear geometric transform of an isotropic function. The 2-D MA model is illustrated by the block diagram shown in Figure 1. The 2-D MA model described in Figure 1 can be represented in the spatial domain as follows. Let fy(s) j s 2 g, where = fs = (s1; s2) 2 Z  Z j 0  s1; s2  N ? 1g be an image of size N  N following a 2-D MA model. Then y(s) is represented by the following convolution equation:

y(s) =

X

r2Kg

g(r)w(s r) = g(s)  w(s);

(1)

where g(s) is a point spread function, s; r 2 Z  Z, Kg is a nite index set where g(s) is de ned, is a modulo ? (N; N ) subtraction,  is a 2-D circular convolution on N  N lattice, and w(s) is a 2-D stationary random process. The 2-D MA model can also be represented in the frequency domain. Let us de ne the 2-D 4

discrete Fourier transform (DFT) and inverse discrete Fourier transform (IDFT) pair as !

T X Y (u) = N1 y(s) exp ?j 2Ns u ; s2

T u! X 1 j 2 s ; y(s) = N Y (u) exp N u2

(2)

where = fs = (s1; s2 ) 2 Z  Z j 0  s1; s2  N ? 1g. With the circular closure (torus) assumption at the boundary, (1) is represented in the frequency domain by applying DFT to both sides of (1).

Y (u) = NG(u)W (u);

(3)

where Y (u), G(u) and W (u) are DFT's of y(s), g(s) and w(s), respectively. Without any restriction on the transfer function G(u), the MA model depends on large number of parameters, and the accuracy of estimators will not be satisfactory since there are not enough samples for parameter estimation. Therefore, the transfer function G(u) needs to be parameterized with small set of parameters. Let us rst consider the special case where G(u) is an isotropic function, then the restriction will be relaxed to anisotropic cases later. Under the isotropic assumption, the transfer function G(u) depends only on the Eucledian norm of u. i.e.,

G(u) = G(v); if kuk = kvk; u; v 2

(4)

Since the transfer function is isotropic, the image it represents is also isotropic. Therefore, the MA model with isotropic transfer function represents textures possessing circular symmetry well, and di erent isotropic textures are discriminated well by estimated parameters. However, the modeling anisotropic textures having elongated patterns such as wood grain textures by isotropic model is often not satisfactory. For modeling anisotropic textures having directional and elongated patterns, the transfer function G(u) should also be directional and elongated. For representing such transfer functions with small set of parameters, the transfer function G(u) is assumed to be obtained by a linear geometric transform of an isotropic function. Then G(u) is related to a one-dimensional 5

function H () by 2

NG(u) = H (kAuk); where A = 64

3

cos  ? sin  7 5 sin  cos 

(5)

and kk is the Eucledian norm. The geometric transform parameters and  are elongation and orientation parameters, respectively. For isotropic textures, the elongation parameter is unity. Thus (3) can be rewritten as

Y (u) = H (kAuk)W (u):

(6)

Assume that the input process w(s) in (1) is a white Gaussian process with zero mean and unit variance. Then by the Theorem 4.4.1 of Brillinger [2], DFT of the input process w(s), W (u) in (6), is a white complex Gaussian process with zero mean and covariance 21 I, where I is a 2  2 identity matrix. A complex Gaussian process is de ned as a vector process with real and imaginary Gaussian components, and detailed discussions on the complex Gaussian process and the DFT of random processes can be found in [2]. Therefore, the DFT Y (u) of the 2-D MA process y(s) is a white complex Gaussian random k)j2 I, where A is the geometric transform process with zero mean and covariance jH (kAu 2 matrix de ned in (5), I is the 2  2 identity matrix and j  j is the magnitude operator. The complex random process Y (u) can be represented by two real random processes, its magnitude jY (u)j and phase Y (u) . i.e., Y (u) = jY (u)j exp(j Y (u)). Since Y (u) is a zero mean complex Gaussian process, the magnitude and phase of anisotropic MA process Y (u), jY (u!)j k)j2 and Y (u) , are independent and white random processes following Rayleigh jH (kAu 2 and Uniform (0; 2) probability densities, respectively. The estimated parameters of 2-D MA model can be used as features for texture segmentation, and they can discriminate isotropic and anisotropic textures. Since the 2-D MA model depends on the transfer function H () and geometric transform parameters and , we need to estimate and  as well as H (). The model parameters are estimated by a maximum likelihood (ML) approach. By the results on the probability density of Y (u), the likelihood function of a random eld following a 2-D MA model can be derived. The ML estimators 6

are obtained as the arguments maximizing the likelihood function. The ML estimators of the 2-D MA model and their properties are summarized in the following. De ne i = jH (i)j2 and H = fi j i = 1;    ; ng, where fi g = fkAuk j u 2 g and n is the cardinality of fig. Let Y = fY (u); u 2 g. As shown earlier, fY (u)g are independent k)j2 I. complex Gaussian random variables with zero mean and covariance matrix jH (kAu 2 Therefore, the conditional probability density of Y given H,  and becomes

p(YjH; ; ) =

Y

p(Y (u)jH; ; ) 2 ! j Y ( u ) j 1 = jH (kAuk)j2 exp ? jH (kAuk)j2 : u2

u2

Y

(7)

By de ning i = fu 2 j kAuk = ig and by de ning Ni as the number of elements in i , the likelihood function of H,  and in (7) can be rewritten as n Y 1 2! Y j Y ( u ) j : (8) exp ?  p(YjH; ; ) = i i=1 u2 i i

For given orientation and elongation parameters , and , the parameters H are estimated by a ML method. The log-likelihood function of H,  and is obtained as log p(YjH; ; ) = ?N 2 [log()] ?

n X i=1

2

N



4 i log( i ) +

X

u2 i

3

jY (u)j2 5 ; i

(9)

where i = fu 2 j kAuk = ig and Ni is the cardinality of i as de ned earlier. By maximizing the log-likelihood function (9) with respect to i, the ML estimator of i given in (10) is obtained. The estimation is done in two stages. In the rst stage, the parameters i are estimated assuming that the geometric parameters and  are known. Then the geometric parameters and  are estimated by maximizing the likelihood function J ( ; ). The ML estimator of i when the orientation and elongation parameters are known is obtained as X jY (u)j2; (10) ^i = N1 i u2 i where i and Ni are de ned in (8). It can be easily shown that the ML estimators f^ig are unbiased and consistent. The accuracy of an estimator can be measured by comparing its 7

mean square error with the Cramer-Rao lower bound. The Cramer-Rao lower bound is given in the following relation.

MSE [^i ]  i2=Ni:

(11)

Since the ML estimator is ecient, the mean square error of the ML estimator given in (10) asymptotically approaches to the Cramer-Rao lower bound given in (11). The elongation and the orientation of a texture can be represented by a set of discrete values. For example, eight di erent orientations are sucient for many applications, and the orientation parameter  can be discretized to the nite set  = f k 8 ; k = 0;    ; 7g. Similarly, eight di erent elongated values are sucient for many applications, and the elongation parameter can be discretized to the nite set A = f1; 2;    ; 8g. We need to consider only for  1 since values lower than 1 can be achieved by rotation. Thus, the parameters and  can be estimated by maximizing the log-likelihood function J ( ; ) over the set   A. The log-likelihood function of  and , J (; ), is derived from (8) by a similar approach used in [3].

J (; ) = ?

n  X i=1

 1 1 (Ni ? 1) log(^i) + 2 log(Ni) + Ni(log() + 1) ? 2 log(2)

(12)

From the above results, we get the following estimation algorithm for transfer function parameters fig, orientation parameter  and the elongation parameter . ML Estimation Algorithm:

(i) Apply the DFT to the image and obtain Y (u). (ii) For each  2  and 2 A, estimate parameters i; i = 1;    ; n by (10). For the computational convenience, kAuk = i are quantized into integer values. (iii) Using the estimated transfer function, compute the likelihood function J (; ) in (12) for each  2  and 2 A. The ML estimators ^ and ^ are obtained as the argument maximizing J (; ) with respect to  2  and 2 A. The exibility of a model can be measured by synthesizing diverse textures resembling real 8

textures. Further, the validity of the parameter estimation algorithm can be demonstrated by synthesizing textures using the estimated parameters from the real texture. The 2-D MA model presented in this section is exible, and various textures resembling real textures such as grass, sand, cork, wood grain, fabrics, etc. can be synthesized using small number of parameters. When the parameters estimated from the real textures are used, the synthesized images using (6) in the frequency domain are similar to the original textures. Many stochastic textures having no structural trend can be synthesized from white Gaussian noise. Figures 2 and 3 show examples of texture synthesis using 2-D MA models. Figure 2 shows original textures selected from Brodatz's texture album [5]. They are from the left upper corner, expanded mica (D05), beach sand (D29), wood grain (D68), clouds (D90), pigskin (D92), crushed rose quartz (D98), pressed cork (D04), grass lawn (D09), pressed calf leather (D24), raa woven with cotton threads (D51), handmade paper (D57), ceiling tile (D86), reptile skin (D03), herringbone weave (D17), cotton canvas (D77), and raa looped to a high pile (D84). Figure 2 contains both stochastic and structured textures, and the orientation and elongation of patterns in textures are di erent in di erent textures. Figure 3 shows the synthesized textures using estimated parameters from the original textures in Figure 2. For the synthesis of statistical textures in the top three rows of Figure 3, white Gaussian input process is used. However, the synthesis of structured textures, such as brick wall, raa mat, herringbone weave, etc., requires structured input process. The structured textures in the last row of Figure 3 are synthesized by the 2-D MA model with structured input process superposed to the white input process. The detailed synthesis algorithm can be found in [8]. It can be observed that the textures synthesized using 2-D MA modeling approach with estimated parameters are similar to the original textures. It can be observed in Figure 3 that 2-D MA models can represent various natural textures. It also suggests that the estimated parameters of 2-D MA model have enough information to discriminate di erent textures, and therefore can be used as features for texture classi cation and segmentation. A feature vector x = [x1 ;    ; xp]T can be formed from estimated parameters f^ig, ^ and ^. The feature vector x is used for the classi cation and segmentation 9

Fig. 2. Original textures used in the synthesis experiment: They are from the left upper corner, expanded mica (D05), beach sand (D29), wood grain (D68), clouds (D90), pigskin (D92), crushed rose quartz (D98), pressed cork (D04), grass lawn (D09), pressed calf leather (D24), raa woven with cotton threads (D51), handmade paper (D57), ceiling tile (D86), reptile skin (D03), herringbone weave (D17), cotton canvas (D77), and raa looped to a high pile (D84).

10

Fig. 3. Synthesized textures by MA modeling approach using estimated parameters from real textures shown in Figure 2: The textures in the rst three rows are synthesized with white Gaussian noise input, and the textures in the last row are synthesized with structured input process superposed to the white Gaussian noise. The synthesized images are similar to the original images shown in Figure 2.

11

of textures.

3 Supervised Segmentation Using Neural Network A neural network classi er can be used for classifying textures with features obtained from 2-D MA modeling approach. Let x = [x1 ;    ; xp]T be the feature vector representing p estimated parameters of 2-D MA model. The p-dimensional feature vector is fed into a neural network to classify into C classes. Figure 4 shows a fully connected feed-forward neural network with one hidden layer having 2p + 1 neurons and an output layer having C neurons. More detailed discussion on arti cial neural networks can be found in many sources, for example [36]. p

2p+1

C

X1 O1 X2 O2 .

.

.

. .

Xp

.

.

.

.

. Oc

Input Layer

Hidden Layer

Output Layer

Fig. 4. Fully-connected arti cial neural network with one hidden layer: There are p neurons in the input layer, 2p+1 neurons in the hidden layer, and C neurons in the output layer

The neural network needs be trained before classifying unknown samples, and the training can be done by the back-propagation algorithm [36]. After the neural network is trained, an unknown texture can be classi ed by the neural network classi er. An image is segmented into homogeneous texture regions by using a neural network trained with features extracted from training textures. In this supervised classi cation approach, the number and types of 12

textures are assumed to be known in advance. The neural network is trained with features extracted from C sets of training textures, each set contains textures of same type. Then the image to be segmented is divided into small windows, where overlapping windows may be used. For example, a N  N image can be covered by 16  16 windows where the distance between adjoining windows is 4 pixels. For each window, the MA parameters are estimated by the algorithm given in Section 2, and are classi ed by the neural network trained with training textures. The segmented image is obtained by relabeling the classi ed result.

4 Unsupervised Segmentation by Fuzzy Clustering The segmentation of an image by its texture property without prior knowledge on the number or types of textures is often required. The unsupervised segmentation can be done by a clustering algorithm. Traditionally, clustering of a set of features into C classes is considered as a partition of the feature set into C subsets, and each sample is assumed to belong to exactly one of C subsets. In such hard-clustering approaches, the membership function has a binary value. For example, k-means, or Isodata algorithms are hard-clustering algorithms. For texture segmentation using a clustering algorithm, an image is divided into small windows (say 16  16). The texture features of each window are extracted, and the features from all windows are clustered to segment the image. In hard-clustering approaches, each window is assumed to contain only one type of texture. However, windows covering regions of texture boundary may contain more than one type of texture, and the segmentation result obtained by a hard-clustering algorithm may not be satisfactory. There have been extensive studies in fuzzy clustering [34]-[39]. In fuzzy clustering approaches, each feature vector x = [x1 ;    ; xp]T can belong to more than one class. The membership function wj (x) for fuzzy clustering can have real values between 0 and 1 depending on the 13

possibility of the sample x belong to the class j, and satis es C X j =1

wj (x) = 1;

(13)

for all x in the feature space. A fuzzy clustering is de ned as an optimization problem which minimizes a cost function, typically the weighted within-cluster squared error, J (w; v), de ned by

J (w; v) =

N X C X i=1 j =1

wij d(xi; vj );  1;

(14)

where w = fwi;j g is the set of memberships, v = fvj g is the set of cluster centers, N is the total number of feature vectors, d(xi; vj ) is the distance between vj and the feature vector xi, and is the smoothing parameter which controls the fuzziness of the clusters. For = 1, the clustering becomes hard partitions with wij = 0 or 1. As increases, the partitions become more fuzzy. An iterative fuzzy clustering algorithm is obtained by minimizing the fuzzy cost function in (14). It is shown [38] that a fuzzy clustering algorithm obtained with convex distance function d() in (14) converges to an optimal solution. Let us de ne the following distance function with fuzzy covariance matrix Fj .

d(xi; vj ) = (xi ? vj )T Fj?1(xi ? vj );

(15)

where v is the fuzzy mean and Fj is the fuzzy covariance matrix of the cluster j , respectively. The fuzzy mean vj and fuzzy covariance Fj are de ned as j

N P

vj =

wij xi

i=1 N P

i=1 N P

Fj =

i=1

wij

; and

wij (xi ? vj )(xi ? vj )T N P i=1

wij

(16)

;

(17)

where the smoothing parameter > 1. 14

By minimizing the fuzzy cost function J (w; v) in (14) with respect to wij and vj under the constraint (13), we obtain the following results. 1 ; > 1; (18) wij = ! C d(xi ; vj ) 1=( ?1) P l=1 d(xi ; vl ) where vj is the fuzzy mean de ned in (16). The fuzzy clustering algorithm is summarized in the following. Fuzzy Clustering Algorithm

(i) For given cluster number C , select initial cluster centers v(0) = fv1(0); v2(0);    ; vC (0)g and fuzzy covariances F (0) = fF1(0); F2(0);    ; FC (0)g. (ii) At each iteration n, compute d(xi; vj (n)) using (19).

d(xi; vj (n)) = (xi ? vj (n))T Fj?1(n)(xi ? vj (n)); for 1  i  N; 1  j  C: (19) (iii) Update memberships wij (n) by 1 ; > 1: (20) wij (n) = ! C d(xi ; vj (n)) 1=( ?1) P l=1 d(xi ; vl (n)) (iv) Update fuzzy mean vj (n) for 1  j  C using updated memberships at each iteration n. N P

vj (n) =

wij (n)xi

i=1 N P

i=1

wij (n)

:

(21)

(v) Update fuzzy covariance matrix Fj (n) for each iteration n. N P

Fj (n) = i=1

wij (n)(xi ? vj (n))(xi ? vj (n))T N P i=1

wij (n)

;

(22)

(vi) Compute the cost function J (w(n); v(n)).

J (w(n); v(n)) =

N X C X i=1 j =1

wij (n)d(xi; vj (n));  1; 15

(23)

where w(n) = fwi;j (n)g is the set of memberships, v(n) = fvj (n)g is the set of cluster centers, d(xi; vj (n)) is the distance between vj (n) and the feature vector xi, and is the smoothing parameter which controls the fuzziness of the clusters. (vii) Repeat steps (ii) - (vi) until the decrease of cost function value is less than a prede ned constant . An image containing multiple texture regions can be segmented by clustering features obtained by MA modeling. An image is divided into small windows, then MA model parameters are estimated from each window. In this stage, overlapping windows may be applied to enhance the resolution of segmented image. For example, 16  16 windows may be applied, and adjoining windows may be obtained by shifting the current window four pixels. Fuzzy clustering algorithm is applied to the features estimated from all windows, and the image is segmented by labeling pixels according to clustered result. The number of clusters can be found by evaluating a validity function at di erent number of clusters. Many validation functions are suggested for fuzzy clustering [39,37,34]. For example, partition coecient (P wij2 ) classi cation entropy (? P wij log wij ), proportion exi;j i;j ponent (max wij ), min-max ratio (min wij = max wij ), and uniform data functional (UDF) (P (mini wij = maxi wij )=n) are suggested as cluster validation measures in fuzzy c-mean alj gorithms. A cluster validity measure based on fuzzy set decomposition is suggested [37], and is used for ranking di erent clustering algorithms. The compactness and separation validity function [34] is de ned as the ratio of compactness to the separation. In this paper, we used the partition density, PD (C ), suggested in [35] to determine the number of clusters. The partition density is de ned as P

PD (C ) =

i;j C P

wij

jFj j1=2 j =1

:

(24)

To determine the number of clusters, the partition density measure given in (24) is computed for number of clusters C = 1; 2;   . The partition number C is obtained as the argument which maximizes the partition density PD (C ). 16

5 Experimental Results The texture segmentation can be done with estimated MA model parameters by using neural network classi er or fuzzy clustering. If the number and types of textures in the image is known in advance, the image is segmented by the neural network classi er trained with estimated MA parameters from training textures. If the number and types of textures are unknown, then the image can be segmented by clustering estimated MA model parameters. The number of clusters are determined by maximizing the partition density function. To show the validity of MA modeling approach in texture segmentation, both synthetic and natural images are used in the experiment. In the experiment with synthetic textures, the MA modeling result is compared with the result obtained with GLCM features. Synthetic images are used to test supervised segmentation approach, and the natural images are used to test unsupervised segmentation approach. Synthetic images containing ve di erent textures are generated by composing textures selected from Brodatz [5] texture album and Visual Texture [33] database. Natural textures are selected from images widely used in vision research. Figure 5 shows the synthetic image (top left) and the segmented results obtained using MA model features (top right) and GLCM features (bottom right). The synthetic image on the left of Figure 5 is obtained by composing ve textures, namely, cotton canvas (D77), straw matting (D55), herringbone weave (D17), raa looped to a high pile (D84), and pressed calf leather (D24, center), clockwise from the left-upper corner. A three-layer neural network with 10 input nodes, 21 hidden nodes, and 5 output nodes is used for obtaining segmented results. For each class, 64 16  16 training texture windows are created by dividing a 128  128 image containing a single texture. For each training window, MA model features and GLCM features are computed. MA model features are obtained from estimated model parameters. From each window, a 10-dimensional feature vector is obtained by augmenting estimates of eight low-order transfer function parameters ^i and two geometric transform parameters ^ and ^. GLCM features are also computed from GLCM in four directions upto the distance of two pixels. Using the both features extracted from all training windows, two neural networks (for MA model and GLCM features) are separately trained using the 17

back-propagation algorithm. To segment the test image shown in Figure 5, a 1616 sliding window is applied for each pixel, and features are extracted using both MA model and GLCM methods. The extracted features are classi ed into one of ve classes by the neural network trained with training samples. Two segmented images are obtained by coloring each pixel by the classi ed results, and are shown in the right side of Figure 5. The results obtained with MA model approach (top right) and GLCM features (bottom right) show ve regions corresponding to ve di erent textures. The performance of both methods are similar in this experiment. Figure 6 shows the segmented results with another test image containing ve textures. The synthetic image on the left of Figure 6 is obtained by composing ve textures, namely, reptile skin (D03), pressed cork (D04), wood grain (D68), crushed rose quartz (D98), and beach sand (D29, center), clockwise from the left-upper corner. As in the experiment to obtain result in Figure 5, a three-layer neural network is created and trained with features extracted from test windows from ve 128  128 textures. Each pixel is classi ed into one of ve classes by the neural network with features extracted from the 16  16 window with the pixel at the center. The segmented images are shown in the right side of Figure 6. The segmented image obtained with MA model features are shown in the top right, and the result obtained with GLCM features are shown in the bottom right. The segmented image obtained with MA model features is better, and it suggests that the MA modeling approach is better with textures with long-distance dependencies. Of course, the GLCM result can be improved by allowing more features in GLCM method, but the size of feature vector also increases. The supervised segmentation algorithm is also tested with synthetic color images. Figures 7 shows the synthetic image containing ve color texture regions on the left and the segmented result on the right. The synthetic image in Figure 7 is created by composing ve textures selected from Visual Texture [33] database. They are Fabric0, Fabric9, Food6, Grass2, and WheresWaldo1 (center), clockwise from the left-upper corner. To segment color texture, parameter vectors from three color components (red, green and blue) are augmented to form a feature vector with 30 elements. The reduction of feature space can be done by principal 18

axis analysis (PCA), but PCA algorithm is not applied in this experiment. A three-layer neural network with 30 input nodes, 61 hidden nodes, and 5 output nodes is created. For the training of the neural network, training windows are generated by dividing ve training textures into non-overlapping 16  16 windows. For each of red, green and blue channel of training window, MA parameters are estimated by the ML estimation algorithm. Using the estimated parameters from three color channels, the neural network is trained. To segment an image, a 16  16 sliding window is applied to the test image, and parameters are estimated. The estimated parameters are classi ed by the neural network classi er. The sliding window is shifted to the next region. The nal segmented image is shown in the right side of Figure 7. The same procedure is applied to another synthetic color image and the result is shown in Figure 8. The synthetic image in Figure 8 is created by composing ve textures selected from Visual Texture [33] database. They are Fabric2, Fabric10, Fabric15, Fabric13, and Bark10 (center), clockwise from the left-upper corner. The segmented result in Figure 8 shows ve regions corresponding to ve textures. Real images are also used for testing unsupervised segmentation algorithm using MA model features. Figure 9 shows the segmentation results with Lena image. 16  16 sliding windows are applied to the original image, and MA model parameters are estimated from each window. Since the number and types of texture regions are unknown, fuzzy clustering algorithm is applied to the estimated parameters, and ve clusters are obtained. The segmented image is obtained by labeling ve classes in di erent colors. The segmented result show that homogeneous texture regions are correctly colored by the same color. For example, homogeneous regions in the hair, background, and the hat are colored by the same color. The segmentation algorithm is also applied to outdoor scene. Figure 9 shows the segmentation results with Goldhill image. The fuzzy clustering algorithm is applied to the features obtained from 1616 sliding windows applied to the original image, and the segmented image is obtained. The segmented regions represents homogeneous texture regions. For example, texture regions in the eld, roofs, building walls, and the street are well segmented. 19

6 Conclusions In this paper, a texture segmentation approach using MA model features is presented. The ecacy of the MA model in modeling real textures is demonstrated by synthesizing images resembling natural textures. For supervised segmentation, a neural network trained with estimated model parameters from training textures, and fuzzy clustering algorithm is used for unsupervised segmentation. The performance of the MA model-based segmentation approaches is demonstrated with both synthetic and natural images. In the comparison with GLCM features, the MA model features perform better when the textures have longer correlations. However, for structured textures or textures with short-term dependency, the other conventional approaches, such as GLCM approach, may have advantages over the MA modeling approach in terms of simplicity.

References [1] G.E.P. Box, G.M. Jenkins, and G.C. Reinsel, Time Series Analysis: Forecasting and Control, Third Edition, Prentice Hall, 1994. [2] D.R. Brillinger, Time series, Data Analysis and Theory, Expanded Edition, Holden Day, 1981. [3] R.L. Kashyap and K.B. Eom, \A consistent estimation of parameters in the long-memory time series model," Journal of Time Series Analysis, vol. 9, no. 1, pp. 35-41, 1988. [4] R.L. Kashyap and K.B. Eom, \Robust Image Modeling Techniques with an Image Restoration Application," IEEE Trans. on Acoustics, Speech, and Signal Processing, vol. 36, no. 6, pp.13131325, 1988. [5] P. Brodatz, Textures: A Photographic Album for Artist and Designers, Dover Publication, New York, 1966 [6] R.M. Haralick and L.G. Shapiro, Computer and Robot Vision, Vol. 1, Addison Wesley, 1992. [7] R.L. Kashyap and K. B. Eom, \Texture boundary detection based on long-correlation model," IEEE Trans. on Pattern Anal. and Machine Intell., vol. 11, no. 1, pp. 58-67, 1989. [8] K. B. Eom \2-D Moving Average Models for Texture Synthesis and Analysis," Accepted for the publication in IEEE Trans. on Image Processing, 1998. [9] A. Khotanzad and J.-Y. Chen, \Unsupervised segmentation of textured images by edge detection in multidimensional features," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 11, no. 4, 1989, 414-421.

20

[10] A. Laine and J. Fan, \Texture classi cation by wavelet packet signatures," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 15, no. 11, 1993, 1186-1191. [11] A.C. Bovik, \Analysis of multichannel narrow-band lters for image texture segmentation," IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 39, 1991, 2025-2043. [12] B.B. Chaudhuri and N. Sarkar, \Texture segmentation using fractal dimension," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 17, no. 1, 1995, 72-77. [13] B.S. Manjunath and R. Chellappa, \Unsupervised texture segmentation using Markov random elds models," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 13, no. 5, 1991, 478-482. [14] C. Bouman and B. Liu, \Multiple resolution segmentation of textured images," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 13, no. 2, 1991, 99-113. [15] C. Kervrann and F. Heitz, \A Markov random eld model based approach to unsupervised texture segmentation using local and global spatial statistics," IEEE Transactions on Image Processing, vol. 4, no. 6, 1995, 856-862. [16] C.A. Sher and A. Rosenfeld, \Detecting and extracting compact textured regions using pyramids," Image and Vision Computing, vol. 7, no. 2, 1989, 129-134. [17] D. Dunn, W.E. Higgins, and J. Wakeley, \Texture segmentation using 2-D Gabor elementary functions," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 16, no. 2, 1994, 130-149. [18] G. Ravichandran and M.M. Trivedi, \Circular-Mellin features for texture segmentation," IEEE Transactions on Image Processing, vol. 4, no. 12, 1995, 1629-1640. [19] H. Derin and H. Elliott, \Modeling and segmentation of noisy and textured images using Gibbs random elds," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 9, no. 1, 1987, 39-55. [20] I.M. Elfadel and R.W. Picard, \Gibbs random elds, cooccurrences, and texture modeling," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 16, no. 1, 1994, 24-37. [21] J. Zhang and J.W. Modestino, \A model- tting approach to cluster validation with application to stochastic model-based image segmentation," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 12, no. 10, 1990, 1009-1017. [22] J.L. Chen and A. Kundu, \Rotation and gray scale transform invariant texture identi cation using wavelet decomposition and hidden Markov model," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 16, no. 2, 1994, 208-214. [23] M. Unser, \Texture classi cation and segmentation using wavelet frames," IEEE Transactions on Image Processing, vol. 4, no. 11, 1995, 1549-1560. [24] M.R. Luettgen and A.S. Willsky, \Likelihood calculation for a class of multiscale stochastic models, with application to texture discrimination," IEEE Transactions on Image Processing, vol. 4, no. 2, 1995, 194-207.

21

[25] N. Ahuja, \A transform for multiscale image segmentation by integrated edge and region detection," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 18, no. 12, 1996, 1211-1235. [26] P. Miller and S. Astley, \Classi cation of breast tissue by texture analysis," Image and Vision Computing, vol. 10, no. 5, 1992, 277-282. [27] R. Muzzolini, Y.H. Yang, and R. Pierson, \Multiresolution texture segmentation with application to diagnostic ultrasound images," IEEE Transactions on Medical Imaging, vol. 12, no. 1, 1993, 108-123. [28] S. Krishnamachari and R. Chellappa, \Multiresolution gauss-Markov random eld models for texture segmentation," IEEE Transactions of Image Processing, vol. 6, no. 2, 1997, 251-267. [29] T.R. Reed and H. Wechsler, \Segmentation of textured images and gestalt organization using spatial/spatial-frequency representations," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 12, no. 1, 1990, 1-12. [30] J.M. Francos, A.Z. Meiri, and B. Porat, \A uni ed texture model based on a 2-D Wold-like decomposition," IEEE Trans. on Signal Processing, vol. 41, no. 8, pp. 2665-2677, 1993. [31] L.M. Kaplan and C.C.J. Kuo, \Texture roughness analysis and synthesis via extended selfsimilar (ESS) model," IEEE Trans. on Pattern Anal. and Machine Intell., vol. 17, pp. 10431056, 1995. [32] J. K. Tugnait, \Estimation of linear parametric models of non-Gaussian discrete random elds with application to texture synthesis," IEEE Trans. on Image Processing, vol. 3, pp. 109-127, 1994. [33] MIT Media Laboratory, Vision Texture. Digital data available from http://www-white.media.mit.edu/vismod/imagery/VisionTexture/. [34] X. Xie and G. Beni, \A validity measure for fuzzy clustering," IEEE Trans. on Pattern Analysis and Machine Intell., vol. 13, no. 8, pp. 841-847, 1991. [35] A. Gath and A. B. Geva, \Unsupervised optimal fuzzy clustering," IEEE Trans. on Pattern Analysis and Machine Intell., vol. 13, no. 8, pp. 841-847, 1991. [36] S. Haykin, Neural Networks, IEEE Press, 1994. [37] E. Backer and A. K. Jain, \A cluster performance measure based on fuzzy set decomposition," IEEE Trans. on Pattern Analysis and Machine Intell., vol. 3, no. 4, pp. 66-75, 1981. [38] M. J. Sabin, \Convergence and consistency of fuzzy c-means/ISODATA algorithms," IEEE Trans. on Pattern Analysis and Machine Intell., vol. 9, no. 5, pp. 661-668, 1987. [39] M. P. Windham, \Cluster validity for the fuzzy c-means clustering algorithm," IEEE Trans. on Pattern Analysis and Machine Intell., vol. 4, no. 4, pp. 357-363, 1982.

22

Fig. 5. A synthetic image (left) containing ve texture regions, and the segmented results using MA model features (top right) and GLCM features (bottom right), respectively: Five textures in the synthetic image are cotton canvas (D77), straw matting (D55), herringbone weave (D17), raa looped to a high pile (D84), and pressed calf leather (D24, center), clockwise from the left-upper corner.

Fig. 6. A synthetic image (left) containing ve texture regions, and the segmented results using MA model features (top right) and GLCM features (bottom right), respectively: Five textures in the synthetic image are reptile skin (D03), pressed cork (D04), wood grain (D68), crushed rose quartz (D84), and beach sand (D29, center), clockwise from the left-upper corner.

Fig. 7. A synthetic image containing ve color texture regions (left) and the segmented image (right): The textures in the original image are Fabric0, Fabric9, Food6, Grass2, and WheresWaldo1 (center), clockwise from the left-upper corner. The segmented result shows ve regions corresponding to ve textures.

Fig. 8. A synthetic image containing ve color texture regions (left) and the segmented image (right): The textures in the original image are Fabric2, Fabric10, Fabric15, Fabric13, and Bark10 (center), clockwise from the left-upper corner. The segmented result shows ve regions corresponding to ve textures.

Fig. 9. Lena image (left) and the segmented image (right): The segmented result is obtained by applying unsupervised texture segmentation algorithm. Texture regions corresponding to ve texture classes are found.

Fig. 10. Goldhill image (left) and the segmented image (right): The segmented result is obtained by applying unsupervised texture segmentation algorithm. Texture regions corresponding to ve texture classes are found.