ACCURATE AND FAST PUPIL LOCALIZATION USING CONTRAST STRETCHING, SEED FILLING AND CIRCULAR GEOMETRICAL CONSTRAINTS

Iris segmentation is the most contested issue in the iris recognition system, since noise and poor image quality can significantly affect accuracy of iris localization stage. Therefore, very careful attention has to be paid for the segmentation process if only an accurate result is expected. This study presents a new method for precise pupil detection capable of handling the unconstrained bad acquisition conditions especially those related to low contrast or to the non-uniform brightness caused by the position of light sources, specular reflection, eyelashes and eyelids. Contrast stretching (normalization) technique is used for handling the variations in contrast and illumination in an iris image by stretching’ the range of intensity values. Next, the local integration is applied on the enhanced image, this process will enhance the contrast level between the existing white and black areas of the image; this will useful to compute the optimal threshold value required to perform a successful image binarization for the purpose of isolation of the pupil region, the seed fill algorithm is used as region growing method to segment the binary image and allocate the pupil as a circular black segment with biggest area, the approximate pupil center is detected then for removing the specular reflection, the pupil is filled with black color using a simple filling method. Finally a circle fitting algorithm is used for precisely allocating the circular pupil region by the fact that richer iris textures are not closer to the pupil boundary. A set of tests was conducted on 2,655 iris images which were downloaded from CASIA V3.0-interval standard dataset; the test results indicated that the proposed method had subjectively 100% accuracy rate with pupil localization, process satisfy the real time constraints even when dealing with images have very different brightness or contrast conditions or they contain eyelashes artifacts.


INTRODUCTION
With the increasing emphasis on security, automated personal identification based on biometrics has been receiving extensive attention over the past decade. Biometrics aims to accurately identify each individual using various physiological or behavioral characteristics, such as fingerprints, face, iris, retina, gait, palm-prints and hand geometry (Jain et al., 1999;Zhang, 2000). Recently, iris recognition is becoming an active topic in biometrics due to its high reliability for personal identification (Jain et al., 1999;Mansfield et al., 2001;Daugman, 2003).
Iris localization is a key step in iris recognition; it isolates the iris part in eye image by detecting both the inner and outer boundaries of iris area. The overall performance of an iris recognition system is highly related to the localization accuracy. The accurate pupil Science Publications JCS detection, as the inner iris boundary, is the most important and the first step in iris localization (Kheirolahy et al., 2009). Numerous methods were proposed to locate the pupil; they based on the fact that the pupil edge can be estimated as circular shape. (Daugman, 1993;2004) proposed an integro-differential operator to localize both iris boundaries and Wildes (1997); used Hough transform after edge point's detection to localize iris. Both methods represent the most common methodology, being proposed with several minor variants in (Wang and Mei, 2006). Other famous iris localization algorithms are based on using Hough transform with combination of Canny edge detection (Masek, 2003;Ma et al., 2004) and with Haar wavelet transform (Cui et al., 2004).
However, accurate pupil features detection is still a challenging problem. Besides, most of the above methods are computationally intensive because they based on edge detection and finding the pupil and iris boundary using Hough transform, which involves two drawbacks. Firstly, they are computationally intensive, because the quantity of data needed to be processed is very large. Secondly, they require threshold values to be chosen for edge detection and this may cause critical edge points being removed, which may resulting in failure to detect circles. Further, most of the iris segmentation methods areas focus primarily on the accurate detection of iris areas which are captured in a closely controlled environment. Both systems of Daugman (1993) and Wildes (1997) require a strict image quality control, such as illumination and position. If these necessities are not satisfied completely, the feature extraction and matching may be greatly influenced.
The objective of our work is to detect pupil boundary efficiently and accurately. Commonly, eye image, without preprocessing, used to detect pupil boundary. This takes more time to search pupil boundary. Moreover, if eyelids and eyelashes present in the eye image and they appear with low intensity value then the existing methods may produce erroneous result in pupil boundary. When the intensity difference between sclera and iris is high, threshold preprocessing may not detect only the pupil region, it also over detects some iris region. Almost, all of the earlier methods are sensitive to specular spot reflection. So, in this study, we address the above mentioned limitations of pupil boundary detection.

Overview
The proposed algorithm for the detection of the precise pupil boundary start from the stage of iris image enhancement for improving the poor contrast of the degraded image, this will help us to reach a near optimal threshold value automatically according to existing variation in intensity of the eye parts. Then, morphological image processing operators are used to determine the edge of pupil with its center and radius; this operation consists of the tasks: Pupil area detection (segmentation), Approximate Pupil center and radius Determination, Removing specular reflection and finally, Pupil boundary localization.

Iris Image Enhancement
This stage is very important to improve eye image before performing iris segmentation stage, since contrast and illumination show significant variations from iris image to other one, in our proposed method, we have used a contrast stretching (normalization) process that adjusts the relative brightness and darkness of objects in the image to improve their visibility. Since, a highcontrast image spans the full range of Gray-Level (GL) values; therefore, a low-contrast image can be transformed into a high-contrast image by remapping or stretching the graylevel values such that the histogram spans the full range. Contrast stretching is often referred to as the Dynamic Range Adjustment (DRA). The simplest contrast stretching method is linear mapping that maps the lowest gray level G min in the image to zero and the highest value G max in the image to 255 (for an eight-bit image), with all other gray levels remapped linearly between zero and 255; this will produce a highcontrast image that spans the full range of gray levels.
One of the easy ways for determination of the best values (G min and G max ) is that based on accumulative histogram, which is generated by finding the total number of pixels whose gray values are between zero and each gray level. Then, the values for G min and G max can be calculated for each image using a predefined cutoff fraction parameter (i.e., percentages) of the accumulative histogram. If the gray-level histogram is given by H (GL), then the accumulative histogram is given by Equation (1): Then, the H(GL) is scanned upward from 0 until the first intensity value with contents above the cutoff fraction is met; this defines G min . Similarly, the intensity histogram is scanned downward from 255 until the first intensity value with contents above the Science Publications JCS cutoff fraction is found, this defines G max . For achieving better results by contrast stretching, we set the cutoff fraction parameter to 0.04, Fig. 1. Each image's pixel img(x,y) is scaled using the following linear mapping Equation (2): The new gray-level histogram H′(GL) of the enhanced image will cover the full contrast range. Due to expansion in the range of pixels gray values (to be within 0 to 255), many of the histogram elements was appeared zero and 255 values. So, to manipulate this problem, we replace these pixels (zero and 255) with suitable values depending on the next and previous neighbor pixels values, to gain histogram as shown in Fig. 2.

Thresholding an Enhancement Grayscale Image (Binarization)
Since, pupil is the largest black area in the intensity image, its edges can be detected easily from the binary image, using suitable threshold. So, image thresholding is used for extracting the significant or desired part of an image and removing the unwanted parts or noise. Thresholding selects pixels that have a particular value, or those within a specified range. Since the pupil is typically darker than the iris and the iris darker than the sclera, based on this assumption, we have use intensity thresholding technique to binaries iris image. Histogram irregular, as shown in Fig. 2(c) inhibits automatic localization of threshold, so we must perform smoothing for image histogram H′ new (GL) to determine the perfect threshold in easy way as shown in Fig. 2(d).
A reasonable threshold value T is determined from the smoothed histogram H′ smooth (GL), through searching for minimum gray level value within a specified range of this H′ smooth (GL) and assume the index of this gray level as threshold. Then, all intensity values in the gray image below or equal T are changed to 0 (black) and those above T are changed to 255 (white), as follows Equation (3): where, Img′(x,y) is the intensity value at location (x,y), Img Bin (x,y) is the mapped pixel value and T represents threshold. This process transform a gray image to binary image and efficiently segments the pupil from the rest of the image as shown in Fig. 3. In most cases, the above method does very well and efficiently segments the pupil from the rest image. In some situations, reflection spots may located on the pupil edge, for such case the pupil boundary points cannot allocated correctly, which of course degrades the accuracy of the detected pupil center and radius, as shown in Fig. 4. In order to overcome this problem, the resultant binary image (0, 255) is passed through the mean filter which smoothen the binary image and is thus useful to isolate the noisy pupil's edge points, then using thresholding again to mapping the binary image Img Bin (x,y) to new binary image Img′ Bin (x,y) as follow Equation (4):

Detection Pupil Area
Since the pupil was identified as having the largest black area (based on the number of pixels) in the binary image, so, the proposed method makes scan to allocate the largest black segment in the binary image. The block segments are collected individually by scanning the image pixels and call the seed fill algorithm on every found black pixel to collect the connected (4connectivity) pixels in which the black pixel belongs to, then, the system checks if this segment is the largest black segment in order to save the collected pixels coordinates in an array, as shown in Fig. 3(d1 and d2) and Fig. 4(d), here, we only consider the sub binary image whose its borders determined by the equations given follow, this makes the detection pupil process faster and more accurate, Fig. 3(c1 and c2) Equation (

Approximate Pupil Center and Radius Detection
From the collected pupil points coordinates, the location of the iris can be determined. However, the collected pupil pixels give a good starting point toward the assessment of pupil center. The first step toward finding the actual pupil radius is to find initial pupil center. By scanning the black pixels of the segment to identify the minimum (left side) and maximum (right side) locations, which are x min and x max respectively, as shown in Fig. 5. Then, the midpoint of the border point's coordinates of the left and right side of the pupil segment is determined and considered as the center abscissa (xc), that is Equation (9) Similarly, we scan the collected segment to identify the minimum (top side) and maximum (bottom side) locations, which are y min and y max respectively. Then, obtain the midpoint of the border point's coordinates of the top and bottom side of the pupil segment as the center longitudinal that is Equation (10) So, the coordinates (xc, yc) are considered as the initial coordinates of the pupil center. From these center coordinates we can obtain the x-radius (R x ), y-radius (R y ) and then calculate the average radius (R) as follow Equation (11 to 13): ( )

Removing Specular Reflection
Usually, specular reflection appears as the brightest area in the iris image and almost has maximal intensity values. However, specular reflections are the major cause of errors in segmentation. Iris images from CASIA V3.0 database have several specular reflection spots (eight spots and their neighbors), as in Fig. 6(a). In order to remove the specular spot reflections, the pupil is filled with black color, horizontally and vertically from outside to inside, replace each found white pixel color with black color, starting from the segment boundary point till reaching the center of pupil. Figure 6 gives an example of reflection removable.

Pupil Boundary Localization
After determination of initial center and radius of the pupil segment and removing the existing specular spot reflections on the pupil segment, now, we can determine the actual center and radius of the pupil by finding the best fitted circular mask on the pupil segment using circle fitting algorithm.
For the pupil boundary, we make the circle containing the largest number of pupil boundary points; taking (x c , y c ) as the initial center and take R Init as the initial radius, in order to reduce the searching time, starts searching the pupil boundary at a point of the 80% distance relative to the initial pupil radius from the center. The algorithm try to fit a circle in the pupil segment starting by the circle with the initial pupil center point and radius, then increase the radius by 1 and checks if the circle still inside the pupil and if it is not it tries to move the circle to the left, right, up, down and to the other four diagonal directions, if any of them work, the algorithm will continue to increase the radius and if it is not then the algorithm will stop.
The circle passing the largest number of boundary points is the most in line with the boundary circle and the corresponding radius is the radius R of the boundary fitting circle, also returns the center position of the fitting circle. Figure 7 shows pupil boundary.
The pupil boundary points may include points on the intersection of the pupil with the eyelashes and this will invalidate the basic assumption of the pupil model as a Circular Shape (C.S.) and it will introduce an error in the determination of boundary fitting circle, as shown in Fig.  8. So, to check if the pupils after the determination of its boundary satisfy the circular shape or not, we use the following criteria: where, R is the assessed pupil's radius using the above mentioned steps method the Area in Equation (14), will be represented by total number of pupil segment. If the value of C.S. is nearly equal to (12.5), this indicates that pupil is have a circular shape, as shown in Fig. 7 but if the value of C.S. is far from 12.5, this indicates that pupil is not a circular shape, in this case we try to recalculate pupil radius by lying bottom-top scan of the pupil segment as shown in Fig. 8(c) and get the total black pixels in each line reaching to the line that its total black pixels is equal to the total black pixels of the next neighbor lines and consider this line as the diameter of the pupil segment, see Fig. 8(e), then determine the new radius as (diameter/2) and recalculate the new pupil center according to this new radius. After that, the fitting circle algorithm is applied to obtain the boundary depending on the last calculated radius and center, as shown Fig. 8(f).

RESULTS AND DISCUSSION
Many tests have been carried out to evaluate the efficiency of the proposed method. CASIA-IrisV3 (CASIA, 2006) Interval image databases is adopted. Several of these iris images database are challenging. The CASIA-IrisV3 iris image database is released by the Institute of Automation, Chinese Academy of Sciences. It contains 2,655 iris images with a resolution of 280×320 pixels that taken from 249 subjects for their left and right eyes. These images are more challenging in terms of illumination changes, blurred images and eyelids/eyelashes occlusions than the original CASIA-IrisV1 database. In this study, we have presented accurate and fast pupil detection for iris biometrics. There are five major contributions. Firstly, we developed an enhancement image method for getting a uniform distributed illumination and better contrast. The best results of contrast stretching were obtained when set the cutoff fraction parameter to 0.04. The enhanced results helped us to get the proper threshold value automatically using the variance of intensity for the central part of the image. Figure 9 shows examples of failed and successful cases of segmentation stage when using different cutoff fraction parameter. Secondly, the seed fill algorithm was utilized to detect pupil segment as the largest dark area in the binary image and then a rough assessment for the pupil center and radius is made from the pupil segment which provides important phase for subsequent processing. Thirdly, since the specular reflections will inevitably destroy the structure of the pupil, we used a simple reflection removal method to exclude specularities in the input images. Fourthly, introduced pupil detection process uses a circle fitting algorithm. The method is not the same as Hough transform and it can reduce the computational cost greatly. Fifthly, removing the effect of potential occlusion of the dark segment caused by eyelashes, Table 1. Shows the results of Pupil detection of our proposed method using CASIA V3.0-interval database compared with other methods.

JCS
Finally, the average processing time of various detection pupil processing steps was 0 ms. These processing times have been determined for various iris images which have different pupil size. These results were obtained by running the pupil localization process using visual basic 0.6 on a computer platform has 2.4 GHz Core i5 processor.

CONCLUSION
Pupil detection is the key step in iris localization, in this study a new approach for the precise pupil detection is presented. A set of mathematical morphological operators with suitable enhancement and threshold have been applied to eye image. The test results have shown that: (i) the capability of the proposed method to deal with noisy and low quality images including nonuniform illumination. Enhancement by contrast stretching can compensated the brightness effect and adjusts the overall image brightness and the local brightness of the objects in the image to improve their visibility depending on set the cutoff fraction parameter to 0.04. This enhancement step was vital to overcome the difficulties facing the binarization task by thresholding; which arises in case of person having dark iris image. (ii) Image enhancement leading to gain an optimum threshold value to perform image binarization for isolation the actual pupil region in a more accurate pupil segmentation method. (iii) The problem of an accurate pupil boundary allocation due to the existence of large eyelashes near or very close to the pupil and the problem of the effect of reflection spots, that can occur within the pupil region especially when located on the pupil edge. (iv) The morphological features based method is more simple and fast because it deals with binary images instead of gray scale. Finally, designing of low complexity segmentation algorithm that results in reduced pupil localization time without scarifying accuracy. Extensive experiments are performed on CASIA V3.0.