Improved texture image classification through the use of a corrosion-inspired cellular automaton

12/26/2014 ∙ by Núbia Rosa da Silva, et al. ∙ Universidade de São Paulo Ghent University 0

In this paper, the problem of classifying synthetic and natural texture images is addressed. To tackle this problem, an innovative method is proposed that combines concepts from corrosion modeling and cellular automata to generate a texture descriptor. The core processes of metal (pitting) corrosion are identified and applied to texture images by incorporating the basic mechanisms of corrosion in the transition function of the cellular automaton. The surface morphology of the image is analyzed before and during the application of the transition function of the cellular automaton. In each iteration the cumulative mass of corroded product is obtained to construct each of the attributes of the texture descriptor. In a final step, this texture descriptor is used for image classification by applying Linear Discriminant Analysis. The method was tested on the well-known Brodatz and Vistex databases. In addition, in order to verify the robustness of the method, its invariance to noise and rotation were tested. To that end, different variants of the original two databases were obtained through addition of noise to and rotation of the images. The results showed that the method is effective for texture classification according to the high success rates obtained in all cases. This indicates the potential of employing methods inspired on natural phenomena in other fields.



There are no comments yet.


page 5

page 6

page 7

page 9

page 10

page 11

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

The classification of texture images is an important problem in pattern recognition and consequently forms the subject of many research works in this field. Texture is an important image feature with a strong discriminative capability and is therefore widely used in computer vision. The texture classification problem addressed in this paper is a multiclass classification problem and two different well-known databases are considered: the Brodatz database, which contains a number of unique textures that each form a class, and the Vistex database, which consists of a number of classes, each with several texture images belonging to it. For the Brodatz database, ten subimages of the same size are taken from each texture to obtain different texture images for the corresponding class. For each texture image of both databases a feature vector, i.e. a vector of characteristics, is obtained by using a novel method introduced in this paper, as well as by using a number of popular methods from literature. This feature vector is then employed to classify the different texture images using Linear Discriminant Analysis (LDA) following a stratified 10-fold cross-validation scheme. Feature vectors for image texture are usually obtained from the analysis of groups of pixels and the way this analysis is performed is used to classify the different texture analysis methods. Five main categories can be distinguished: structural 

Goyal et al. (1995); Serra (1983); Zhang and Tan (2002), statistical Haralick (1979), model-based Backes et al. (2009); Backes and Bruno (2008); Cohen et al. (1991), spectral Chen (1982); Tang and Stewart (1995), and agent-based methods Backes et al. (2010a, b); Lai et al. (2006).

This paper proposes a novel method to analyze the structural elements of textures by means of a cellular automaton (CA) inspired by the pitting corrosion phenomenon, further on referred to as the Corrosion-Inspired Texture Analysis (CITA) method. The basic mechanisms behind this detrimental reaction which occurs between metals (or alloys) and their environment serve as inspiration to develop a CA-based model. Next, this CA-based model is employed to perform texture analysis by treating the image to be classified as a metal surface. The CITA method, like real corrosion, amplifies existing differences in material and height (in this case grayscale value) so that the biggest contrasts in the original texture image will become more pronounced and smaller contrasts will be nullified. The eroded mass of ‘metal’ by the progression of pitting corrosion at each iteration is used to generate a feature vector that describes the image to be classified. The effectiveness of this strategy is demonstrated on two texture data sets with natural and synthetic textures. In addition, to verify the robustness of the CITA method, its invariance to noise and rotation were tested, obtaining satisfactory results.

This paper is organized as follows. Section II describes the basics behind the pitting corrosion phenomenon, while the definition of a CA as well as further explanation of some parts of this definition form the subject of Section III. The CITA method is described in Section IV and the experimental setup needed to test its efficacy is explained in Section V. Section VI presents the results and discussion of the study. Finally, the paper is concluded in Section VII.

Ii Pitting corrosion

Corrosion is the disintegration of metals (and alloys) into their constituents due to reaction with the environment and is one of the main causes of structural failure in industrial systems, and poses as such an economic problem Roberge (2008). Dealing with corrosion is difficult because of its complex nature and the involvement of many variables. Therefore, modeling and simulation could allow for predicting more accurately the corrosion process in time. CA-based models are excellent candidates for modeling corrosion due to their intrinsic simplicity and therefore, since the beginning of the new millennium, attempts are being made to employ these models in the field of corrosion engineering Contreras et al. (2011); di Caprio et al. (2011); Lishchuk et al. (2011); Malki and Baroux (2005); Pidaparti et al. (2005). Corrosion is present in a wide range of metals and environments, which points to the universality of this phenomenon. The latter suggests that corrosion does not depend on the details of the underlying mechanism, so that it may be modeled adequately using simple models Valor et al. (2007). Moreover, CA-based models are able to capture the stochasticity of the involved electrochemical reactions at the mesoscopic scale Lishchuk et al. (2011).

Pitting corrosion is a very harmful and common form of localized corrosion where all or most of the metal loss occurs concentrated in certain areas. Upon close inspection of the metal surface, pitting can be recognized by the appearance of small holes on the metal surface as shown in Figure 1.The first step in pitting corrosion is the pit initiation which is the result of impurities or irregularities of the metal surface or the environment, making perfectly polished surfaces more resistant to this type of corrosion. From there on, the acidity inside the pit is maintained by the spatial separation of the cathodic and anodic half-reactions, which creates a potential gradient and electromigration of aggressive anions into the pit (see Figure 1). As pit growth progresses, different solution compositions develop inside the cavity and the consequent voltage (IR) drop along the metal/electrolyte interface illustrates that the deeper the pit, the lower the pit growth rate Malki and Baroux (2005); Pickering (1989); Wang et al. (2011).

Figure 1: Pitting corrosion: schematic representation in a metal surface.

Iii Cellular automata

CAs are mathematical constructs in which the space, state and time domains are discrete as opposed to partial differential equations (PDE) in which these three domains are continuous 

Berec (2002); Wolfram (1983). The ability of CAs to generate a rich spectrum of sometimes complex spatio-temporal patterns from relatively simple underlying transition functions has led to their successful employment in the study of several (a)biological processes Milne and Fu (2003); Picioreanu et al. (1998); Preziosi (2003); Schiff (2008); Van der Weeën et al. (2012); Vasilkoski and Weaver (2000). Models based on CAs can be seen as an alternative to PDE-based models, to provide researchers with a wider range of modeling tools and, in some complex cases, a solution to problems encountered with some of the more classical modeling methods El Yacoubi and El Jai (2002); Toffoli (1984).

In this paper, we make use of a homogeneous CA, in which a single transition function, constructed using a combination of knowledge on the pitting corrosion phenomenon and intuition, governs the dynamics of all cells. The following definition of a homogeneous 2D CA is relied upon.

Definition I. (Homogeneous 2D cellular automaton)
A homogeneous 2D cellular automaton can be represented as


  1. is a two-dimensional grid of cells .

  2. is a finite set of states, with .

  3. The output function yields the state of every cell at the -th discrete time step.

  4. The neighborhood function determines the neighboring cells of every cell , including the cell itself.

  5. The transition function yields the state of every cell at the next time step, based on its state and that of its neighboring cells at the current time step.

For reasons of comprehensiveness, some parts of this definition will be elaborated in the remainder of this section.

iii.1 Grid

In this paper, a finite two-dimensional grid consisting of squares is used, because it has the most straightforward implementation and provides an easy way of linking the cells of to the pixels of the texture images to be classified (cfr. infra). Furthermore, an indexing of the cells of a 2D CA is introduced, which is shown in Figure 2. For a square grid, it holds that = = .

Figure 2: Ordering of the cells of a 2D CA

iii.2 Neighborhood function

Many different neighborhoods can be defined in 2D, the two most important ones being the Moore and the von Neumann neighborhood. The Moore neighborhood of a cell comprises those cells that share at least a vertex with (see Figure 3). The von Neumann neighborhood is a more restricted neighborhood in which only those cells that share an edge with are considered as neighbors (see Figure 3).

Figure 3: Neighborhoods of a cell in a square tessellation: (a) Moore neighborhood and (b) von Neumann neighborhood

iii.3 Discrete states

Every cell has one of the discrete states comprised in the set . The states of the cells of at , i.e. , constitute the initial condition of . In this paper, the initial condition of is determined by the grayscale value of the different pixels of the corresponding texture image (cfr. infra).

iii.4 Transition function

The transition function determines the state of a cell at the ()-th time step based on the cell’s current state and the states of its neighboring cells. The transition function employed in this paper is executed in a deterministic and synchronous manner, meaning that is used to evaluate the state of every cell of at every time step and for all cells at the same time Baetens et al. (2012).

Iv Corrosion-Inspired Texture Analysis

The CITA method proposed in this paper starts by converting the texture image into the initial state of a CA. Thereafter, a CA-based model inspired by the pitting corrosion phenomenon is evaluated for a number of time steps. The cumulative mass of corroded metal after each iteration of the CA-based model is used to construct a feature vector for every texture image. Finally, these vectors of characteristics are used to classify the images via LDA. In the remainder of this section, the CITA method is explained in more detail.

A two-dimensional grayscale image is treated as a discrete object and is seen as a grid . The dimensions of are defined by the size of the image, where each pixel of the image is a cell of the CA. The original image is then used to determine an initial state of the cells of the CA by converting the gray level image into a discrete initial state for each cell. Thus, for the initial configuration there are 256 possible states, ranging from 0 to 255. This conversion is described by


where is the original image and represents the gray level of the pixel at the -th row and -th column of the image . In order to introduce the ideas of pitting corrosion, the 2D grid will be regarded as a metal surface and the state of each cell will represent the depth of the local pit in the metal (i.e. along the third dimension), with state 0 meaning that there is no pit and 255 being the largest pit depth of the metal at . It is important to point out that for the maximum pit depth can exceed 255 and from thereon it is possible that the grid can no longer be represented as a grayscale image.

An important consideration is the choice of boundary conditions in order to obtain an appropriate behavior of the CA-based model. The two most popular boundary conditions are the periodic and reflecting boundary conditions. The former tries to simulate an infinite grid, where the new boundaries of the top, bottom, left and right are filled with the values of the opposite side, thus forming a torus in a 3D space. This boundary condition is useful for simulating systems where the physical boundaries do not play an important role. However, throughout this paper, reflecting boundaries will be used as they give rise to better results for the studied databases as was observed from preliminary tests. Firstly, an imaginary row at the top and at the bottom of the grid and an imaginary column at the left and at the right of the grid are added. Then, the reflecting boundary conditions are applied at every time step as follows:


with the size of the original image with pixels.

The updated state of each cell of at time depends on the analysis of the states of the cells in the neighborhood of at time . In this paper, the Moore neighborhood (see Figure 3) is employed. Furthermore, the CITA method makes use of a transition function inspired by pitting corrosion. In a first step, is calculated for every cell as the difference between the state of this cell and the lowest state value within its Moore neighborhood (see Eq. (3)):


where is the set of states of the cells in the Moore neighborhood of .

Bearing in mind the principles of pitting corrosion, a local ‘impurity’ or minimum height difference is needed at a certain location in order to initiate or propagate pitting corrosion. For this purpose, a surface roughness parameter is introduced. All differences lower than this parameter are considered insignificant, i.e. not real impurities, in order to account for the fact that not even a polished metal surface is perfectly smooth. This means that differences lower than will not give rise to (further) pitting. On the other hand, the larger the difference grows, the lower the pit growth rate will be due to the IR drop, until finally the pit growth rate becomes zero. In this paper, it is assumed that if the difference is greater than 254, the greatest possible difference at , the corresponding pit growth rate is zero. This means that only the state of those cells with a difference greater than or equal to and smaller than 255 are evaluated.

Figures 4-4 illustrate the selection process to determine whether a cell will be evaluated or not. In this example, is set to five meaning that cells whose state differs less than five with the lowest state in its neighborhood are considered to belong to the surface and will not have their state changed. Figure 4 shows the cells belonging to a square tessellation with their initial state. Figure 4 depicts the difference for each of these cells calculated according to Eq. (3). Finally, in Figure 4 the gray cells indicate the cells that are evaluated in that time step, because their is greater than or equal to five and smaller than 255.

Figure 4: Selection of cells to be updated, with : (a) square grid with initial states of the cells, (b) difference for all cells according to Eq. (3) and (c) gray cells indicate cells to be updated

Under these assumptions, the transition function establishes the state of a cell at the ()-th time step according to


where is the pitting power. This parameter represents the metal-specific resistance to corrosion under given environmental conditions, where stands for completely resistant metal. Further, is a function that employs and to determine the level of corrosion to be applied. In this paper, is defined as


From Eq. (5), it can be seen that the function gives, depending on the value of , a non-integer output, meaning that the employed model structure is actually a continuous CA or Coupled Map Lattice rather than a CA Levine and Reynolds (1992). However, in order to keep working with a CA-based model and to not overcomplicate the model, the choice was made to limit the output of to integer values (see Eq. (6)).


where in denotes the floor of .

The output of the CA-based model at every time step is the cumulative mass of corroded product. In each iteration, after updating the state of the cells, the mass that suffered corrosion in that iteration is added to the eroded total mass from the previous iteration. Finally, this cumulative corroded mass is expressed relative to the number of pixels of the texture images such that texture images with different sizes can be compared using the CITA method.

Figure 5 shows some examples of initial images and the simulated result after 90 iterations of the pitting-corrosion-inspired CA-based model. In the first column the original images are shown, the second column shows the simulated output of the CA-based model in grayscale, while the third column displays the same results as the second column, but scaled in a color map where blue indicates the lowest and red the highest resulting values. After simulation, some structural details from the original image can still be retrieved in the simulated output. Regions with similar state values are mostly considered by the model as belonging to the same local surface and therefore tend to keep the same state value throughout the simulation.

Figure 5: Simulation results. First column: original images. Second column: result in grayscale after application of CA-based model. Third column: result in blue-red scale after application of CA-based model (see color code at the right hand side). The experiments were performed with = 0.05, = 5 and 90 iterations.

In a final step, the time series of cumulative mass of corroded metal, relative to the total number of pixels, is used as the feature vector for each texture image and classification is performed using LDA following a stratified 10-fold cross-validation scheme. LDA is traditionally used in texture analysis to find a linear combination of attributes resulting in a good separation of the classes. The proposed method is summarized in Figure 6. Figure 7 shows the feature vectors for four texture images from the Brodatz database. It can clearly be seen from this figure that the feature vectors from textures belonging to the same class are very similar on the one hand and that these vectors are different from the feature vectors from images belonging to different classes on the other hand.

Input: Original image (), surface roughness , pitting power , number of iterations
Output: Class label
original image ()
Add imaginary row at top and bottom
Add imaginary column at left and right
for all iterations do
     Apply boundary reflection on grid :
     for  do
         for  do
              if (then
              end if
         end for
     end for
     Calculate cumulative corroded mass
end for
Feature vector cumulative corroded masses relative to number of pixels
Do classification via LDA
Figure 6: Pseudocode for the CITA method.
Figure 7: Feature vectors from four different texture images of the Brodatz database, with = 0.04, = 5 and 100 iterations. The blue and red vectors originate from class 11 images, the purple vector from a class 24 image and the green vector from a class 78 image.

V Experimental setup

To validate the CITA method, it is employed for the classification of the images of two classical texture databases, the Brodatz and Vistex databases, and the results obtained by applying the CITA method are compared with the results obtained with several established methods from literature. The remainder of this section includes a short description of the employed databases and the methods from literature used for comparison as well as an optimization of the parameters of the CITA method, i.e. , and the number of iterations performed in order to obtain the most favorable results. To ensure the CITA method is not sensitive to the parameter configuration, Usptex, a different database than the databases used for the validation of the method is used to perform the parameter optimization.

v.1 Databases

Two important databases, widely used in the literature and each with its own peculiarities, are employed for testing the different methods for pattern classification: the Brodatz and Vistex databases and a third database, Usptex, is used to perform the parameter optimization.

v.1.1 The Brodatz database Brodatz (1966)

contains 111 unique natural textures (and therefore also 111 classes) with image size of pixels and 256 gray levels. From each image ten subimages with size of pixels were obtained, resulting in an image database containing 1110 images. Figure 8 shows the complete Brodatz database and Figures 9 and 9 show for two of the original Brodatz images the ten selected subimages.

Figure 8: The Brodatz database. The size of the images is pixels.
Figure 9: (a) Two Brodatz textures with a size of pixels and (b) ten subimages with a size of pixels.

v.1.2 The Vistex database VisTex (2009)

contains 864 images belonging to 54 texture classes. Each texture class contains 16 texture samples of pixels, each extracted from a particular texture pattern without overlapping (see Figure 10). The true color RGB images are converted to grayscale intensity images, because the CITA method in its present form works only on grayscale images.

Figure 10: The Vistex database. The size of the images is pixels.

v.1.3 The Usptex database Backes et al. (2012)

contains 191 color images that each form a texture class (see Figure 11). Each image has a size of pixels from which 12 subimages with a size of 128 128 pixels are extracted without overlapping, so that a total of 2292 images is obtained. The images are again converted to grayscale images.

Figure 11: The Usptex database. The size of the images is pixels.

v.2 Established methods for texture analysis

v.2.1 Fourier descriptors Azencott et al. (1997); Gonzalez and Woods (2006)

consider attributes in terms of spectral density considering the texture as a Gaussian random field. The Fourier transform was calculated for each image, where the spectrum was divided into 64 sectors with eight radial distances and eight angles. The sum of the absolute spectrum values for each sector is calculated, resulting in 64 descriptors per image.

v.2.2 Gray Level Co-occurrence Matrix - GLCM Haralick (1979)

is based on the spatial gray level dependence matrices. Haralick descriptors (Contrast, Correlation, Energy and Homogeneity) were computed from resulting co-occurrence matrices with angles of 0, 45, 90 and 135, distances equal to one or two pixels and 64 gray levels in order to obtain a set of 32 descriptors for each image.

v.2.3 Gray Level Difference Matrix - GLDM Weszka et al. (1976); Kim and Park (1999)

calculates the absolute gray level difference between two pixels with distance . Here, 60 descriptors were obtained using

 1, 3 and 5 and the attributes contrast, angular second moment, entropy, mean, and inverse difference moment from the estimated probability density function.

v.2.4 Gabor filter Manjunath and Ma (1996); Daugman and Downing (1998); Idrissa and Acheroy (2002)

is a bi-dimensional Gaussian function modulated with an oriented sinusoid in a determined frequency and direction. To perform the tests, 64 filters were used, composed of eight rotation filters and eight scale filters with lowest frequency equal to 0.01 and highest frequency equal to 0.4.

v.2.5 Local Binary Pattern Variance - LBPV Guo et al. (2010)

is a variation of traditional LBP Ojala et al. (2002)

and is calculated from the binary value of each pixel in the radius 1 neighborhood surrounding the central pixel, measuring the local variance.

v.3 Parameter Evaluation

The parameterization of the CITA method is performed using the Usptex database, a different database than the ones used for validation. This is done to ensure that the CITA method is not susceptible to the parameters and therefore the same configuration can be used for classification of textures from different databases.

v.3.1 Number of iterations

To describe each image, the cumulative mass of corroded metal after each iteration of the CA-based corrosion model is used. These values constitute the vector of characteristics that is used to discriminate each of the images. However, finding a single number of iterations that gives rise to the smallest, most informative feature vector for all images of both databases is a non-trivial task due to the variety of the type of texture images and also because this number is dependent on the values of and . In order not to overcomplicate the problem, the choice is made to look for a single optimal number of iterations for both databases that overall gives the best result for all the texture images in both databases. This optimal number of iterations is nevertheless still kept dependent on and .

v.3.2 Surface roughness

One of the parameters that defines the pitting corrosion is the surface roughness . According to the proposed corrosion-based method, pixels having a difference lower than (Eqs. (3) and (4)) do not suffer from the action of the corrosion process, considering that they are part of the local surface. However, if the neighborhood has a difference greater than the permitted threshold surface, the center pixel will pass through a corrosion process having its value eroded according to Eqs. (4) and (5). Figure LABEL:fig:parametersusptex shows the success rate surface, i.e. the percentage of correctly classified texture images, for the Usptex database for varying from 0 to 10 and and varying from 0.01 to 0.08. The figure shows that higher values of lead to a lower success rate. However, when equals 0 the obtained success rate is smaller than for equal to 1 for almost all values of . Thus, a value of 1 for is chosen as optimal value.

v.3.3 Pitting power

Another model parameter with a physical meaning is the pitting power . This parameter is important because it determines the level of corrosion according to the material being eroded. However, as we are not dealing with real metal surfaces, this parameter is not known for the image texture analysis. Figure LABEL:fig:parametersusptex is now studied for ranging from 0.01 to 0.08. It can be seen that the highest success rate is obtained with and equal to 0.05 and 1, respectively. For values of below 0.05 the rate tends to be reduced while for values above 0.05 the rate also tends to decrease. When looking at combined high values of and the success rates drop sharply. Figure LABEL:fig:iterationsusptex shows the number of iterations to obtain the highest success rate for each of the parameter combinations. The graph shows that the optimal number of iterations necessary for equal to 0.05 and equal 1 is relatively low in comparison to the other results.


Figure 12: (a) Pitting power and surface roughness analysis for the Usptex database with from 0.01 to 0.08 and from 0 to 10. (b) Number of iterations for each parameter configuration in (a).

Vi Results and Discussions

This section reports on the performance of the CITA method for texture analysis. Results for the classification with the proposed method are compared to the traditional texture analysis methods in literature described in Section V to evaluate the performance of the method, where the classification is performed using LDA following a stratified 10-fold cross-validation scheme. Three sets of experiments were performed: firstly on the original test databases and afterwards on modified versions of the test databases to test noise and rotation invariance. All tests were performed using the optimized values for and found in the previous section and the corresponding optimal number of iterations for that specific combination of and , which are shown in Table 1.

Parameter Value
Number of iterations 158
Table 1: Optimal parameter values.

vi.1 Unmodified databases

Table 2 lists the results for the different texture analysis methods for the unmodified databases. As can be seen, the CITA method achieves an excellent success rate, which outperforms all methods for the Brodatz database and shares the best result for the Vistex database together with the GLDM method. To further test the robustness of the CITA method, firstly, noise is applied to the images and, secondly, a rotation of the images is performed to verify whether the performance of the CITA method persists under these circumstances.

Success rate (RMSE)
Method Brodatz Vistex
Fourier descriptors 94 ( 2.2) 94 ( 1.8)
GLCM 94 ( 3.1) 94 ( 3.3)
GLDM 98 ( 0.9) 97 ( 1.7)
Gabor filter 92 ( 3.5) 92 ( 1.6)
LBPV 88 ( 3.2) 82 ( 3.7)
CITA Method 99 ( 1.5) 97 ( 1.6)
Table 2: Comparison of the CITA method with traditional texture analysis methods for unmodified databases.

vi.2 Noise Invariance

In order to demonstrate the tolerance of the proposed method to noise, experiments were performed on modified versions of the Brodatz and Vistex databases with addition of noise in the form of ‘Salt & Pepper’ noise. By applying this type of noise to an image, black and white pixels are randomly added to the image matrix with an intensity which may vary from 0 to 1 and represents the share of the image affected by the noise. The robustness of the CITA method to the addition of noise is demonstrated by performing the texture classification on six modified databases generated from both the Brodatz and Vistex databases. The six different databases were generated in both cases by adding ‘Salt & Pepper’ noise with intensities , 0.05, 0.07, 0.1, 0.5 and 0.7. For all different cases the CITA method is compared with the established methods described in Section V in order to get an idea of how the CITA method, in comparison with the other methods, deals with deformation of texture. Figure 13 shows samples of the modified Vistex databases where noise was added to the images and where each column shows examples of an intensity of noise.

Figure 13: Samples of six databases generated from the Vistex database by adding ‘Salt & Pepper’ noise. Each column represents an intensity of noise with = 0.01, 0.05, 0.07, 0.1, 0.5 and 0.7 from left to the right.

The success rates for classifying the perturbated images from the modified Brodatz and Vistex databases using the different methods, are given in Tables 3 and 4, respectively. These results demonstrate the good performance of our method even with the addition of various intensities of noise. For all databases generated from the Brodatz database, the CITA method has a higher success rate compared to traditional methods in literature. It is important to note that even with increasing noise levels, the CITA method yields high success rates, while for all other methods the success rate declines. For the databases generated from the Vistex database our method gives rise to the second best success rate, preceded by the GLDM method, but still demonstrating its robustness to noise.

Success rate (RMSE)
Method = 0.01 = 0.05 = 0.07 = 0.1 = 0.5 = 0.7
Fourier 93 ( 2.5) 93 ( 3.1) 91 ( 3.3) 90 ( 3.3) 82 ( 4.8) 67 ( 6.0)
GLCM 94 ( 3.2) 94 ( 2.6) 95 ( 2.6) 94 ( 2.9) 87 ( 4.6) 76 ( 5.9)
GLDM 98 ( 1.4) 98 ( 1.5) 98 ( 1.4) 98 ( 1.7) 95 ( 2.0) 91 ( 3.4)
Gabor filter 91 ( 3.5) 90 ( 4.3) 90 ( 4.4) 90 ( 4.8) 82 ( 5.5) 67 ( 3.6)
LBPV 88 ( 3.0) 87 ( 3.6) 87 ( 4.3) 87 ( 4.5) 66 ( 5.0) 46 ( 6.1)
CITA method 99 ( 1.6) 98 ( 1.3) 98 ( 1.3) 98 ( 1.3) 97 ( 2.1) 97 ( 1.9)
Table 3: Success rates of texture classification for six databases obtained by adding different intensities of ‘Salt & Pepper’ noise to the Brodatz database.
Success rate (RMSE)
Method = 0.01 = 0.05 = 0.07 = 0.1 = 0.5 = 0.7
Fourier 93 ( 2.3) 91 ( 2.3) 89 ( 1.5) 89 ( 2.0) 67 ( 3.5) 35 ( 5.4)
GLCM 94 ( 2.8) 95 ( 1.6) 95 ( 2.7) 94 ( 1.7) 84 ( 3.6) 66 ( 4.1)
GLDM 98 ( 1.1) 97 ( 1.4) 97 ( 1.5) 97 ( 1.3) 94 ( 1.3) 86 ( 2.9)
Gabor filter 91 ( 2.1) 89 ( 1.7) 89 ( 3.0) 86 ( 3.1) 56 ( 5.5) 34 ( 3.6)
LBPV 83 ( 3.6) 83 ( 2.2) 82 ( 3.8) 81 ( 3.9) 54 ( 2.9) 39 ( 7.3)
CITA method 96 ( 1.7) 94 ( 1.3) 94 ( 1.5) 94 ( 1.4) 94 ( 4.4) 81 ( 4.2)
Table 4: Success rates of texture classification for six databases obtained by adding different intensities of ‘Salt & Pepper’ noise to the Vistex database.

The results in Tables 3 and 4 are obtained with addition of noise to both the training as well as the test data. Further, experiments using non-perturbated texture images for training and images with addition of noise for testing were performed. The results are shown in Tables 5 and 6. The success rate of the CITA method is comparable to the other methods analyzed in both cases. It is never the worst method seen over the different intensities and two databases, but neither is it clearly the best method.

Success rate (RMSE)
Method = 0.01 = 0.05 = 0.07 = 0.1 = 0.5 = 0.7
Fourier 90 ( 2.4) 62 ( 3.4) 50 ( 3.8) 36 ( 2.4) 4 ( 0.9) 1 ( 1.2)
GLCM 49 ( 2.0) 6 ( 0.9) 4 ( 0.4) 3 ( 0.6) 1 ( 0.0) 1 ( 0.0)
GLDM 84 ( 5.0) 42 ( 3.0) 16 ( 1.5) 9 ( 0.6) 1 ( 0.0) 1 ( 0.0)
Gabor filter 73 ( 4.7) 57 ( 1.8) 32 ( 1.5) 26 ( 2.1) 7 ( 1.1) 4 ( 0.8)
LBPV 57 ( 3.2) 14 ( 1.2) 10 ( 1.3) 9 ( 0.7) 1 ( 0.0) 1 ( 0.0)
CITA method 97 ( 2.6) 37 ( 3.2) 20 ( 1.6) 11 ( 1.3) 6 ( 1.8) 4 ( 0.7)
Table 5: Success rates of classification of the texture images of the Brodatz database, with training data without addition of noise and test data with addition of noise at different intensities of ‘Salt & Pepper’ noise.
Success rate (RMSE)
Method = 0.01 = 0.05 = 0.07 = 0.1 = 0.5 = 0.7
Fourier 58 ( 4.1) 10 ( 2.0) 8 ( 2.0) 6 ( 2.0) 3 ( 1.1) 2.1 ( 1.0)
GLCM 64 ( 3.5) 33 ( 1.4) 5 ( 0.5) 2 ( 0.6) 2 ( 0.6) 2 ( 0.6)
GLDM 90 ( 2.5) 13 ( 1.4) 13 ( 1.1) 9 ( 1.2) 2 ( 0.5) 2.3 ( 1.0)
Gabor filter 58 ( 2.6) 14 ( 3.2) 10 ( 2.1) 5. ( 1.5) 2 ( 0.5) 2 ( 0.6)
LBPV 52 ( 2.6) 14 ( 2.5) 7 ( 1.5) 5.6 ( 1.5) 2 ( 0.6) 2 ( 0.6)
CITA method 83 ( 3.2) 23 ( 4.1) 17 ( 2.5) 11 ( 1.6) 6 ( 3.1) 5 ( 2.8)
Table 6: Success rates of classification of the texture images of the Vistex database, with training data without addition of noise and test data with addition of noise at different intensities of ‘Salt & Pepper’ noise.

vi.3 Rotation Invariance

The proposed CITA method is intrinsically rotation invariant, so good results are expected when test are performed with modified databases with rotated images. To demonstrate the rotation invariance of the CITA method, additional versions of both the Brodatz and Vistex databases are created. Each image from the databases is rotated with the following angles: 0, 45, 90, 135, 180, 225 and 270 and in this way, seven images are obtained from each original database image. Therefore, the new database with rotated Brodatz images has 70 images per class with 111 classes in total and the new database with rotated Vistex images has 112 images per class with 54 classes in total. Figure 14 shows for some texture images from the Brodatz database the seven rotated images obtained under the different rotation angles, with all images on the same row originating from the same original image.

Figure 14: Samples of rotated images from the Brodatz database. Each column corresponds to a different rotation angle. From left to right: 0, 45, 90, 135, 180, 225 and 270.

Table 7 shows the success rates for the classification of the texture images of the Brodatz and Vistex databases with rotated images. In this case, the success rates are obtained with LDA following a stratified 10-fold cross-validation scheme for the complete rotated Brodatz and Vistex databases, where each database consists of all rotated texture images of all the original images. The success rates achieved with the CITA method are better than the success rates obtained with any of the other methods and are comparable to the results obtained on the unmodified databases. These experimental results indicate that our method has a good generalization ability. Hence, the method described here has proven to be performant also for rotated texture classification.

Success rate (RMSE)
Method Rotated Brodatz Rotated Vistex
Fourier descriptors 83 ( 1.0) 77 ( 1.3)
GLCM 71 ( 0.5) 74 ( 1.2)
GLDM 84 ( 0.5) 83 ( 0.7)
Gabor filter 78 ( 0.9) 71 ( 1.3)
LBPV 63 ( 1.0) 62 ( 1.6)
CITA method 98 ( 0.4) 97 ( 0.3)
Table 7: Comparison of the CITA method with traditional texture analysis methods for the databases of rotated images.

Vii Conclusions

In this paper, a new method for texture analysis and classification was described. Combining concepts from corrosion engineering, cellular automata and pattern recognition a texture descriptor was generated, able to characterize an image according to the iterations of a CA-based model drawing inspiration from the pitting corrosion phenomenon. The developed CITA method was used to classify the texture images of two well-known databases: Brodatz and Vistex. The method was applied to images of the original databases and the robustness of the method under addition of noise and rotation was investigated. For this purpose, several new databases were created, starting from the original databases. Six new databases were obtained by adding ‘Salt & Pepper’ noise with different intensities to each of the images of the test databases and another new database was obtained by rotating the images of the databases under seven angles. In all cases, the CITA method obtained good results compared to the methods from literature, showing a good generalization ability and proving to be performant for texture classification.

The results presented in this paper demonstrate the potential of the CITA method. Therefore, future work should focus on further refining the method as well as expanding it so that it is applicable for more types of texture images. This can be done by integrating measures of corrosion frequency via a histogram of eroded pixels and measuring the velocity of corrosion by calculating the difference between initial and final values divided by the number of iterations. Further, the CITA method has to be expanded so that it can deal with RGB color images as well as with dynamic textures, i.e. sequences of images that together form a texture.


Núbia Rosa da Silva acknowledges support from FAPESP (The State of São Paulo Research Foundation). Pieter Van der Weeën was sponsored by the Fund for Scientific Research in Flanders (FWO). Odemir Martinez Bruno gratefully acknowledges the financial support of CNPq (National Council for Scientific and Technological Development, Brazil) (Grant Nos. 308449/2010-0 and 473893/2010-0) and FAPESP (Grant No. 2011/01523-1).


  • Goyal et al. (1995) R. Goyal, W. Goh, D. Mital, K. Chan, Scale and rotation invariant texture analysis based on structural property, in: Proceedings of the 1995 IEEE IECON 21st International Conference on Industrial Electronics, Control, and Instrumentation, volume 2, pp. 1290–1294.
  • Serra (1983) J. Serra, Image Analysis and Mathematical Morphology, Academic Press, Inc., Orlando, FL, USA, 1983.
  • Zhang and Tan (2002) J. Zhang, T. Tan, Brief review of invariant texture analysis methods, Pattern Recognition 35 (2002) 735–747.
  • Haralick (1979) R. M. Haralick, Statistical and structural approaches to texture, Proceedings of the IEEE 67 (1979) 786–804.
  • Backes et al. (2009) A. R. Backes, D. Casanova, O. M. Bruno, Plant leaf identification based on volumetric fractal dimension,

    International Journal of Pattern Recognition and Artificial Intelligence 23 (2009) 1145–1160.

  • Backes and Bruno (2008) A. R. Backes, O. M. Bruno, A new approach to estimate fractal dimension of texture images, in: A. Elmoataz, O. Lezoray, F. Nouboud, D. Mammass (Eds.), Image and Signal Processing, volume 5099 of Lecture Notes in Computer Science, Springer Berlin / Heidelberg, 2008, pp. 136–143.
  • Cohen et al. (1991) F. Cohen, Z. Fan, M. Patel, Classification of rotated and scaled textured images using Gaussian Markov random field models, IEEE Transactions on Pattern Analysis and Machine Intelligence 13 (1991) 192–202.
  • Chen (1982) C. Chen, A comparative study of texture classification using spectral features, in: Technical report ADA109408, pp. 1074–1077.
  • Tang and Stewart (1995) X. Tang, W. Stewart, Texture classification using wavelet packet and Fourier transforms, in: OCEANS ’95. MTS/IEEE. Proceedings of Challenges of Our Changing Global Environment, volume 1, pp. 387–396.
  • Backes et al. (2010a) A. R. Backes, W. N. Gonçalves, A. S. Martinez, O. M. Bruno, Texture analysis and classification using deterministic tourist walk, Pattern Recognition 43 (2010a) 685–694.
  • Backes et al. (2010b) A. R. Backes, A. S. Martinez, O. M. Bruno, Color texture analysis and classification: an agent approach based on partially self-avoiding deterministic walks, in: Proceedings of the 15th Iberoamerican Congress Conference on Progress in Pattern Recognition, Image Analysis, Computer Vision, and Applications, CIARP’10, Springer-Verlag, Berlin, Heidelberg, 2010b, pp. 6–13.
  • Lai et al. (2006) M.-S. Lai, H.-C. Huang, S.-C. Chu, Image texture segmentation with ant colony systems, in: Proceedings of the First International Conference on Innovative Computing, Information and Control - Volume 1, ICICIC ’06, IEEE Computer Society, Washington, DC, USA, 2006, pp. 652–656.
  • Roberge (2008) P. R. Roberge, Corrosion Engineering: Principles and Practice, McGraw-Hill Professional, 2008.
  • Contreras et al. (2011) G. Contreras, S. Goidanich, S. Maggi, C. Piccardi, M. V. Diamanti, M. P. Pedeferri, L. Lazzari, Representing localized corrosion processes through cellular automata, Corrosion Reviews 29 (2011) 241–245.
  • di Caprio et al. (2011) D. di Caprio, C. Vautrin-Ul, J. Stafiej, J. Saunier, A. Chaussé, D. Féron, J. P. Badiali, Morphology of corroded surfaces: Contribution of cellular automaton modelling, Corrosion Science 53 (2011) 418–425.
  • Lishchuk et al. (2011) S. V. Lishchuk, R. Akid, K. Worden, J. Michalski, A cellular automaton model for predicting intergranular corrosion, Corrosion Science 53 (2011) 2518–2526.
  • Malki and Baroux (2005) B. Malki, B. Baroux, Computer simulation of the corrosion pit growth, Corrosion Science 47 (2005) 171–182.
  • Pidaparti et al. (2005) R. M. Pidaparti, M. J. Palakal, L. Fang, Cellular automata approach to aircraft corrosion growth, International Journal of Artificial Intelligence Tools 14 (2005) 361–369.
  • Valor et al. (2007) A. Valor, F. Caleyo, L. Alfonso, D. Rivas, J. M. Hallen, Stochastic modeling of pitting corrosion: A new model for initiation and growth of multiple corrosion pits, Corrosion Science 49 (2007) 559–579.
  • Korb (1987) L. J. Korb, Metals Handbook, Ninth edition, Asm Intl, 1987.
  • Pickering (1989) H. W. Pickering, The significance of the local electrode potential within pits, crevices and cracks, Corrosion Science 29 (1989) 325–341.
  • Wang et al. (2011) H. Wang, B. Song, L. Wang, G. Lv, Three dimensional cellular automaton for simulation of the multi-pi corrosion damage evolution, Advanced Science Letters 4 (2011) 2980–2985.
  • Berec (2002) L. Berec, Techniques of spatially explicit individual-based models: construction, simulation and mean-field analysis, Ecological Modelling 150 (2002) 55–81.
  • Wolfram (1983) S. Wolfram, Statistical mechanics of cellular automata, Reviews of Modern Physics 55 (1983) 601–644.
  • Milne and Fu (2003) J. Milne, S. C. Fu, Epidemic modelling using cellular automata, in: Proceedings of the 1st Australian Conference on Artificial Life, pp. 43–57.
  • Picioreanu et al. (1998) C. Picioreanu, M. van Loosdrecht, J. Heijnen, Mathematical modelling of biofilm structure with a hybrid differential-discrete cellular automaton approach, Biotechnology and Bioengineering 58 (1998) 101–116.
  • Preziosi (2003) L. Preziosi, Modelling and Simulation, Chapman & Hall, Boca Raton, United States, 2003.
  • Schiff (2008) J. Schiff, Cellular Automata: A Discrete View of the World, John Wiley & Sons Ltd., Chichester, United Kingdom, 2008.
  • Van der Weeën et al. (2012) P. Van der Weeën, J. M. Baetens, J. Verwaeren, X. Van Doorslaer, P. M. Heynderickx, J. Dewulf, B. De Baets, Modeling the photocatalytic degradation of moxifloxacin by means of a stochastic cellular automaton, Chemical Engineering Journal 188 (2012) 181–190.
  • Vasilkoski and Weaver (2000) Z. Vasilkoski, C. D. Weaver, A generator of protein folding kinetics states for the diffusion-collision model, Journal of Computational Chemistry 21 (2000) 923–932.
  • El Yacoubi and El Jai (2002) S. El Yacoubi, A. El Jai, Cellular automata and spreadability, Mathematical and Computer Modelling 36 (2002) 1059–1074.
  • Toffoli (1984) T. Toffoli, Cellular automata as an alternative to (rather than an approximation of) differential equations in modeling physics, Physica D 10 (1984) 117–127.
  • Baetens et al. (2012) J. M. Baetens, P. Van der Weeën, B. De Baets, Effects of asynchronous updating in cellular automata, Chaos, Solitons & Fractals 45 (2012) 383–394.
  • Levine and Reynolds (1992) H. Levine, W. N. Reynolds, Coupled map lattice techniques for simulating interfacial phenomena in reaction-diffusion systems, Chaos 2 (1992) 337–342.
  • Brodatz (1966) P. Brodatz, Textures: A Photographic Album for Artists and Designers, Dover Publications, 1966.
  • VisTex (2009) VisTex, Vision texture database, 2009.
  • Backes et al. (2012) A. R. Backes, D. Casanova, O. M. Bruno, Color texture analysis based on fractal descriptors, Pattern Recognition 45 (2012) 1984–1992.
  • Azencott et al. (1997) R. Azencott, J.-P. Wang, L. Younes, Texture classification using windowed Fourier filters, IEEE Transactions on Pattern Analysis and Machine Intelligence 19 (1997) 148–153.
  • Gonzalez and Woods (2006) R. C. Gonzalez, R. E. Woods, Digital Image Processing (3rd Edition), Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 2006.
  • Weszka et al. (1976) J. S. Weszka, C. R. Dyer, A. Rosenfeld, A comparative study of texture measures for terrain classification, IEEE Transactions on Systems, Man and Cybernetics 6 (1976) 269–285.
  • Kim and Park (1999) J. K. Kim, H. W. Park, Statistical textural features for detection of microcalcifications in digitized mammograms, IEEE Transactions on Medical Imaging 18 (1999) 231–238.
  • Manjunath and Ma (1996) B. Manjunath, W. Ma, Texture features for browsing and retrieval of image data, IEEE Transactions on Pattern Analysis and Machine Intelligence 18 (1996) 837–842.
  • Daugman and Downing (1998) J. Daugman, C. Downing, Gabor wavelets and statistical pattern recognition,

    in: M. A. Arbib (Ed.), The Handbook of Brain Theory and Neural Networks, MIT Press, Cambridge, MA, USA, 1998, pp. 414–420.

  • Idrissa and Acheroy (2002) M. Idrissa, M. Acheroy, Texture classification using Gabor filters, Pattern Recognition Letters 23 (2002) 1095–1102.
  • Guo et al. (2010) Z. Guo, L. Zhang, D. Zhang, Rotation invariant texture classification using lbp variance (lbpv) with global matching, Pattern Recogn. 43 (2010) 706–719.
  • Ojala et al. (2002) T. Ojala, M. Pietikäinen, T. Mäenpää, Multiresolution gray-scale and rotation invariant texture classification with local binary patterns, IEEE Transactions on Pattern Analysis and Machine Intelligence 24 (2002) 971–987.