Color Texture Classification Using Adaptive Discrete Multiwavelets Transform

The classification of textures images has attracted the attention of many researchers. The multiscale techniques for gray level texture analysis have been intensively studied. In this paper, we aim on extending texture classification of color images by using the multiwavelets transform, a new notion addition to wavelet. The recognition of textures deals with both feature extraction and classification phases. In the classification phase the evolutionary computation techniques (genetic programming) was used for more speed recognition result evaluation. In our experiment results the proposed method has achieved 99.6% test accuracy on an average. In addition, the experimental results also show that classification rules generated by this approach are robust to some noises on textures


INTRODUCTION
exture analysis plays an important role in many image processing tasks, ranging from remote sensing to medical image processing, computer vision applications, and natural scenes.A number of texture analysis methods have been proposed in the past decades (e.g., [1]) but most of them use gray scale images, which represent the amount of visible light at the pixel's position, while ignoring the color information.The performance of such methods can be improved by adding the color information because, besides texture, color is the most important property, especially when dealing with real world images [2].
In this paper, a color texture image classification scheme is proposed which uses multiwavelets transform and ensembles of evolutionary computation technique (genetic programming).Feature extraction in the multiwavelets domain and T PDF created with pdfFactory Pro trial version www.pdffactory.comclassification with ensembles of genetic programming are proposed.Multiwavelets entropies and multiwavelets energies of each color plane at different scales are used for forming the feature vectors.The experimental studies show the efficiency of the proposed system.Moreover, a comparison of the proposed schema with the wavelet energy correlation signatures is conducted.
The organization of this paper is as follows: in Section 2, we summarize the theory for multiwavelets transform and genetic programming; several brief definitions are given in this section; in Section 3, the methodology and the implementation of the proposed process is given; in Section 4, an experimental study is introduced and the classification results are shown; in Section 5, we finally conclude the study.

BACKGROUND
In this section, the theoretical foundations for the expert system used in the present study are given in the following subsections.

DISCRETE MULTIWAVELETS TRANSFORM
As in the scalar wavelet case, the theory of multiwavelets is based on the idea of multiresolution analysis (MRA) [3].The difference is that multiwavelets have several scaling functions.The standard multiresolution has one scaling function Ø(t) [4]. Fig.
(1) Shows the multiwavelets framework for image decomposition.The prefilter is first applied to all the rows of the image, before the first level decomposition is applied to each of the resultant rows.The first half of each row of the decomposition results contains coefficients corresponding to the first scaling function and the second half contains coefficients corresponding to the second scaling function.Then the prefilter and decomposition operations are repeated to the columns, such that the first half of each column contains coefficients corresponding to the first scaling function and the second half of each column corresponding to the second scaling function.At the end of the first of 2-D multiwavelets decomposition, we have a 16-subband intermediate image.
In practice multiscaling and wavelet functions often have multiplicity r=2.An important example was constructed by Geronimo, Hardin and Massopust [4], which we shall refer to as the GHM system.For the GHM multiscaling functions there are two scaling functions ∅ 1 (t), ∅ 2 (t) and the two wavelets w 1 (t), w 2 (t) shown in Fig. 2.There are four remarkable properties of the GHM scaling functions, as follows [4]: • They each have short support (the intervals [0, 1] and [0, 2]).
• Both scaling functions are symmetric, and the wavelets form a symmetric/asymmetric pair.• All integers translates of the scaling functions are orthogonal.
• The system has second order of approximation.
Before the operation of decomposition is applied to the input data, the preprocessing operation must be done.The aim of preprocessing is to associate the given scalar input signal of length N to a sequence of length-2 vectors {v 0 ,k} in order to start the analysis algorithm.Here N is assumed to be a power of 2, and so is of even length.After the wavelet reconstruction (synthesis) step a postfilter is applied.Clearly, prefiltering, wavelet transform, inverse transform, and postfiltering should PDF created with pdfFactory Pro trial version www.pdffactory.comrecover the input signal exactly if nothing else has been done.Fig. (2) illustrate the idea of the multiwavelet transform [5].

GENETIC PROGRAMMING
Genetic programming (GP) is a methodology for obtaining computer programs to solve a particular problem by a process of simulated evolution.An initial population of programs is constructed.Each program is executed on the problem at hand and its success on the task, its fitness, is measured.
A new population of programs is then constructed by selecting the fitter programs as parents and generating children by recombining selected parts of the parents (crossover) and/or making random changes to the parents (mutation).This process continues until the problem is solved or until some preset number of generations has been completed.If the process is working well, the programs will gradually become fitter and fitter through the generations until the problem is solved [6].
GP continues the trend of dealing with the problem of representation in genetic algorithms (GAs) by increasing the complexity of [7]: 1. Structures undergoing adaptation.In GP the individuals in the population are programs, these programs are represented as a tree structure.

2.
Introducing the initial structure for the tree representation.The generation of each individual in the initial population is done by randomly generating a rooted, point-labeled tree with ordered branches representing the string.

4.
The operations that modify the structures.GP has been used in a wide range of applications and have succeeded in solving many problems such as prediction and classification, image and signal processing, optimization, financial trading, robots and autonomous agents, artificial life, and neural networks [8].In tree based GP, programs are represented as tree structures.An example tree and the corresponding code are shown in Fig. (3).The internal nodes are functions and the terminals are inputs to the program.The tree is evaluated in a bottom up fashion and the value of the root node is the output of the program.
In specifying the configuration of a GP run it is necessary to give the functions, the terminals, a method of evaluating fitness and a number of parameters for the evolutionary parameters.These include the population size, the maximum number of generations to compute if a solution is not found, the elitism rate (the percentage of best individuals in the current generation copied without change to the next generation), the crossover rate (percentage of individuals in the new population that are created by crossover) mutation rate (the percentage of individuals in the new population created by mutation) and the maximum permitted tree depth [6].

TEXTURE ANALYSIS
The goal in image analysis is to extract information useful for solving applicationbased problem.This is done by intelligently reducing the amount of image data with the tools have explored [8].Different measures were used for analyzing the image and texture features like entropy and energy.
PDF created with pdfFactory Pro trial version www.pdffactory.com

ENTROPY
Entropy is a quantity that is widely used in information theory and is based on probability theory [9].Entropy is a common concept in many fields, mainly in mechanics, image processing, and signal processing.The general form of the entropy is given by: … where X is a random variable which can be one of the values X 1 ,X 2 ,..., X n with probability p 1 ,p 2 ,..., p n .In this paper, we use the norm entropy.The norm entropy H is defined as: Where , , , is the wavelet coefficient at (i ,j) location at l scale in B ( B €{LH,HL,HH } ) sub band and X m is the color space (m = 1,2,3) [10].

ENERGY
Energy is commonly used for texture analysis.In this study, we use the averaged l2-norm, which is defined as follows:

METHODOLOGY
The proposed color texture classification algorithm is illustrated in Fig. 4. The steps involved in color texture classification are as follows: 1: The input to the classifier (GP) based color texture classification system is the color textures of size 512x512.We make sub images of size 128x128 by randomly choosing from the original input texture.Thus, color texture sub images may overlap.For gray scale texture analysis, the color information is discharged by RGB to gray scale trans-formation.Then the red, green, and blue components are decomposed from the color texture images and saved for subsequent processing.2: This step involves both feature extraction and classification.The feature extraction is composed of two layers.These are the multiwavelets decomposition layer and texture analysis layer.Layer 1. Multiwavelets decomposition layer: For multiwavelets decomposition of each of the red, green, and blue components of color textures, the pyramid multiwavelets structure is used.We obtain one-level multiwavelets decomposition, and save only the three detail images HH, LH, and HL where H and L stand for the high pass and low pass band in each of the horizontal and vertical orientations for the subsequent calculation of entropy and energy quantities.Layer 2. Texture analysis layer: This layer is responsible for calculating the entropy and energy quantities of each LH, HL, and HH of the red, green, and blue PDF created with pdfFactory Pro trial version www.pdffactory.comcomponents of the color texture images.Thus, entropy and the energy quantities are the features that characterize the color texture images.
Most of the research in texture classification is focused on the feature extraction stage and a large number of different ways of getting useful, highly discriminatory features have been investigated.The conventional approach has three main drawbacks.Firstly, there is no universal set of optimal texture features.Secondly, some of the approaches generate an enormous number of features, perhaps more than there are pixels in the image.This necessitates complex dimensionality reduction in feature space.Thirdly, most of the texture feature extraction algorithms are computationally expensive.They require the generation of Fourier-type transforms or other complex intermediate data structures and then additional computation on these structures.In this paper we show that the use of the GP techniques can overcome some of these drawbacks [6].
There has been prior work on evolving GP classifiers [12] [13].To obtain the classifier the available data is split into a training and test set, following the machine learning methodology for learning from examples.To get the fitness of an evolved program, it is applied to each example in the training data and the number of classification errors is counted.The fewer errors are the fitter program.Once a program achieves a fitness of zero, the evolutionary run can be terminated.In this case GP terminate the set of texture features wanted, so it overcome the first drawback.
We have used a refinement of this basic method which is described in [12][14].In this refinement, called dynamic range selection, the real line is split into a variable number of ranges, not just two as in the straightforward approach.So the second drawback was overcome because the feature space was restricted with image boundary.
The range boundaries are evolved along with the classification program.If the output of the program is less than fittest value then the example is class 2, if the output of the program is between ranges of values it is class 1.These classifiers are more accurate and are evolved in fewer generations than the ones from the straight forward approach [12].So, the third drawback was overcome because the computations were less expensive.Also, they can be easily extended to more than two classes.
In classification problem, the classification accuracy, which is ratio of the number of true predication and total number of samples, is usually used as the fitness function.A comprehensive method is proposed to calculate the fitness, which uses the area under the convex hull of the Receiver Operating Characteristic (ROC) curve, as a fitness measure.The ROC shows tradeoff between missing positive cases and raising false alarms.In this paper, for the speed and simplicity, only one single threshold point on the curve was used, which leads to the fitness function: Where, N tp , N tn , N p , N n are the number of true positive prediction, the number of true negative predication, the number positive samples, and the number of negative samples respectively.It is clear that the rules which classify all the samples correctly PDF created with pdfFactory Pro trial version www.pdffactory.comachieve a fitness value of 1 and the ones which misclassify all the samples obtain a fitness value of 0.

GP CLASSIFIER
In this approach conventional texture feature extraction programs are used to generate a feature vector.The feature vectors used are Variance, Sum Variance, Entropy, Sum Entropy, Difference Variance, and Difference Entropy.The functions used in GP runs are (+, -, ×, ÷, AND, OR, XOR, =, ≥, ≤, <, >, IF).The descriptions of these functions are as follows: (Arithmetic addition, arithmetic subtraction, arithmetic multiplication, arithmetic division, Boolean expression AND, Boolean expression OR, Boolean expression XOR, equal, greater than or equal, less than or equal, less than, greater than, and If arg1 is true return arg2) respectively.The parameters used in the propose GP classifier are: Population size, 300; max generations, 70; elitism rate, 0.2, crossover rate, 0.5; mutation rate, 0.04; maximum tree depth, 25.

EXPERIMENT AND DISCUSSIONS
In this paper, 12 real world RGB color images of size 512 x 512 from different natural scenes are used in the experimental studies.Fig. 5 shows the color texture images.A data base of 1000 color image regions of 16 texture classes of size 128 x128 was constructed randomly by subdividing each color texture image.300 of the color texture sub images were used for GP classifier.For comparison purposes, four different randomly chosen multiwavelets filters are used.These filters are GHM, CL, Sa4, D4.The following feature vectors were constructed: (1) Intensity (gray scale) images were obtained from the RGB form, thereby discarding the color information.The features are extracted according to the step 2 of Section 3. Thus, 6 features are obtained for gray scale textures (1 gray scale image x 3 multiwavelets detail images x 2 features (norm entropy and l2 norm energy)).
(2) Each R, G, and B component was multiwavelets transformed using one-level decomposition and the proposed feature extraction scheme was employed.This process constructed a feature vector of size 18 x 3 color channels x 3 multiwavelets detail images x 2 feature values (norm entropy and l2 norm energy)).
The experiments are conducted based on the methodology which is illustrated in Fig. (4) and the experimental results are presented at Table (1).The correct classification rates are indicated for all color texture types and the related multiwavelets filters.Table (1) indicates the experimental results for gray scale texture images.Flowers1, Clouds, and Misc texture images are correctly classified for all multiwavelets filter types.The correct classification rate is 100 % for these texture images.This high correct classification rate is obtained for these color texture types because of their homogeneity.On the other hand, the high correct classification rates are not obtained for the rest of the gray scale texture images.Another important property which can be extracted from the results is that the CL multiwavelets type is produced much more accurately than the other multiwavelets filter types.One observation from experimental results is that features and the subsequent classification performance are significantly improved when color information is added to the texture property.The correct classification rates for color texture images are also given in Table (1).The correct classification rates are 99.6|% for all PDF created with pdfFactory Pro trial version www.pdffactory.commultiwavelets filter types.Correct classification rate is obtained for Flowers1, Clouds, Misc, Fabric2, Fabric3, and Water texture images.

CONCLUSIONS
In this paper, the effect of the color and multiwavelets domain features on the texture classification problem was discussed.The main conclusions and suggestions for the study are: 1. Combining the color and texture information to improve the classification of the texture images.We proposed a system which uses the multiwavelets domain entropy and energy quantities of the red, green, and blue component of the RGB texture images.2. Experimental studies and subsequent results using a set of real world colored texture images show the usefulness of the multiwavelets entropy and energy for color texture analysis.The results show that color is an important component for improving the classification results for the texture analysis problem. 3.In this study, several important parameters such as multiwavelet decomposition level and multiwavelets filter type are constant.Selecting the best decomposition level is an important issue.Furthermore, selecting the best multiwavelets filter type will be studied in the future.4. Another important point is the chosen color space.Several color spaces, such as K-L color space, I1I2I3 color space, and UVW color space, will be added in future works.5. Also using GP classifier adds some speed to the classification scheme because GP terminate the set of texture features wanted, so it overcomes the drawback in other methods.This result suggests that the GP classifiers could be used in real time situations where speed is more important than accuracy.A drawback of the GP classifiers is that the programs are hard to comprehend.An exciting outcome of this work is the accuracy and speed of the one step classifiers.6.A set of rules, which classify all the samples correctly are obtained by the GP.Using these rules, most parts of the noisy images generated from the training samples can be classified accurately.All these results give us the confidence that the proposed method is suitable for the texture classification problem.7. GP can achieve high accuracy in classifying texture features.The further study in texture classification shows the feasibility of the single-step approach.That is, texture classifiers can be evolved directly based on rawpixels, without the conventional feature extraction phrase.So by using GP, a new paradigm of texture classification can be established.PDF created with pdfFactory Pro trial version www.pdffactory.com

Table ( 1) Results of Texture Classification Using GP with Different Multiwavelets Filters (for 100 Image Regions)
PDF created with pdfFactory Pro trial version www.pdffactory.com