Cellular Automata Applied in Remote Sensing to Implement

Cellular Automata Applied in Remote Sensing
to Implement Contextual Pseudo-fuzzy
Classification
Moisés Espı́nola1, Rosa Ayala1 , Saturnino Leguizamón2 ,
Luis Iribarne1 , and Massimo Menenti3
1
Applied Computing Group, University of Almerı́a, Spain
Regional Faculty, National Technnological University, Mendoza, Argentina
Aerospace Engineering Optical and Laser Remote Sensing, TUDelft, Netherlands
2
3
Abstract. Nowadays, remote sensing is used in many environmental
applications, helping to solve and improve the social problems derived
from them. Examples of remotely sensed applications include soil quality
studies, water resources searching, environmental protection or meteorology simulations. The classification algorithms are one of the most important techniques used in remote sensing that help developers to interpret
the information contained in the satellite images. At present, there are
several classification processes, i.e., maximum likelihood, paralelepiped
or minimum distance classifier. In this paper we investigate a new satellite image classification Algorithm based on Cellular Automata (ACA),
a technique usually used by researchers on complex systems. There are
not previous works related to satellite image classification with cellular automata. This new kind of satellite image classifier, that improves
the results obtained by classical algorithms in several aspects, has been
validated and experimented in the SOLERES framework.
1
Introduction
Remote sensing is the most relevant science that allows us the acquisition of
information about the surface of the land and environmental information values
without having actual contact with the area being observed [14]. This science
can be used in many environmental applications, helping to solve and improve
the problems derived from them. Examples of remotely sensed applications include soil quality studies, water resources searching, environmental protection
or meteorology simulations, among others.
The classification algorithms are one of the most important techniques used
in remote sensing that help developers to interpret the information contained in
the satellite images. The aim of satellite images classification is to divide image
pixels into discrete classes (spectral classes). The resulting classified image is
essentially a thematic map of the original image [15]. These algorithms have
reached a great advance in the last years. The analysts use the classification
algorithms to interpret the information contained in the satellite images. In the
literature, there are different procedures to classify satellite images.
S. Bandini et al. (Eds.): ACRI 2010, LNCS 6350, pp. 312–321, 2010.
c Springer-Verlag Berlin Heidelberg 2010
Cellular Automata Applied in Remote Sensing
313
In spite of the great number of classifiers that exist, there are several researchers studying new classification methods because there is not a 100% efficient classifier. In this paper we propose a new procedure for the classification of
satellite images. The new classification Algorithm based on Cellular Automata
(ACA) uses this technique for the assignment of the satellite image pixels to the
different spectral classes.
The rest of the paper is structured as follows. Section 2 describes the basic
features of the spectral and contextual image classification algorithms. Section 3
describes the basic aspects of cellular automata and the classical applications in
remote sensing. In section 4 we focus in the use of cellular automata to classify
satellite images (ACA algorithm). Section 5 shows the results obtained with the
application of ACA in the SOLERES framework. Finally, in section 6, we finish
the paper exposing future work.
2
Spectral and Contextual Classification of Satellite
Images
Common classification procedures can be broken down into two divisions based
on the method used: supervised and unsupervised classification, whose classification methods are based on the spectral properties of the satellite image pixels.
The use of supervised or unsupervised procedures depends of the analyst knowledge about the zone to study [1].
In an unsupervised classification algorithm, the analyst only specifies the number of classes, and the algorithm groups the satellite image pixels based solely
on the numerical information in the data. In these algorithms, the analyst has
not to know the zone to study. There are many unsupervised classification algorithms, like the Isodata algorithm, K-means, Leader, MaxiMin or Neural Model
unsupervised.
In a supervised classification, the analyst selects samples of the different elements to identify the pixels in the image. In this method the analyst knowledge
of the study area determines the quality of the training set. Then, the computer
uses an algorithm to compare each pixel in the image to these signatures. The
pixels are labelled as the class most closely resembles digitally [2]. There are
several types of statistics based supervised classification algorithms. Some of the
more popular ones are parallelepiped, minimum distance, maximum likelihood,
Fuzzy supervised, neural model and Mahalanobis distance, among others.
These spectral supervised and unsupervised classification algorithms works
well in non-noisy images and if the spectral properties of the pixels determine the
classes sufficiently well. However, if noise or substantial variations in class pixel
properties are present, the resulting image classification may have many small
(often one-pixel) regions which are misclassified. Several standard approaches
can be applied to avoid this misclassification, like using contextual information in
addition to spectral data. There are several contextual classification algorithms
that use mean values, variances or texture description from a pixel neighbourhood to improve that pixel spectral classification.
314
M. Espı́nola et al.
Fig. 1. (a) General classification process description, (b) Supervised classification results and (c) Unsupervised classification results
3
Classical Aplications of Cellular Automata in Remote
Sensing
A cellular automaton consists of a grid of cells distributed normally in a matrix
form that has the following basic features:
– States: each cell can take an integer value that corresponds to its current
state. There is a finite set of states.
– Neighbourhood: a set of cells that interact with the current one.
– Transition function f : takes as input arguments the cell and neighbourhood states, and returns the new state of the current cell.
– Rules: the transition function f uses a set of rules that specify how the
states of the cells change.
– Iterations: the transition function f is applied to each cell of the grid across
several iterations.
When we work with satellite images, we consider each pixel of the image as
a cell of the cellular automaton and we normally take the 8 around pixels as
neighbourhood (Moore Neighborhood), although we can take the 4 around pixels
(von Neumann Neighborhood) or even the 24 around pixels (Extended Moore
Neighborhood).
The changes in cells states occur in discrete time form. In each iteration the
whole cells are checked and rules are applied trought the transition function f
to each cell taking into account the around neighbourhood to change its state.
Therefore cellular automata have an evolution process because the cells are always changing their states across the different iterations. From this point of view,
in recent years cellular automata have become a powerful tool applied in remote
sensing especially to simulate satellite images processes.
Cellular Automata Applied in Remote Sensing
315
Fig. 2. (a) Von Neumann Neighborhood, (b) Moore Neighborhood and (c) Extended
Moore Neighborhood
Cellular automata have been used in applications that experiment a time
evolution like environmental simulations, complex social phenomena modelling,
images treatment in artificial vision, criptography of digital information and
artificial intelligence in mathematical games.
Cellular automata have been widely used for environmental simulations like
modelling land features dynamics [4], simulating snow-cover dynamics [5], modelling vegetation systems dynamics [3], detecting vibrio cholerae by indirect
measurement [6], simulating forest fire spread [11][12], modelling biocomplexity
of deforestation process [10] and simulating land use dynamics [8]. Besides we
can find cellular automata used to model complex social phenomena like studying plant population spread in controllable systems [16]. Cellular automata
have been also applied in image enhancement (noise-reduction filters) and edges
detection [13].
So far cellular automata have been applied on satellite images mainly to simulate processes. In the next section we propose an important and novel alternative:
cellular automata applied in remote sensing to implement contextual classification algorithms of satellite images.
4
Classification of Satellite Images with Cellular
Automata (ACA)
The application of cellular automata in satellite image classification processes
is a new field of investigation. In this paper we propose a methodology to implement a new satellite image classification Algorithm with Cellular Automata
(ACA) that classifies the pixels based on mixed spectral and contextual information, and thus improves the classification results obtained by another classical
classification algorithms. This kind of Information System is designed to solve
environmental problems, facilitating risk analysis and improving environmental
stewardship. There are not previous works related to satellite image classification with cellular automata, only works about cellular automata applied in
post-classification processes [9] and pattern classification [7].
ACA has been implemented with Visual C++ and Erdas Imagine 9.1 Toolkit,
and is a new classification algorithm based on a multistate cellular automaton
316
M. Espı́nola et al.
that allows the user to enter new states and rules to the cellular automata in
order to customize as much as possible the satellite images classification process.
In order to implement ACA we must take into account the following correspondences between a cellular automaton and the basic elements of a generic process
of satellite image classification:
– Each cell of the grid corresponds to a pixel of the image.
– Each state of cellular automaton will represent a different class of the final
classification.
– The neighbourhood of each cell will consist of the 8 nearest cells (Moore
neighbourhood).
– The transition function f must correctly classify each pixel of the image
based on the features of the current cell and its neighbourhood, using mixed
spectral and contextual data.
In order to customize the classification process, the satellite image expert analyst
has to set the desired behavior of ACA through introducing the states and rules
of the cellular automaton that defines the results wanted. For example, we have
implemented a version of ACA that try to get 3 objectives. Primarily to improve
the results obtained by supervised classification classical algorithms (eg minimun
distance) using contextual information. Secondly to get a pseudo-fuzzy classification based on spectral proximity hierarchies, where in each iteration of cellular
automata only those pixels that are within a spectral distance of the center of
its class are classified (this distance is increased in each iteration). And thirdly,
to obtain a detailed list of the noisy and uncertain pixels, and classes edges detection. So we have assigned 3 states for each of the cells: [class][quality][type],
where each state can take the following values:
– [class]=training set classes, noiseClass (noisy pixels) or emptyClass (pixels
not classified yet).
– [quality]= 1..numIterations (number of iterations of CA)
– [type]= focus (not border pixels), edge (border pixels), uncertain (caotic
pixels) and noisy (noise detection).
This version of ACA is based on the minimum distance supervised classifier, so
the cellular automaton uses the results of minimun distance spectral classification
to apply its rules. The transition function f take into account the following inputs
to apply the cellular automaton rules:
– Neighbourhood states: states of actual pixel neighbourhood.
– Spectral classification classes of minimun distance algorithm: classes set of
actual pixel (maybe one class, or several classes if is an uncertain pixel that
is near two or more classes).
– CA iteration: actual iteration of CA.
The cellular automaton rules that gets the 3 objectives that we have described
above are the following:
Cellular Automata Applied in Remote Sensing
317
– If the number of spectral classification classes is 1, and the neighbourhood
class states are emptyClass or the same as actual pixel:
[class][quality][type] = spectralClass, CAiteration, focus
– If the number of spectral classification classes is 1, and the neighbourhood
class states are different than actual pixel class:
[class][quality][type] = spectralClass, CAiteration, edge
– If the number of spectral classification classes is 1 and the spectralClass is
noiseClass:
[class][quality][type] = majority class of the neighbourhood, CAiteration,
noisy
– If the number of spectral classification classes is bigger than 1:
[class][quality][type] = majority class of the neighbourhood among the dubious classes, CAiteration, uncertain
In the next section we show the results obtained with this particular version of
the ACA algorithm.
5
Results and Conclusions
In this section we analyze the results obtained with this version of ACA algorithm. Tests have been carried out on a multispectral Landsat image with 7
layers, with a total resolution of 301x301 pixels (90,601 total pixels). The spatial
resolution of each pixel is 30x30 meters.
Fig. 3. Complete satellite image of Almerı́a and Granada provinces (Spain)
The image corresponds to a region of the provinces of Almerı́a and Granada
(Spain), and the image pixels were classified in a total of 8 classes. This is a region
with a significant percentage of uncertain pixels and a minimum percentage of
noisy pixels. With this version of ACA we have achieved the following objectives:
318
M. Espı́nola et al.
a) Improving the quality of the pixels classification using contextual
information.
ACA improves the results obtained by another supervised classification algorithms, because in the classification process of each image pixel it uses the
around pixels as neighbourhood in the transition function f, and this relationship among the image pixels offers an optimal final classification. In this
experiment we compared the classification results obtained from the classical minimum distance algorithm with ACA based on minimum distance.
To compare these algorithms have calculated the confusion matrix between
the two classified images and an image from either ranked fieldwork. The
comparation can be seen in the following two tables:
Table 1. Confusion matrix of the minimum distance algorithm
Class
Class
Class
Class
Class
Class
Class
Class
1
2
3
4
5
6
7
8
Class 1 Class 2 Class 3 Class 4 Class 5 Class 6 Class 7 Class 8
0
0
0
0
0
0
0
0
789
6080
355
0
0
0
0
0
1247
0
9447
532
0
0
0
0
1547
0
2
11998 242
0
0
0
1555
0
0
52
12827
3
27
0
1027
0
0
47
281
8330
35
1
1513
0
0
0
250
12
13050
0
1396
0
0
0
0
66
381 11242
Table 2. Confusion matrix of the ACA algorithm
Class
Class
Class
Class
Class
Class
Class
Class
1
2
3
4
5
6
7
8
Class 1 Class 2 Class 3 Class 4 Class 5 Class 6 Class 7 Class 8
0
0
0
0
0
0
0
0
123
6326
611
54
62
11
18
14
179
0
9648
963
240
74
73
37
205
0
5
12282 777
252
174
73
194
0
1
58
13254
88
713
135
123
0
0
47
291
8699
161
330
130
0
0
1
254
16
13724 661
217
0
0
0
0
68
407 11966
The number of well classified pixels in each algorithm is obtained by adding
the values in the main diagonal of the table. In the case of the minimum
distance algorithm there are a total of 72.974 well classified pixels (80%
well classified), and in the ACA algorithm there are a total of 75.899 well
classified pixels (84% well classified). Therefore the quality of the final classification has improved by 4%, also we have grouped in a single algorithm a
preclassification process(noise reduction), the proper classification process
and a postclassification process(improving uncertain pixels).
Cellular Automata Applied in Remote Sensing
319
b) Obtaining a pseudo-fuzzy classification based on spectral proximity
hierarchies in feature space.
With ACA we can obtain a hierarchical classification based on spectral proximity in feature space, so that in each iteration of cellular automaton only
those pixels in the image that are within a distance from the center of its
class are classified, and this distance is increasing at each iteration. Thus,
the pixels classified in a particular iteration are more reliable than those that
fall in the next iteration, and so on.
This method of classification has similar behavior to the fuzzy classification, although not exactly alike, so we have called pseudo-fuzzy. In the
Figure 4 we show a sequence of images where we can see the results of our
image classification by dividing the process in 6 iterations of the cellular
automaton.
The assignment of colors to each class is set to gray scale, so that black
pixels are those that have not yet been classified. As you can see in the first
iteration, the number of classified pixels are quite small. These pixels are
those that are closer from the standpoint of the average spectral classes, and
therefore are more reliable. Some of these pixels even belong to the training
set chosen by the expert. In the next iterations the threshold distance to the
average of each class will increase, so that others pixels that are spectrally
farther in its class will be classified. In the last iteration, the uncertain and
noisy pixels are classified, which are often the most problematic. Thanks
to these results, experts can detect visually much more reliable problematic
Fig. 4. Pseudo-fuzzy classification with 6 iterations of cellular automaton
320
M. Espı́nola et al.
pixels in the classification process, valuable information in the process of
satellite images analysis.
c) Boundary, uncertain and noisy pixel detection.
In addition, the ACA algorithm also provides the expert with a list of border pixels of each class represented in the image as well as uncertain and
noisy pixels, in order to have more additional information related to the
classification process to improve the subsequent analysis of results obtained.
Thus, the ACA algorithm incorporates aspects of pre-sorting tasks (detection
and elimination of image noise), classification (enhanced in our case) and
postclasificacin (correction uncertain pixel) satellite imagery.
6
Future Work
Some possible future work are shown below:
a) Implementing new versions of the ACA algorithm based on new states and
rules of cellular automaton to further customize the classification process.
b) Using software agents to reduce the computational cost, touring various regions of the image in parallel.
c) Creating a Erdas Imagine pluggin that allows a custom classification based
on cellular automtata.
Acknowledgments
This work has been partially supported by the EU (FEDER) and the Spanish MEC under grant of the project I+D TIN2007-61497 “Soleres. A SpatioTemporal Evironmental Management System based on Neural-Networks, Agents
and Software Components”.
References
1. Ayala, R., Menenti, M., Girolana, D.: Evaluation methodology for classification
process of digital images Igarss 2002. In: IEEE Int. Geoscience and Remote Sensing Symposium and the 24th Canadian Symposium on Remote Sensing, Toronto,
Canada, pp. 3363–3365 (2002)
2. Ayala, R., Becerra, A., Flores, I.M., Bienvenido, J.F., Dı́az, J.R.: Evaluation of
greenhouse covered extensions and required resources with satellite images and
GIS. Almerı́a´s case. In: Second European Conference of the European Federation for Information Technology in Agriculture, Food and the Environment, Bonn,
Germany, pp. 27–30 (1999)
3. Balzter, H., Braun, P., Kühler, W.: Cellular automata models for vegetation dynamics. Ecological Modelling 107, 113–125 (1998)
4. Leguizamón, S.: Modeling land features dynamics by using cellular automata techniques. In: Proceedings of the ISPR Technical Comision 7 Mid-Term Symposium
“From pixels to Processes”, Enschede, The Netherlands, pp. 497–501 (2006)
Cellular Automata Applied in Remote Sensing
321
5. Leguizamón, S.: Simulation of snow-cover dynamics using the cellular automata
approach. In: Proceedings of the 8th International Symposium on High Mountain
Remote Sensing Cartography, La Paz, Bolivia, pp. 87–91 (2005)
6. Lobitz, B., Beck, L., Huq, A., Woods, B., Fuchs, G., Faruque, A., Colwell, R.: Climate and infectious disease: use of remote sensing for detection of Vibrio cholerae
by indirect measurement. Proceedings of the National Academic of Sciences of the
USA 97(4), 1438–1443 (2000)
7. Maji, P., Shaw, C., Ganguly, N., Sikdar, B., Chaudhuri, P.: Theory and application
of cellular automata for pattern classification. Fundamenta Informaticae 58(3-4),
321–354 (2003)
8. Messina, J., Walsh, S.: Simulating land use and land cover dynamics in the ecuadorian Amazon through cellular automata approaches and an integrated GIS. In:
Open Meeting of the Human Dimensions of Global Environmental Change Research Community in Rio de Janeiro, Brazil, pp. 6–8 (2001)
9. Mojaradi, B., Lucas, C., Varshosaz, M.: Using learning cellular automata for post
classification satellite imagery. International Archives of Photogrammetry Remote
Sensing and Spatial Information Sciences 35(4), 991–995 (2004)
10. Moreno, N., Quintero, R., Ablan, M., Barros, R., Dávila, J., Ramı́rez, H., Tonella,
G., Acevedo, M.: Biocomplexity of deforestation in the Caparo tropical forest reserve in Venezuela: an integrated multi-agent and cellular automata model. Environmental Modelling and Software 22, 664–673 (2007)
11. Muzy, A., Innocenti, E., Aiello, A., Santucci, J.F., Santonio, P.A., Hill, D.: Modelling and simulation of ecological propagation processes: application to fire spread.
Environmental Modelling and Software 20, 827–842 (2005)
12. Muzy, A., Innocenti, E., Aiello, A., Santucci, J.F., Santonio, P.A., Hill, D.: Dynamic
structure cellular automata in a fire spreading application. In: First International
Conference on Informatics in Control, Automation and Robotics, Setubal, Portugal, pp. 143–151 (2004)
13. Popovici, A., Popovici, D.: Cellular automata in image processing. In: Proceedings
of the 15th International Symposium on the Mathematical Theory of Networks
and Systems, 6p. (2002)
14. Rees, W.G.: Physical principles of remote sensing, 2nd edn. Cambridge University
Press, Cambridge (2001)
15. Schowengerdt, R.A.: Techniques for image processing and classification in remote
sensing. Academic Press, London (1985)
16. Wang, J., Kropff, M., Lammert, B., Christensen, S., Hansen, P.: Using CA model to
obtain insight into mechanism of plant population spread in a controllable system:
annual weeds as an example. Ecological Modelling 166, 277–286 (2003)