Processing the Segmentation Stage of an Iris Recognition System Through Evolutionary Algorithm

The automatic recognition of individuals through the iris characteristics is an efficient biometric technique that is widely studied and applied around the world. Many image processing stages are necessary to make possible the representation and the interpretation of the iris information in an iris recognition system. The first processing stage should be the segmentation of the iris region in an eye image. A new iris segmentation method based on evolutionary algorithms is proposed and described in this work. The new method applies a special implementation of the called Memetic Algorithm which is used here to find the circles that represent the external iris border and the pupil border in an edge map. The efficiency of the proposed method was compared to the efficiency of a method which uses the Circular Hough Transform, a well known algorithm employed to find circles in an edged image. Images from a public database were used to evaluate the algorithms. Experimental results show that the innovator idea of using evolutionary algorithm for iris segmentation has an encouraging performance.


I. Introduction
T HE growing concern with security and access control to places and sensitive information has contributed for the increased utilization of biometric systems for automatic human identification.The iris stands out as a biometric element, since its structure possesses great richness of details which enables the construction of extremely reliable and accurate systems.
The iris recognition process is relatively complex and involves several processing stages: firstly, the localization of the iris region in an eye image, then, the normalization of the iris region to deal with dimensional inconsistencies and finally, the feature encoding process and the matching stage.This work proposes the utilization of evolutionary algorithms to execute the first processing stage, the localization, or segmentation of the iris.
The algorithm of any iris recognition system receives an image of an eye, as the one shown in Figure 1.The pupil Fig. 1.Eye image from the UBIRIS database [1] border and the external border of the iris, that together define the iris region, present a near elliptical contour.Nevertheless, the most traditional researches on iris recognition approximate them to circles with minimal loss in performance.Consequently, circle detection algorithms are usually applied to process the iris localization.
Investigating the iris localization methodologies in the literature, it is possible to identify two major strategies on which those methodologies are based.Some methods are template-based and usually involve the maximization of some equations.Otherwise, they are boundary-based and demand the construction of an edge map for a later application of some geometric form-fitting algorithm.
The most important boundary-based methods apply the Circular Hough Transform to find circles in an edge map, which was first suggested by Wildes [5].This localization methodology was used, with several small variations, in many works such as [6], [7], [8] and many others.This work will propose a boundary-based methodology to segment the iris.In order to assure its validity, the proposed method is compared to the classical boundarybased Wildes' approach [5].
In the next section, the method proposed by Wildes for iris localization is briefly explained.In section III, the new method of iris localization will be presented and, subsequently, considerations concerning Memetic Algorithms (MAs) will be made in section IV.In section V, the implementation details of the proposed method using MA will be described including a description of the utilized local search mechanism in subsection V-A and the definition of the MA parameters in subsection V-B.Finally, in section VI, the evaluation of the proposed method will be detailed and then, the proposed method is compared to the Wildes' method.Conclusions are presented in section VII.

II. Wildes' Method
Wildes [5] proposed an automatic segmentation algorithm based on the Circular Hough Transform (CHT) [9].The first step is to convert the gray-scaled eye image into a binary edge map.The construction of the edge map is accomplished by the Canny edge detection method [10] with the incorporation of gradient information.Wildes suggested to weight the vertical and horizontal gradients to allow ranges of orientation.Gradient was biased in the vertical direction for external iris boundary detection with the aim of avoiding interferences from the eyelids.For pupil detection, vertical and horizontal gradients were equally weighted.
The CHT is able to recognize the circles present in an edge image and can be used to obtain the parameters that define the circle that represents the pupil border and the circle that represents the external iris border.These parameters are the radius and the coordinates of the circle center.
The Hough procedure requires the generation of a vote accumulation matrix with the number of dimensions equal to the number of parameters necessary to define the geometric form.For a circle, the accumulator will have 3 dimensions.
Each edge pixel with coordinates (x, y) in the image space is mapped for the parameters space determining two of the parameters (for example, x c and y c ) and finding the third one (for example, r) which resolves the circle equation (x − x c ) 2 + (y − y c ) 2 = r 2 .As a result, the point (x c , y c , r) is obtained in the parameters space which represents a possible circle in the image.
At each set of parameters obtained (x c , y c , r), the value of the accumulator in this position A(x c , y c , r) is incremented, i.e., a vote is attributed to that position.When all the pixels have been processed, the highest values of the accumulator A (i.e. the position that has received the highest number of votes) will indicate the parameters of probable circles in the image.
The radius of the external border of the iris and the one of the pupil have a different average size, hence, the detection of those two circumferences is carried out separately, i.e., it is necessary to apply the whole algorithm to detect the external iris circle and then, repeat it for the detection of the pupil.

III. Proposed Method
In this section, the fundamentals of the proposal are described and the utilization of evolutionary algorithms is justified.As well as the CHT used by Wildes, the proposed method demands that the original image passes through an edge detection algorithm.
There are several edge detection techniques in the literature and, as well as in the Wildes' approach, the Canny method [10] was employed in this work.It is necessary to obtain a binary edge image as that shown in Figure 2. In this figure, the white pixels represent edge pixels and the black ones, the pixels which do not belong to an edge.
The characteristics of the edge map depend on the threshold parameters of the edge detection algorithm.So, these parameters must be properly adjusted to guarantee that the most important edge information will be adequately enhanced.
This work does not have the purpose of detailing the edge detection process and neither of investigating the influence of the edge detection method and its parameters.The parameters were adjusted to generate edge maps that contain the most relevant edge information.
As suggested by Wildes [5], only vertical edges were detected for external iris border localization, whereas vertical and horizontal gradients were equally weighted for pupil localization.
From Figure 2, one notices that the pupil and the iris contours are apparent.Suppose that, using a geometric figure of a circle (imaginary circle), one wishes to overlap, on the edge image, the highest quantity of white pixels (edge pixels) possible.It is intuitive that, to reach this objective, the imaginary circle should be plotted onto the pupil or on the external border of the iris.
From this principle, it is possible to find the two desired circles through a scanning on the edge image.This scanning consists of varying the parameters of the imaginary circle into the image limits and, for each set of parameters (x c , y c , radius), to plot the corresponding circle on the edge image and to count the quantity of edge pixels that are overlapped.Thus, in the end of the scanning, the imaginary circle that has overlapped more edge pixels, is considered to be the contour of the pupil or the iris.
The search for each one of the desired circles must be carried out separately.The images of the database used (UBIRIS [1]) have a resolution of 200 pixels along the horizontal direction (coordinate x) and 150 pixels along the vertical direction (coordinate y).For those images, it can be considered that the radius of the pupil ranges from 5 to 36 pixels while the radius of the iris ranges from 40 to 71 pixels.Hence, to implement a complete scanning, the coordinate x c must vary from 1 to 200, and for each assumed x c , the coordinate y c must vary from 1 to 150.Moreover, for each pair of center coordinates (x c , y c ) the radius must vary from 5 to 36 for a pupil search or from 40 to 71 for an iris search.
Analyzing this procedure, one observes that, to find the external border of the iris, it is necessary to consider 200 * 150 * (5 − 36) = 930.000imaginary circles, and to find the pupil, it is necessary to consider 200 * 150 * (40 − 71) = 930.000imaginary circles.Under these conditions, this procedure is impracticable, as it demands intense computational processing.This is a kind of problem for which there are many possible solutions and a vast search space.Some heuristic techniques are capable of approaching these problems.In this work, Memetic Algorithms were employed to find the parameters of the iris and pupil circles in an adequate time, making the process less computationally demanding.

IV. Memetic Algorithms Description
The called Memetic Algorithms (MAs) combine concepts of "local search" with the other operators typically used on Genetic Algorithms (GAs) that are inspired on Darwin's theory of evolution.Darwin established that, in a biological evolutionary process, after many generations, the population evolves according to the principles of natural selection and the survival of the fittest.Memetic algorithms take into consideration not only the "genetic" evolution of individuals, but also a form of "cultural" evolution that is generally accomplished by a local search algorithms [11].
The pseudo-code 1 contains the main steps of the computational implementation of the memetic algorithms.Firstly, in line 3, a population of individuals is generated randomly and stored in the variable P op.The number of individuals in the population is P opSize.Each individual is represented by a chromosome, which is constituted by a code that represents a solution to the problem.All the generated individuals should be evaluated and a value is associated to each one of them in order to represent their fitness, which means, how well the solution fits the problem in question.The evaluation is carried out on line 5.
Lines 6 to 21 show the steps for creating the population of the next generation.The first step is the "Elitism", which is used to improve the convergence of the algorithm.It consists of holding back the n best individuals in each generation.
To complete the new population, some individuals are selected for reproduction.The selection mechanism takes into consideration their fitness, so that an individual has a selection probability proportional to its fitness.Once two individuals are selected (lines 9 and 10) their genes are recombined through the crossover operators with a probability of "CrossoverProbability".To achieve that, a "RandomNumber1" between 0 and 1 is generated and if it is smaller than "CrossoverProbability" the crossover is executed and two new individuals are created (lines 13 and 14).The last genetic operator is the mutation, which alters the value of one or more genes of the chromosome chosen randomly with a small probability of "MutationProbability" (lines 15 to 17).Mutation increases the diversity of the population and assures that any point of the search space can be reached.
The two new individuals are added to the new population.When the new population is complete, a local search procedure is executed (line 20) for each individual.The local search algorithm evaluates the individuals in a neighborhood defined by a mechanism of neighborhood generation and if a fitter individual is found, it substitutes the previous individual and is added to the new population.A pseudo-code of a GA can be obtained from the pseudo-code 1 by simply excluding line 20.
The whole procedure is repeated until the stop criterion is satisfied.The stop criterion can be the number of generations, the execution time or an acceptable value of fitness.
The application of MAs to the iris localization is described in the next section.

V. Implementation of the Proposed Method
Using Memetic Algorithms An implementation of a memetic algorithm has been utilized to solve the aforementioned problem.
First, it is necessary to define a structure for the chromosomes, which will represent possible solutions to the problem.A 17-bit binary representation is used, and each gene of the chromosome is assigned a value 0 or 1; the first 6 bits (or genes) refer to the coordinate x c for the circle center, the next 6 bits refer to the coordinate y c of the center and the last 5 bits represent the radius of the circle.
The 6-bit structure makes possible to represent 64 different values of x c and y c .As mentioned before, the size of the images is 200x150, but, in general, the iris is positioned in the central part of the eye image, thus, it is not necessary to look for the centers of the iris and the pupil in the extremities of the image.Therefore, the coordinate x c is considered to be in the range of 69 to 132 and the coordinate y c is considered as being in the range of 44 to 107.The radius is represented by a 5-bit structure and so, 32 different values can be obtained.For the pupil, the 32 different values are between 5 and 36, and for the iris, they are between 40 and 71.
Another extremely important step is the definition of a fitness function that assigns a fitness score for each individual.The number of edge pixels that match the circle represented by the chromosome defines the fitness score for that individual.Thus, the greater the number of matched pixels, the fitter an individual is.
The algorithm must generate an initial population representing the initial search space.The generation of the initial population is carried out by randomly assigning one binary value to each gene of a chromosome.
Two populations of individuals have been generated, one consisting of candidates to represent the external border of the iris, and the other to represent the pupil border.These populations are processed independently.
Two common genetic operators have been used: onepoint crossover and flip mutation.In the first case, a pair of individuals is selected from the population and their chromosomes are trimmed at a random position; this yields two The local minima issue that often occurs during the performance of a GA.
One notices that the imaginary circles, which represent the solution in question, are very close to an optimal solution, but the evolutionary algorithm could only generate an individual with these optimal characteristics after many generations.This is exactly where a local search becomes advantageous and accelerates the convergence.
The neighborhood of the solution could be investigated by shifting the center of the circle to the right and to the left (x coordinate), upwards and downwards (y coordinate) and, for each of these variations, the radius should be ranged.However, this form of local search is computationally expensive, especially when the population contains a great number of individuals.
For that reason, in order to lessen the computational effort of the local search, a strategy for reducing the neighborhood has been proposed and implemented, which guides the coordinates of the circle.Visually, one notices that the solution in Figure 3 is such that the circle touches the pupil border in a certain extension, i.e. some pixels of the imaginary circle are coincident with pixels of the pupil border.This information might be useful to guide the coordinates of the circle.
The local search mechanism is structured in the pseudocode 2. It is applied to all individuals of the population (line 2), and each individual contains the parameters of a circle.The circle can be divided into quadrants and two diagonal lines can be defined as shown in Figure 4.  To evaluate the fitness of an individual, the amount of edge pixels that coincide with the circle when it is plotted on the edge image is summed up.The local search algorithm verifies in which of the quadrants there have been the highest number of coincident pixels (line 5).If quadrants 1 or 3 have the highest amount of coincident pixels, the local search mechanism will vary the center coordinates x c and y c maintaining the center of the imaginary circle always along the diagonal line A (lines 7-8 and 11-12).If, on the other hand, the majority of the coincident pixels is in quadrants 2 or 4 the center of the imaginary circle must be shifted along the diagonal line B (lines 9-10 and 13-14).Therefore, to evaluate the neighborhood, the center of the imaginary circle must be shifted a number of times equal to "centerRange" along the selected diagonal (lines 16 and 17), and, for each assumed position, the circle radius must also be ranged a number of times equal to "radiusRange" (line 19 and 20).For each situation, the new fitness must be calculated (line 21).If the new fitness is higher than the original fitness, the original individual is substituted by the new individual (line 23 and 24).This process is repeated for the same individual until improvements are no longer reached during an execution (line 29). Figure 5 uses the circle that represents the pupil border to illustrate this procedure.
Figure 5(a) shows a solution obtained by the genetic algorithm.Figure 5(b) shows the effect of shifting the center of the circle.After shifting the center, the radius is also ranged, as illustrated in Figure 5(c).As there has been an enhancement in the fitness of that individual, the new individual substitutes the old one and another iteration of the local search algorithm is allowed.Once more, the amount of coincident pixels of each quadrant is evaluated, new coordinates for the center of the circle are generated (see Figure 5(d)) and new radiuses are investigated (see Figure 5(e)).The process is finished when no further enhancement in fitness is verified.
The result of this process is such that the local search alters the individual and improves its fitness score.This individual returns to the evolutionary algorithm with a better fitness compared to the one it originally had, due to the cultural evolution obtained by the local search, which exploited the available knowledge of the problem.

B. Parameters Definition
The implementation of a MA requires the definition of some variable parameters that are population size, number of generations, crossover and mutation rates.
The bigger the population size, more possible solutions are represented and higher the chance of good individuals to be present in the population.On the other hand, the increase of the population size results in the increase of the processing time.
If an evolutionary algorithm is well projected, one expects that, in a given generation, the individuals are more adapted or, at least, equally adapted to the environment than in the previous generations.Therefore, the bigger the total number of generations, the greater the convergence to a good solution, but it is evident that the processing time becomes longer.The number of generations can be the stop criterion.
The crossover rate represents the probability of a recombination of two selected individuals.If the crossover rate is 0%, the entire new generation is composed of exact copies of the parents.If it is 100%, all offspring is created by crossover.
The mutation rate, in this work, represents the probability of altering one or more genes of a chromosome.If the mutation rate is 0% nothing is changed, otherwise, if it is 100%, all individuals will suffer some alteration and the procedure will be similar to a random search.
In order to define a suitable set of parameters, the algorithm was applied numerous times to all images of the database and its behavior was analyzed while the parameters varied.During the simulation, the population size ranged uniformly from 10 to 200 individuals.For a greater number of individuals, the processing time becomes inconveniently long.The crossover and mutation rates ranged uniformly from 0% to 100%.The time of convergence of the algorithm was the metric used to evaluate the parameters.
Best results were achieved using a population of 50 individuals, a crossover rate of 90% and a mutation rate of 20%.It was verified that, for the majority of images, the iris region was correctly segmented until the fifth generation.So, the number of generations was considered equal to 8, which was used as the stop criterion of the MA.

VI. Experimental Results
Experimental tests have been carried out utilizing a total of 1201 eye images from the public and free UBIRIS database (Section 1) [1].These images were captured inside a dark room in order to minimize noise factors, specially those relative to reflections, luminosity and contrast.Even so, all images present a specular reflection near or inside the pupil region, and also, some of them are poorly focused.In general, there is a good contrast between the sclera and the external iris border but the contrast between the pupil and the iris is poor in many images, which makes the iris localization challenging.Figure 6 illustrates some examples of images from UBIRIS database.

A. Evaluation of the Proposed Method Implemented Through Memetic Algorithms
Systems based on any heuristic techniques, such as Memetic Algorithms, are non deterministic.It means that, a different solution can be obtained each time the system is simulated.After defining the parameters of the algorithm (population size = 50 individuals; crossover rate = 90%; mutation rate = 20%), the system was simulated many times.In each simulation, the algorithm was applied to all 1201 images and the number of images that were correctly segmented was summed.After all simulations, the arithmetic mean and the standard deviation of the results were calculated.
Considering all the simulations, the average number of images that were correctly segmented was 1166 from 1201 images.In an average of 13 images only the pupil border was correctly segmented and in an average of 12 images only the external border of the iris was correctly segmented.In an average of 10 images neither the pupil border nor the external border of the iris were correctly segmented.So the algorithm failed in segmenting a total of 35 images.It means that, when the algorithm is applied to images, an average 97.08% of the segmentations will be acceptable.
The standard deviation measured the spread of data about the mean and it was equal to 2.22 images.This is a small value and means that, for various simulations, the efficiency of the algorithm is always near the mean efficiency.
The results show that the method is robust enough to deal with not ideal conditions since a good efficiency rate could be achieved even with bad contrast and the presence of specular reflection in images.

B. Comparison Between the Proposed Method and the Wildes' Method
The Wildes' segmentation method, which uses the traditional Circular Hough Transform (CHT), was implemented and also applied to the same 1201 images from the UBIRIS database.This algorithm obtained success in localizing the iris region in 1119 images, which means an efficiency of 93.17%.
In 33 images only the pupil border was correctly segmented and in 19 images only the external border of the iris was correctly segmented.In 30 images neither the pupil border nor the external border of the iris were correctly segmented.The algorithm failed in segmenting a total of 82 images, which means an error rate of 6.83%.
The comparison of the results is summarized in Table I.
It is important to emphasize that, for both the proposed method and the Wildes' method, the segmentation of the pupil is harmed by the poor contrast between the pupil and the iris.This poor contrast prejudice the identification of the pupil border by the Canny operator.The wrong segmentation of the external border of the iris is generally caused by the influence of the eyelashes and eyelids in the edge map.
Another advantage of the proposed method concerns the processing time.The main problem of the Hough Transform is that it demands an intense computational effort, while the proposed method, as it converges progressively with every generation, demands much less processing effort.Therefore, the time spent to achieve segmentation is around five times shorter for the proposed method than for the Wildes method.
A common characteristic of both methods is the need of parameter adjustments for edge detection.Sometimes this may be considered a disadvantage because, if the characteristics of definition and contrast vary, the parameters must be modified.Nevertheless, one must take into consideration the fact that, for a specific application, images are usually all captured under the same conditions, and for that reason, the parameters need to be adjusted only once, guaranteeing good efficiency for the algorithm.

VII. Conclusion
The segmentation of the iris region is the first processing stage of an iris recognition system.The efficiency of this stage is essential to the success of recognition task given the fact that error rates will increase if regions that do not belong to the iris are coded and processed.
In this work, a segmentation method based on Memetic Algorithm that is an evolutionary algorithm was proposed and evaluated.
Firstly, the basic concepts of Memetic Algorithms was described and then, the implementation of the proposed method was carefully detailed.
The efficiency of the proposed method was compared to the Wildes' method, which applied the Circular Hough Transform that is a widely used technique for iris localization.
The iris images from the UBIRIS database [1] were used to evaluate both methods.Those images were chosen once they were captured under not ideal conditions and so, were challenging enough to the segmentation stage, what allows to know how those methods would perform in real situations.
Both segmentation algorithms were applied to 1201 iris images.The Circular Hough Transform was able to perfectly determine the iris region 93.17% of the images, whereas the proposed method was successful in localizing 97.08% of the irises.An additional advantage of the proposed method was that it demands around five times less computational processing.
Concluding, this work indicates that the proposed method is efficient at localizing the iris region in an image of an eye.The innovation related to the use of evolutionary algorithms to localize the iris region can be further explored in order to achieve better results.

Fig. 2 .
Fig. 2. Eye image after the application of the Canny edge detection algorithm.

Fig. 3 .
Fig. 3.The local minima issue that often occurs during the performance of a GA.

Fig. 4 .
Fig. 4. Direction of the possible diagonal lines to be selected during the local search procedure.

1 // 2 For each individual of the population 3 4 5 6 . 7 8 SelectedDiagonal = diagonal A; 9 10 SelectedDiagonal = diagonal B; 11 If 4 14SelectedDiagonal
Procedure LocalSearch(NewPop) Repeat Draw circle represented by the individual on edge image; Discover each quadrant of the circle coincides with the highest... .. amount of edge pixels; If the highest amount of coincident edge pixels is in quadrant 1 If the highest amount of coincident edge pixels is in quadrant 2 the highest amount of coincident edge pixels is in quadrant 3 12 SelectedDiagonal = diagonal A; 13 If the highest amount of coincident edge pixels is in quadrant fitness of the new ... 22 ...individual (new center and new radius) 23 If NewFitness > Fitness of the original individual 24 Original individual = New individual; is detected during a iteration.30 endFor Pseudo-code 2: Local Search Procedure.

Fig. 5 .
Fig. 5. Illustration of the local search procedure.

TABLE I
Comparison of results.