Consultar ensayos de calidad
Niching methods with the breeder genetic algorithm for geometric primitive extraction: preliminary results
NICHING METHODS WITH THE BREEDER GENETIC ALGORITHM
FOR GEOMETRIC PRIMITIVE EXTRACTION: PRELIMINARY RESULTS
ABSTRACT
Geometric primitive extraction or localization is a widely used method in image
recognition tasks. A geometric primitive is a curve or surface, which can be
described by an equation with a number of free parameters. A major problem
faced in geometric primitive extraction deals with the characteristics of the
search space: multimodal, nonlineal, noisy and highly dimensional; and with the
possible variations of shapes of primitives. Genetic algorithms (GAs) [1] offer
a domain-independent approach suitable for working with such complex problems.
The Breeder Genetic Algorithm (BGA) [8] is a GA inspired by the science of
breeding animals. This paper explores the use of a BGA with niching methods [7]
to find multiples primitives at the same time. Niching methods extend GAs to
domains that require the location and maintenance of multiple solutions. We
investigate two types of niching techniques, the so called sharing and crowding
methods. Our simulations have shown a clear superiority of crowding in this
application. Therefore we developand test this method further to consider the
use of truncation selection in the BGA with eye fundus images. . Index terms:
genetic algorithms, computer vision, feature extraction.
1. INTRODUCTION
A genetic algorithm (GA) is an optimization approach
based on the evolutionary metaphor [1]. Previous studies on why and how the GA
works have proceeded along different lines, most arguments are based on the
Schema Theorem [5]. Mhlenbein [8] have criticized this theorem and proposed the
Breeder Genetic Algorithm (BGA). BGA is inspired by the science of breeding
animals. In this algorithm, each one of a set of virtual breeders has the task
to improve its own subpopulation. Like human breaders a BGA uses truncation
selection.
In this paper, a geometric primitive is a curve or surface, which can be
described by an equation with a number of free parameters. It has recently been
shown that extracting the best geometric primitive from a given geometric data
is equivalent to finding the optimum value of a cost function [11]. Geometric
data are an unordered list of points in two or three-dimensional Cartesian
space, which can be obtained by edge detection process. Once it is understood
that primitive extraction is such an optimization problem, the use of GA
suggests itself. To use GA, the parameter vector must be encoded in chromosome
form. The parameter vector is what we have into thechromosomes to represent the
primitive's parameters. In our experiments a chromosome representation of a
primitive by a minimal subset of member points is used. Such a subset is the
smallest number of points necessary to define a unique instance of a primitive
[12]. The Hough Transform (HT) is the must common method of primitive
extraction [6]. Roth and Levine [12] mentioned that the main disadvantage of
the GA approach relative to the HT is that the GA must be applied repeatedly to
the geometric data for each extracted primitive, while the HT extracts all the
primitives at once. Our alternative find a number of primitives at the same
time by using the idea of niches described in GA literature [7]. We investigate
two types of niching techniques, the so called sharing and crowding methods.
Our simulations have shown a clear superiority of crowding in this application.
Therefore we develop and test this method further to consider the use of
truncation selection in the BGA with eye fundus images.
2. A BRIEF DESCRIPTION OF NICHING METHODS FOR GENETIC ALGORITHMS
Users utilize population size (n), crossover probability (pc) and mutation
probability (pm) to maintain multiple solutions in the simple GA. Some studies
utilize selection
pressure as an additional control parameter [3]. (In fitness-proportionate
selection, selection pressure can be controlled through the use of fitness scaling ). Theexpected number of one individual on a new
generation is a function of the probability of that individual to be selected
and the number of individuals in the current generation. If the relation
between the expected number of the best individual and the rest of individuals
is high then in the new generation will appear only the best individual, even
if it is a poor solution. The evolution stops because the lack of diversity.
This is called premature convergence. Niching methods extend the application
genetic algorithms to domains that require the location and maintenance of
multiple solutions [1]. 2.1 Sequential location of niches Instead of slowing a
GA’s convergence, one could encourage it to converge quickly and then start
another one. Goldberg suggests restarting GAs that have substantially
converged, by reinitializing the population using both randomly generated
individuals and the best individuals from converged population [2].
Reinitialization is somewhat similar to using high rate of mutation. Controlling
the parameters of convergence of the population we remove the selected
primitive from the image and continue searching with the residual data while it
is sitnificant [12]. The main disadvantage of this approach is that the GA must
be applied repeatedly to the geometric data for each extracted primitive but it
offers good results when the number of local optima is not high [9].2.2.
Sharing (SH) The objective function of an arbitrary
individual can be altered in proportion with the vicinity average with other
individuals of the population. This strategy is known as sharing. It causes the
dispersion of highly similar individual in the search space. It also opposes to
the early convergence. The behavior of the function that allows to share the
space could be defined as follows [7]
comparison between individuals.
phenotypes or genotypes of
2.3 Crowding (CW) Crowding methods attempt to replace population members in a
way that mantain diversity. They insert new elements into a population by
replacing similar elements. Two individuals are similar if the distance (either
Euclidean or Hamming) between them is equal or less than some value taken as
threshold. We remove similar individuals from the population This
is known as crowding with elimination (CE) [7]. Alternatively some authors
favor the mating of distant individuals instead of removing similar ones [4].
This is known as crowding with mating restrictions (CMR) [7]. A crossover
strategy where new individuals are created only if they are better than their
parents is used to favor the formation of niches. This is known as
deterministic crowding (DC) [7].
2. GEOMETRIC PRIMITIVE EXTRACTION
3. In our experiments, the images were passed through an edge detection process
using the sobel operator [10] toextract the silhouette of the objects. All the
points that belongs to the contour of the image were stored in an array as an
ordered par (x,y) and the chromosome codify a
primitive using the index of the points in the array. For primitive extraction,
an individual geometric primitive is a population member. The parameter’s
vector is encoded in the chromosome by the smallest number of points necessary
to define a unique instance of a primitive called
minimal subsets. In the case of the circle, as we have three parameters (the
radius and the coordinates of it center) then only three points are required to
determine its equation. This is the number of genes (ng=3). By randomly
selecting a minimal subset from the geometric data, the parameter’s vector must
be determined solving an equation system (inversion problem). The fitness
function (3) then counts the number of points from the geometric data that fall
within a fixed-distance (dth) of the geometric primitive:
f ' (i ) =
f (i )
∑ sh
j =1
n
(1)
f ( p1 ,, pn ) = ∑ s(rpi )
i =1
n
(3)
 − d α if d ≤σ σ (2). where:
sh(d ) =  1   0 otherwise  In the above equation (2), α is a
constant (typically set to 1) used to regulate the shape of the sharing
function. The computation of d(i,j) is carried out based on the Euclidean
distance or Hamming distance by means of a
( )
where:
 1 s(rpi ) =   0if otherwise
rpi ≤ dth
(4)
and rpi is the smallest distance from the point data pi to the parameter vector
of the selected primitive. The larger the value of this cost function, the more
significant the primitive. After each evaluation of the generation, we
applied the sharing function within the fitness function using phenotypes and
the euclidean distance. We also used crowding with elimination. A random
sampling of minimal subsets was performed to create the initial population of N
individuals. The selection method used was the “truncation selection” with the
T% of the population for mating and discrete recombination without mutation was
used to create new geometric primitives. According to the fitness function,
primitives with larger radius will be favored. To avoid this we introduce a
normalization that take the fitness function as a relation between the number
of points describe before and the number of points that must appear in the
image for the primitive described by the selected parameter’s vector. We also
introduce a parameter that consider the environment
where the geometric primitive will be found. For example, if we look for all
primitive with bounded radius we take minimal and maximal radius from the size
of the image reducing in this way the search space. 3.1 Crowding with
elimination and truncation selection. Mahfoud [7] studied this crowding
technique inpresence of proportional selection. As our algorithm uses
truncation selection have been necessary the following modification: Instead of
apply the elimination in all the generation it is carried out only in the set
of selected individuals. If the number of removed individuals is not bigger
than some threshold, then the new generation is generated from the reduced
selected set. Otherwise, individuals are added from the best unselected
individuals provided that they are different enough to the selected ones.
Fig. 1. Test Images: a)Original
b)Edge. Table I shows the percent of times that BGA found the three primitives
(P1, P2, P3) shown in Figure 2 by the two methods (SH and CE). Table I. Goal percents SH(%) CE(%) P2 P3 P1 P2 0.7 0.5 0.9 0.9 0.9 0.5
1 0.9 1 0.8 1 1
N 40 60 80
P1 0.9 1 1
P3 0.5 0.9 1
Fig. 2. Good results Figure 3 shows a group of primitives considered as
bad results in the cases that BGA could not find all the primitives.
4. PRELIMINARY RESULTS
We run BGA to find all the geometric primitives present in Figure 1 for
different number of individuals in the initial generation (N=40, 60, 80). BGA
runs 10 times foreach number of individual, used 10 generations and T% = 0.2.
Fig. 3. Bad results. We have
also obtained good results with more complex images (Figure 4) for the
objective analysis of the retinal fundus morphology, particularly the disc-cup
ratio,widely used in glaucoma diagnosis [9]. We use
only 1000 evaluations to extract both primitives.
Figure 4. Retinal fundus morphology.
[7] S. W. Mahfoud. Niching methods for genetic algorithms.
IlliGAL Report No.95001 May 1995. [8] H. Mhlenbein, D.
Shlierkamp-Voosen. The sience of breeding and its
applications to the breeder genetic algorithm. Evolutionary
Computation, 1:335-360, 1994 [9] A. Pascual, L. Diago, R. Santieteban, B.
Rivera. Determination of disc-cup ratio in eye fundus
images. In Proc. World Congress of Medical Physics and
Biomedical Engineering. NICE, France, p726, 1997. [10] W. K.
Pratt. Digital Image Processing. 2nd ed. New York:
John Wiley & Sons, Inc.; 1991:597-606. [11] G. Roth, M. D. Levine. Extracting geometric primitives. Computer Vision,Graphics Image Processing: Image Understanding.1993; 58:
122. [12] G. Roth, M. D. Levine. Geometric primitive
extraction using a genetic algorithm. IEEE Trans. on
PAMI. Vol. 16 No.9: 901-905, 1994. [13] L. Diago, A. Pascual, A. Ochoa. A genetic algorithm for automatic determination of disc-cup ratio
in eye fundus images. In Proc. III Iberoamerican
Workshop of Pattern Recognition. TIARP'98, Mexico DF,
p461-473, 1998.
5. DISCUSION AND CONCLUSIONS
For better use of the space we have shown this simple example that illustrates
a clear superiority of CE over SH (see Table I). CE found all primitives in 10
generations with N=60,and SH found only two. Both
methods with N=80 found all the primitives. For the primitive shown in Figure
1b the contour information is not complete. Sometimes BGA fails (see Figure 3b)
because the fitness function presented in this paper has several limitations
when the information is not complete. For the retinal fundus morphology Diago
et.al [13] used secuential location of niches running GA for the determination
of the disc-cup ratio in eye fundus images. They described the disc and the cup
by the equation of an ellipse and run GA once with 40 generations of 20
individuals for the disc and again for the cup with the same parameters. We
reduce the number of evaluation for the BGA using CE from 1600 to 1000.
REFERENCES
[1] D. Goldberg Genetic algorithms in search optimization and machine learning.
Addison-Wesley; 1988. [2] D. Goldberg Sizing
population for serial and parallel genetic algorithms. In
Proc. 3th International Conference on genetic algorithms, 70-79, 1989.
[3] D. Goldberg, B. Korb, D. Thierens Toward a better understanding of mixing
in genetic algorithms. J. of the Society of Instrument and
Control Engineering, 32(1), 10-16, 1993 [4] A. Hill and C. J. Taylor. Model-based image interpretation using genetic algorithms.
Image and Vision Computing, vol. 10, no. 5, June 1992. [5] J. H. Holland. Adaptation in Natural and Artifitial Systems. Univ. of Michigan
Press, Ann Arbor . [6] J. Illingworth, Kitter, A survey of the Hough
Transform. Computer Vision, Graphics Image Processing. 44
No.1 1988.
NICHING METHODS WITH THE BREEDER GENETIC ALGORITHM FOR GEOMETRIC PRIMITIVE
EXTRACTION: PRELIMINARY RESULTS
ABSTRACT
Geometric primitive extraction or localization is a widely used method in image
recognition tasks. A geometric primitive is a curve or surface, which can be
described by an equation with a number of free parameters. A major problem
faced in geometric primitive extraction deals with the characteristics of the
search space: multimodal, nonlineal, noisy and highly dimensional; and with the
possible variations of shapes of primitives. Genetic algorithms (GAs) offer a
domain-independent approach suitable for working with such complex problems.
The Breeder Genetic Algorithm (BGA) is a GA inspired by the science of breeding
animals. This paper explores the use of a BGA with niching methods to find
multiples primitives at the same time. Niching methods extend GAs to domains
that require the location and maintenance of multiple solutions. We investigate
two types of niching techniques, the so called sharing and crowding methods.
Our simulations have shown a clear superiority of crowding in this application.
Therefore we develop and test this method further to consider the use of
truncation selection in the BGA with some eye fundus images. .
Política de privacidad
Matemáticas |
|
Antecedentes históricos de la estadística |
Integrales por partes en matlab |
Geometría - puntos, rectas, planos, polígonos, poliedros, curvas, superficies |
El teorema de thevenin, teorema de superposición, teorema de reciprocidad - ELTEOREMA DE THEVENIN, TEOREMA DE THÉVENIN, LA UTILIDAD DEL |
Analisis de la relación entre el IPC y el índice de remuneraciones para el periodo 2013-2014 |
Contisuonalismo - como se aplica el constructivismo en matematicas |
Comunicacion social - la etica del publicista, la publicidad en venezuela |
El paso intermedio esencial - Nociones matematicas basicas |
Interpolación y extrapolación |
Funciones de la trigonometria en la vida diaria - punto de referencia |
|
|
|
|
|
|