Sie sind auf Seite 1von 9

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/50384323

Evolutionary Cellular Automata for Image Segmentation and Noise Filtering


Using Genetic Algorithms

Article · January 2011


Source: DOAJ

CITATIONS READS

15 200

2 authors, including:

Okba Kazar
Université de Biskra
270 PUBLICATIONS   242 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

A Big Data Security Approach in Cloud Computing View project

Web Application Development by Formal Approach View project

All content following this page was uploaded by Okba Kazar on 19 March 2017.

The user has requested enhancement of the downloaded file.


Journal of Applied Computer Science & Mathematics, no. 10 (5) /2011, Suceava

Evolutionary Cellular Automata for Image Segmentation and Noise Filtering Using
Genetic Algorithms
1
Okba KAZAR, 2Sihem SLATNIA
Computer Science Department, University of Biskra, 07000 Biskra, Algeria
1
okbakazar@yahoo.fr, 2slatnia_sh@yahoo.fr

Abstract–We use an evolutionary process to seek a specialized In this paper, the sequential floating forward search method
set of rules among a wide range of rules to be used by Cellular for feature selection was used to select good rule sets for a
Automata (CA) for a range of tasks, extracting edges in a given range of tasks, Edges Detection in a given gray or colour
gray or colour image, noise filtering applied to black-white image, Noise Filtering applied to black-white image. Indeed,
image. This is the best set of local rules determine the future
state of CA in an asynchronous way. The Genetic Algorithm
an EvCA is applied in order to determine the best local rules
(GA) is applied to search the best CA rules that can realize the of the CA, using a GA on a population of CA candidates [1],
After this introduction, the Section 2 presents the design
best edge detection and noise filtering.
and training of the generalised EvCA approach. Edges
Keywords: Genetic Algorithms, Evolutionary Cellular Detection is reported in the Section 3. Conclusion is given in
Automata, Edge Detection, Noise Filtering. the last section.

I. INTRODUCTION II. DESIGN AND TRAINING OF THE GENERALIZED EvCA

We can understand the emergence like a phenomenon of The proposed approach takes advantage of the calculating
producing collective behaviour by a collection of interacting faculties of the CA, to transform the initial configurations
elements in a complex system. The study of evolving Cellular defined by a numerical image lattice as discrete input data in
Automata (CA) framework using evolutionary algorithms is a order to find its edges.
good example to show how evolution can create systems in The CA unit is represented by a rectangle of 9 cells. In
which emergent computation takes place. Indeed, the actions particular case of bi-colour image, the problem is to find the
of simple components with local information and best CA patterns or rules for edge detection among 251
communication give rise to coordinated global information possible patterns or rules. Otherwise, for colour image with
processing [1]. more than 02 colours; 16, 256, 16bits, 24bits, 32bits, then
In this paper, we are using Genetic Algorithms (GAs) in search domain is 2(K^8/5) patterns or possible rules, where K
order to evolve CA to perform computations that require is the image colour number and 5 is the number of
global coordination [1]. geometrical transformations.
Indeed, we are interested into CA [2], [3], [4] and the edge Within this enormous wide search domain, we look to find
detection [5]. Among a variety of researchers having the optimum packet of rules that give the best edge
investigated the proprieties of CA, we can’t miss to cite the segmentation. Thus, a manually or exhaustive search method
works of John von Neumann [6], Stephen Wolfram [7], and will consume a lot of time, effort and computing resources
John Conway [8]. CA’s are discrete dynamical systems, without guaranty to reach optimal results. Therefore, we have
which are widely applied in modelling systems in areas such to work with the inverse problem to find the optimal set of
as physics, biology, and sociology [9]. CA can be interpreted rules that give the best edge segmentation using the evolving
like a set of rules which through an Evolutionary CA search capabilities of the Genetic algorithms in Fig. 4.
(EvCA), we can find one or several appropriate rules for a The first important observation is that this wide domain of
definite problem. The idea of using one packet of rules in neighbourhood patterns can be reduced to a maximum of 8
edge detection and filtering are in the merit of Rosin [4]. indexed colours, because every CA has a neighboured of 8
Indeed, it is used in restoration of black-white images. cells, so locally it saw a maximum of 8 distinct colours
Moreover, Rosin [4] studied these best rules in details and whatever the whole number of colour in the image or around
showed the interest of each one. The result of his study other CAs, thus maximum (Domain Search) becomes
showed that a single rule can remove isolated pixels in a 2(8^8/5).
noise black-white image. Secondly, to ensure that every CA works independently
In the previous work [10] we have determined a set of whatever colour indexes, we have defined what we call
rules to detect edges in black and white images, using a GA. generic patterns:
We have found rules like 0000000001, 11111111110 that
always perform fine edge segmentation.

33
Computer Science Section

1 1 1 1 1 1 1 1 1 = 9C1 Algorithm
1 1 1 2 2 3 3 4 4 = 3C12C22C32C4 1. The input data: Input Image.
Fig. 1. Generic pattern. 2. Initialization of the GA: Construction at random of
rule packets extracted from the neighbourhood model
CA can be interpreted like a set of rules which through an figured on the whole of the image in Fig. 4.
EvCA, we can find one or several appropriate rules for a
definite problem. • Edge detection method: For each CA, the
The proposed approach named GEvCA-ED, takes a process: First, searches; among the current
population of candidate packets or rules and evolves them for packets; the similar rule according to its
multiple generations, based on measuring their matching ratio neighbourhood. Second, modifies the central
(fitness) with some of well known segmented images. pixel according to the defined transition.
The construction of packet must take in consideration • Evaluation of the edge detection result: We
some of constraints that can slow down convergence and may compute the distance between the edge
falsify the overall process. detection result and the ideal one considered to
1. Redundancy: one packet must not have rules more assess the approach. We can also evaluate the
than once. error of miss-classed pixels.
2. Contradiction: one packet must not have more than 3. Reproduction: Generate a new population by applying
one rule per patch (02 patches with different selection, crossover and mutation. We use the edge
transitions). detection described above in the evaluation process.
3. Similarity: like these coloured patterns are similar 4. The process iterates until there is no improvement in
111223344 =888115533, because they are the the objective function for a given stall limit
occurrence of the generic pattern consecutive generations, or for a fixed maximum of
C1C1C1C2C2C3C3C4C4. iterations [11].
4. Useless: packet hasn’t some rules that patch to
operate on. 5. The result: optimal packet of rules.

III. THE GENERALISED EvCA FOR EDGE DDETECTION We represent the transition rule of a CA by the
(GEvCA-ED) concatenation of the cells states of the current cell
neighbourhood to update. Then, we add the future cell state
The framework of this new method is composed of two after updating [5]. This rule (pattern) is transformed as a
stages: linear chromosome in Fig. 3.

A. Training stage
It has as objective, extracting common model rules. This
can be made by a set of handy designed templates; they have Fig. 3. CA rule notation and the chromosome representation the CA rule.
a particularity that they can be figured in any image. We have
03 generic templates (12 x 12 pixels) shown in figure 2. The rule is applied when its part neighbourhood coincides
with a patch of the same dimension on the image. Then, we
B. Building optimal packet stage replace the central pixel of the patch by the value of the
It has as objective, finding more stable rules than other future state in the rule.
extracted in the training stage. To ensure the best The correspondence between the part neighbourhood of
convergence we have to reinforce testing by some treatments the rule and a patch of the image is reduced according to the
(always by using dedicated CA rules) as, colour reduction, rotational operators (rotation to 90°, 180°, 2700, reversal
filtering before and after effective segmentation process. horizontal and vertical "flip-flop"). The rules are therefore
After all, the packet with best fitness will be the dedicated symmetrical.
base packet for image edge segmentation. Each individual of the population is represented by a
The following code describes the GA process to chromosome which is a transition vector according to a
determine the best packet of transition rules that are able to neighbourhood model. To make the CA deterministic, we
achieve the edge detection of colour images. must take in consideration the constraints listed above.
The crossover exchanges, with given probability a genetic
material between two parent chromosomes corresponding to
two CA transition rules for producing two offspring. The
mutation is a random change of gene in a given CA transition
Fig. 2. Base patterns for training stage. rule (parent).

34
Journal of Applied Computer Science & Mathematics, no. 10 (5) /2011, Suceava

1 1 1 1 1 1 2 2 2 1
1 1 1 1 1 2 1 2 2 1
1 1 1 1 1 1 1 2 2 1
1 1 1 1 2 2 1 2 2 1
1 1 2 1 2 2 3 2 2 1
1 1 1 1 1 2 3 3 2 1
1 1 1 1 2 2 2 2 2 1
1 2 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 2 1
1 1 1 1 1 1 1 2 1 1
1 1 1 1 1 2 2 2 2 1
1 1 1 1 2 1 2 2 1 1
1 1 1 1 2 1 1 2 2 1
1 1 1 1 2 2 1 1 2 1
1 1 1 2 2 1 1 1 1 1
Fig. 4. Construction of the neighbourhood model from an input image
1 1 2 1 1 2 2 2 2 1
1 1 2 1 1 1 1 1 2 1
The selection process based on the edge detection 1 1 2 1 1 1 2 2 1 1
assessment in EvCA represents an interdisciplinary process. 1 1 2 1 1 1 3 3 3 1
1 1 2 1 1 1 2 1 1 1
Let Err=nbr of pixels where (ImageED ≠ImageIdealED), 1 1 2 1 1 1 3 1 1 1
which Err and nbr are the abbreviation of error and number 1 1 2 1 1 2 3 1 1 1
respectively. 1 1 2 1 2 2 1 1 1 1
The fitness function used to assess the edge detection is 1 1 2 3 1 1 3 1 1 1
1 2 2 1 1 1 1 2 1 1
given by: 1 2 2 1 1 2 3 3 1 1
F=1–(Err/L×H) where L and H represent the image width 1 2 2 3 1 1 3 1 1 1
and height. The Err function computes the number of the 1 2 2 3 1 2 3 3 1 1
points finds non equal in the two images: the resulted image 1 1 1 2 2 2 2 2 3 1
1 1 1 2 2 2 2 3 2 1
and the ideal one. 1 1 1 1 1 1 1 1 1 1
. . . . . . . . . .
Post processing packets . . . . . . . . . .
We have an optimal packet for every tested image, but we Fig. 6. Optimal packet with 1057 Rules.
need one global optimal packet for all images, so we must
collect these packets on one packet and filtering it from We have maintained only rules which give solid contours,
redundancy, contradiction and similarity. so non figured pattern are considered background.
The Fig.6 represents the optimal packet found by the
GEvCA-ED process. On the left side we have represented IV. EXPERIMENTAL RESULTS
only a subset of the whole packet composed by 1057 rules.
On the right side we give a plotted view of the entire packet, We present both synthetic and real results in Fig. 7 and 9
where each row represents one rule and the last column of the GEvCA-ED compared to a stallion image. The
defines the transition part of the rule. following experiments are performed by using MATLAB.

A. Training stage results


The four graphs represent the convergence of evolution
process of the GEvCA-ED versus each image in the training
set.
Input Image Stallion GevCA-ED

Fig. 5. A best packet of CA rules find by GA


Fig. 7. Training Stage edge detection 1st set images.

35
Computer Science Section

Cells 0.8826 6643 137 600

Original Image Stallion Image GEvCA-ED

Cameraman Lina

A: Cameraman 96 × 96 pixels

Cells Vegetable 1
Fig. 8. Fitness evolution per generations for images Figure 8. A, B, C and D B: Lina 96 × 96 pixels

We observe a fast convergence in the case of “Cells” and


“Vegetable-2” pictures and a slow convergence in the case
“Lina” and “Cameraman” pictures. For all cases the mean
Fitness ratio is about 92%, which indicate a high robustness
of our optimal packet. Thus we can distinguish the high
quality of the GevCA-ED segmented images.
C: Cells 96 × 96 pixels
V. THE EVCA FOR NOISE FILTERING (EVCA-NF)

The second application of EvCA-NF we show noise


filtering of black-white image,
One finds a multitude of methods of noise filtering being
pressed on various algorithms [2]. The majority of these D: Vegetable 1 - 198 × 135 pixels
Fig. 9. Training stage Edge detection 2nd set images.
methods are based on calculates derivative directional. Other
methods abolishing calculation of derived are based rather on
preliminary knowledge of nature and characteristics of the
image, but these requirements limit the field of application of
the method [2].

One suggests here to erect scaffolding an alternative


method. Calling upon the evolution of a population of CA
(which uses a simple local rule) [7]. One obtains (by A. Plane - 128 × 111 pixels
emergence) after this process of evolution guided by a
measurement of affinity (quality standard of the noise
filtering), AC able to filter noise in a binary image. The
selection process based on the noise filtering assessment in
EvCA represents an interdisciplinary process. Let Err=nbr of
pixels where (ImageNF ≠ImageIdealNF), which Err and nbr
are the abbreviation of error and number respectively. B. Vegetable 2 - 253 × 254 pixels
Fig. 10. Testing stage Edge detection set images.

TABLE I EVALUATION VALUES OF THE EXPERIMENTS REPORTED IN FIGS. 8, The fitness function used to assess the noise filtering is
A, B, C, AND D.
Image Fitness Time Generation Max gen.
given by:
(sec) F=1–(Err/L×H) where L and H represent the image width
Cameraman 0.9784 5127 1808 3000 and height.
Lina 0.8745 136879 2994 3000
Vegetable 1 0.9310 9386 197 400

36
Journal of Applied Computer Science & Mathematics, no. 10 (5) /2011, Suceava

Fig. 12. A best packet of CA rules find by GA.

The Err function computes the number of the points finds


non equal in the two images: the resulted image and the ideal
one.
A. Experimental results
We present both synthetic and real results in Fig. 13 and 14
of the EvCA-NF compared to a stallion image (Median,
Gaussian and Moyenneur).

Fig. 13. Filtering Chart_small_resolution image 128×128 pixels; (a) Results


of the different filtering methods, (b) Relation between the methods of
filtering and the values of noise.

Diagrams and the percentages which they explain well the


performance of our systems of filtering by CAs compared to
the methods used. The following experiments are performed
by using MATLAB.
This experiment applied has the image chart small_
resolution with a sequence of the values of noise (0.01, 0.04,
0.07, 0.1, 0.13, 0.16, 0.19, 0.22, 0.25, 0.28, 0.31), and we
observe in its results that filtering by Cellular Automata to
produce a closer image which has the original image because
it is kept the feature of the image (image information), and
the rate of the errors of filtering by CA (14%) is smaller
compared to the tau of the errors of filter Median (32%). The
error is the number of the pixels is different between the
original image and the filtered image. As we observe as
filtering by CA is more effective for some is the value of
noise.

37
Computer Science Section

Fig. 14. Results of the different filtering methods of Lina image 256×256
pixels.
These tables represent the relation between the various
methods of filtering and the values of noise (E: Errors,
P.Noise: Percentage of noise, M.F: Method of Filtering,
S.Rule: Sequence of Rule and Pb.Noisse: Probability of Fig. 15. Relation between the methods of filtering and the values of noise.
Noise).

TABLE I REPRESENTATION OF RELATION BETWEEN THE METHODS OF FILTERING AND THE VALUES OF NOISE HAS THE LINA IMAGE.
P.Noise 0.01
0.04 0.07 0.1 0.13 0.16 0.19 0.22 0.25 0.28 0.31
F. M
E. F.CAs 551 602 694 847 1054 1223 1565 1345 1500 1765 1990
E.Median 1110 1191 1271 1362 1473 1511 1661 1822 1993 2189 2363
E.Gussian 815 891 949 1041 1163 1281 1388 1564 1799 2049 2389
E.Muyenn 1087 1168 1250 1343 1438 1486 1622 1780 1960 2150 2321

TABLE II REPRESENTATION OF RELATION BETWEEN THE METHODS OF FILTERING AND THE VALUES OF NOISE HAS THE CHART_SMALL_RESOLUTION IMAGE.
P. Noise
0.01 0.04 0.07 0.1 0.13 0.16 0.19 0.22 0.25 0.28 0.31
F.M
E. FCAs 117 146 188 202 290 345 424 532 624 576 665
E.Median 477 480 480 517 578 603 666 720 796 859 950
E.Gussian 326 329 346 353 382 401 432 551 577 622 715
E.Muyenn 473 476 473 498 545 550 623 654 726 775 843

38
Journal of Applied Computer Science & Mathematics, no. 10 (5) /2011, Suceava

TABLE III REPRESENTATION OF RELATION BETWEEN THE RULES OF FILTERING BY CAS AND THE VALUES OF NOISE HAS THE LINA IMAGE
P. Noise 0.01 0.04 0.07 0.1 0.13 0.16 0.19 0.22 0.25 0.28 0.31
S. Rules
Rule 1 199 666 1249 1950 2797 3684 4496 5399 6427 7401 8435
Rule 2 172 500 938 1486 2323 3141 3940 4804 5833 6834 7881
Rule 3 217 480 790 1226 1849 2498 3222 3940 4840 5692 6649
Rule 4 234 459 724 1140 1702 2308 2929 3614 4469 5316 6210
Rule 5 314 460 640 852 1205 1596 2065 2609 3293 4049 4810
Rule 6 356 474 620 816 1069 1357 1819 2292 2927 3623 4393
Rule 7 424 528 650 818 1037 1266 1655 2064 2572 3098 3830
Rule 8 467 569 670 835 1032 1223 1586 1951 2434 2939 3595
Rule 9 473 579 681 841 1033 1212 1575 1925 2369 2845 3483
Rule 10 476 578 683 845 1036 1217 1575 1894 2338 2807 3385
Rule 11 531 615 704 877 1046 1217 1575 1894 2338 2807 3385
Rule 12 548 616 704 868 1019 1200 1546 1865 2312 2776 3364

TABLE IV REPRESENTATION OF RELATION BETWEEN THE RULES OF FILTERING BY CAS AND THE VALUES OF NOISE HAS THE CART_SMALL_RESOLUTION
IMAGE.
Pb.Noise 0.01 0.04 0.07 0.1 0.13 0.16 0.19 0.22 0.25 0.28 0.31
S. Rules
Rule 1 76 342 536 774 1038 1314 1564 1872 2004 2245 2513
Rule 2 29 125 241 403 592 841 1064 1359 1486 1759 2031
Rule 3 39 125 239 398 586 835 1057 1351 1479 1746 2016
Rule 4 34 109 207 322 446 662 812 1072 1211 1404 1625
Rule 5 34 109 203 319 447 651 805 1060 1197 1398 1615
Rule 6 106 163 201 260 326 485 598 773 826 1033 1175
Rule 7 106 162 199 254 323 476 589 773 816 1021 1162
Rule 8 115 171 207 261 321 422 521 704 724 891 1008
Rule 9 115 171 203 259 319 416 516 699 724 878 996
Rule 10 115 170 202 257 316 413 503 687 702 850 941
Rule 11 114 156 191 226 283 382 488 650 679 822 924
Rule 12 114 141 161 194 239 333 431 598 628 755 868

V. CONCLUSION The EvCA-NF shows the degree of specialization aspect


of CA of noise filtering.
In this paper, our proposed model of CA applied for a The emergence phenomenon is clearly appeared in the fact
range of tasks, edge detection and noise filtering provide that some rules are able to detect edges and filter noise in a
insights on how evolutionary processes can be used to given class of image.
discover local patterns that give rise to optimal edge The GA process doesn’t necessary converge closely to the
detection and noise filtering of a given colour image. stallion edged and filter noise image; firstly because CA uses
Indeed, one of such local structural properties was common global rules, secondly there is the influence of the
identified via the GA allowed us to analyze the evolutionary matching function used as fitness measure in the GA process.
emergence of sophisticated computation. So the choice of the stallion edged and filter noise image for
In this paper, we have demonstrated that the edge complex images may not be for a “perfect” edged and filter
detection and noise filtering can be interpreted like an noise image.
evolutionary phenomenon of a set of CA, controlled by the GEvCA-ED and EvCA-NF generally give weak
best packets of rules applied on a category of image. segmentation and filtering results respectively for textured
Indeed, the image can be modelled by a CA which we can images and consumes a lot of time during training stages, but
implement easily. it gives better results than the others punctual segmentation
Thus, we can say that for a given global computation task, methods like Canny filter and filtering noise methods like:
the GA evolves the best packet of rules which each one has Median, Gaussian and Moyenneur.
its robustness value. GEvCA-ED always gives enclosed boundaries and
The GEvCA-ED shows the degree of specialization aspect discards thin regions.
of CA of edge detection.

39
Computer Science Section

CA’s operates synchronously with the same global rules [5] J. Canny, A. Computational Approach to Edge
without interference or exchanging information, thus they Detection. IEEE Trans. on PAMI, Vol. 8, No. 6, 1986.
always produce the same robust edges. The most advantage [6] J. Von Neumann, Theory of Self-Reproducing
of the GEvCA-ED and EvCA-NF is that it gives a quasi- Automata. University of Illinois Press, 1966.
perfect packet for synthetic and low detailed images. [7] S. Wolfram, Cellular Automata and Complexity.
Addison-Wesley, 1994.
REFERENCES [8] M. Gardner, The fantastic combinations of John
Conway’s new solitaire game “life”. Scientific
[1] Melanie Mitchell, James P. Crutchfield, and Rajarshi American, pages 120-–123, 1970.
Das, Evolving Cellular Automata with GAs: A Review [9] Y. Bar-Yam, Dynamics of Complex Systems. Reading,
of Recent Work, in Proc. of the first Inter. Conf. on Ev. MA: Addison- Wesley, 1997.
Comp. and its Appl. (EvCA’96) Moscow, 1996. [10] Sihem Slatnia, Mohamed Batouche and Kamel E.
[2] N.Ganguly, B.K. Sikdar, A. Deutsch, G. Canright, P.P. Melkemi, Evolutionary Cellular Automata Based-
Chaudhuri, A Survey on Cellular Automata , Project Approch for Edge Detection, WILF 2007, LNAI 4578,
BISON (IST-2001-38923), 2001. pp 404-411, 2007.
[3] M. Halbach and R. Hoffmann, Implementing cellular [11] Uli Grasemann, Risto Miikkulainen, Effective Image
automata in fpga logic. in Proc. 18th Int. Parallel and Compression using Evolved Wavelets, The University
Distributed Processing Symp. , pp. 258a-258a, 2004. of Texas at Austin, GECCO’05, Washington, DC. June
[4] P.L. Rosin, Training Cellular Automata for Image 25-29, 2005.
Processing, IEEE Trasaction On Image Processing, Vol.
15, No.7, JULY2006.

Dr. Okba Kazar was born at Biskra (Algeria) in 1962. He obtain his master degree in 1997 from the Constantine University
(Algeria) working on artificial intelligence field. He obtained his PhD degree from the same university in 2005. He is member
of editorial board of the SJI Journal. He is an author of some publication in international journals and session chair in
international conferences. He is interested to the multi-agents systems and their applications, advanced information systems,
Web services, semantic Web. Dr. Okba KAZAR actually is an associate professor at computer science department of Biskra
university. Kazarokba..e-monsite.com

Sihem Slatnia was born at the city of Biskra, Algeria. She has followed her highs schools studies at the university of Biskra,
Algeria at the Computer Science Department and obtained the engineering diploma in 2004 on the work “Diagnostic based
model by Black and White analyzing in Background Petri Nets”, after that she has obtained Master diploma in 2007 (option:
Artificial intelligence and advanced system’s information), on the work “Evolutionary Cellular Automata Based-Approach for
Edge Detection”. Also, she has contributed by an article at WILF 2007 about the segmentation based Cellular automata. Ms
Slatnia, is an assistant professor at the University of Biskra.

40

View publication stats

Das könnte Ihnen auch gefallen