# A Novel Edge-Map Creation Approach for Highly Accurate Pupil Localization in Unconstrained Infrared Iris Images

Authors: Vineet Kumar; Abhijit Asati; Anu Gupta
Journal: Journal of Electrical and Computer Engineering
 (2016)

---

## Abstract

Iris segmentation in the iris recognition systems is a challenging task under noncooperative environments. The iris segmentation is a process of detecting the pupil, iris’s outer boundary, and eyelids in the iris image. In this paper, we propose a pupil localization method for locating the pupils in the non-close-up and frontal-view iris images that are captured under near-infrared (NIR) illuminations and contain the noise, such as specular and lighting reflection spots, eyeglasses, nonuniform illumination, low contrast, and occlusions by the eyelids, eyelashes, and eyebrow hair. In the proposed method, first, a novel edge-map is created from the iris image, which is based on combining the conventional thresholding and edge detection based segmentation techniques, and then, the general circular Hough transform (CHT) is used to find the pupil circle parameters in the edge-map. Our main contribution in this research is a novel edge-map creation technique, which reduces the false edges drastically in the edge-map of the iris image and makes the pupil localization in the noisy NIR images more accurate, fast, robust, and simple. The proposed method was tested with three iris databases: CASIA-Iris-Thousand (version 4.0), CASIA-Iris-Lamp (version 3.0), and MMU (version 2.0). The average accuracy of the proposed method is 99.72% and average time cost per image is 0.727 sec.


---

## Body

## 1. Introduction

Iris recognition [1–3] is one of the most accurate and secured methods of identifying persons among all the available biometric identification techniques. An iris recognition algorithm typically consists of three stages: iris segmentation, feature extraction, and iris-template matching. The iris segmentation is a process of localizing iris’s inner (pupil) and outer boundaries as well as detecting the eyelids and eyelashes in the localized iris. The iris segmentation is the first module in an iris recognition system, whose input is an iris image (Figure 1) captured by the image acquisition system [2]. The iris images captured under near-infrared (NIR) illuminations are preferred over visible wavelength (VW) light because the irises reveal rich and complex features in the NIR wavelengths [3, 4]. Therefore, most of the available iris databases are the NIR images [5, 6]. The quality of the iris images decides the complexity of the iris segmentation algorithms [5]. The iris images from the NIR databases can be categorized into two types: (1) ideal close-up iris images (Figure 1(a)), which are captured in the controlled conditions, such as CASIA-IrisV1 and CASIA-Iris-Interval, version 3.0, database images, and (2) noisy and non-close-up iris images (Figure 1(b)), which are captured from a distance under unconstrained environment, such as CASIA-Iris-Thousand, version 4.0 (CITHV4), database images [6]. The unconstrained or noisy iris images (Figure 1(b)) may have different types of the noise, such as specular and lighting reflection spots, eyeglasses, nonuniform illumination, low contrast, and obstructions by eyelids, eyelashes, and eyebrows [7]. One type of nonideal issue that iris images may have is the nonfrontal view, when the user is not looking ahead towards the camera.Figure 1
(a) An ideal close-up iris image from CASIA-Iris-Interval, version 3.0; (b) a noisy and non-close-up iris image from CASIA-Iris-Thousand, version 4.0 (CITHV4).
(a)
(b)In this paper, we propose a novel edge-map creation technique for the noisy NIR images that reduces the false edges drastically so that the pupil can be localized accurately and rapidly using a general circular Hough transform (CHT) algorithm. We have also implemented the CHT to find the radius and center of the pupil circle. However, the novelty of our algorithm lies in the edge-map creation technique that acts as input for the CHT. The proposed method targets the non-close-up and frontal-view NIR images that are captured in the unconstrained environments and have the noise issues as discussed previously (Figure1(b)). To examine the robustness, the proposed method was tested with three different iris databases: CITHV4, CASIA-Iris-Lamp, version 3.0 (CILV3), and Multimedia University, version 2.0 (MMUV2), available at [6]. The sample iris images from these databases are shown in Figure 4.In this paper, we considered the pupil localization, which is an important step in the iris segmentation for two reasons:(1)
In the NIR images, if the pupil were wrongly localized, the iris’s outer boundary would also be, as the iris’s outer boundary localization methods use the pupil circle parameters as inputs [7, 8].
(2)
The time consumed in the pupil localization is much more than the iris’s outer boundary localization, as described later in Section4 of this paper, because the whole eye (iris) image is processed in the pupil localization, whereas a subimage is processed for the iris’s outer boundary localization [8, 9].The remainder of the paper is organized as follows: Section2 discusses related work and Section 3 explains the proposed pupil localization method and its implementation. Section 4 presents the experimental results and discussion, whereas Section 5 concludes the work.


## 2. Related Work

The commercial iris recognition systems are typically based on Daugman [1] and/or Wildes [2] algorithms. Daugman proposed an integrodifferential operator (IDO) that acts as a circular edge detector to localize the iris boundaries, whereas Wildes method uses the Hough transform (HT) to detect the circular edges. However, these iris localization methods work under the controlled environments and their performance strongly deteriorates when dealing with the noisy data [7]. After Daugman and Wildes’s methods, the researchers have proposed various iris segmentation methods with the improved accuracy and speed for different databases. Some of the state-of-the-art iris segmentation methods along with the main techniques they use are provided in the tabular form in [10], where most of the methods are based on the Hough transform (HT) technique. Some of the recent methods to localize the irises in the noisy NIR and VW images are described in [7], [8], [11–13], and [14–16], respectively. The HT based techniques consider the iris as a circular ring and the CHT is used to detect the circles as discussed in [8, 14, 16], but the iris contours may not be the perfect circles in the non-frontal-view iris images.In the iris segmentation of the NIR images, the pupil is generally localized prior to the iris’s outer boundary because it is the dark compact region in the image and the pupil boundary is stronger than the iris’s outer boundary [7, 8]. Having localized the pupil in the image, a subimage around the pupil is processed to detect the iris’s outer boundary. The iris localization methods for the NIR images, available in the literature, localize the pupil using either the intensity thresholding based segmentation [12, 17] or the edge detection based segmentation [8, 18, 19] techniques. In the edge detection and HT based methods, first an optimized edge-map of the iris image is created to reduce the false edges in the edge-map, so that the pupil boundary can be localized accurately using the CHT as described in [8, 19]. The creation of the optimized edge-map of the iris image becomes more challenging if the images are noisy such as the CITHV4 database images. The noisy iris images are first preprocessed for removing the reflections, adjusting the nonuniform illuminations, and enhancing the contrast [7, 8, 11]. In addition, the edge-map created from the preprocessed image is further optimized to reduce the false edges. One complex approach to create the optimal edge-map for the pupil localization in the noisy NIR images is described in [8]. The researchers have used either the techniques to get the optimal edge-map of the iris image [8, 19] or the modified CHT algorithms [20–22] for localizing the pupils in the iris images. The complexity of algorithms increases in order to achieve high accuracy for noisy images, which in turn increases the computation time [11, 13].


## 3. The Proposed Pupil Localization Method

The proposed method achieves the pupil localization in the noisy NIR images in two phases: Phase1: edge-map creation and Phase 2: circle detection using CHT. The objective of Phase 1 is to prepare appropriate input for Phase 2, so that the pupil circle can be detected accurately and rapidly. In Phase 1, the edge-map of the iris images is created using a combination of different image segmentation techniques, which are thresholding, morphological processing, and edge detection. In Phase 2, a general CHT algorithm is implemented to detect a circle in the edge-map by specifying a range of radii as input. The proposed method is described in Figure 2. Phase 1 and Phase 2 of the proposed method are discussed below.Figure 2
The proposed edge-map creation technique for pupil localization: (a) an iris image from CITHV4; (b) smoothed iris image, on applying5
×
5 Gaussian filter with σ
=
1.0 on (a); (c) binary image, after thresholding (b) with T
=
40; (d) cleaned binary image, obtained from (c) using hole filling and image opening for black objects; (e) edge-detected image, on applying Sobel edge detector without thinning on (d); (f) edge-detected image, on applying Sobel edge detector without thinning on (b); (g) edge-map, obtained by combining (e) and (f) using intersection operation; (h) pupil localized iris image obtained after applying CHT on (g).


### 3.1. Phase 1: Edge-Map Creation

The pupil, eyelashes, eyelids, eyebrow hair, black eyeglass frames, and nonuniform low illumination regions are darker regions in the iris image. The presence of these dark regions other than the pupil complicates the pupil detection process if thresholding based region segmentation technique is used [7]. If the edge detection based segmentation technique is used for detecting the pupil in the iris image, many false edges appear in the edge-detected image of the iris image due to the reflection spots, eyelids, eyelashes, eyebrows, and eyeglass frames. So, neither of the segmentation techniques is able to provide an optimal edge-map input to the CHT algorithm. To create an optimal edge-map of the iris image, we use a technique in which the intersection operation (logical ANDing) is applied on the two edge-detected images obtained via the above-mentioned segmentation techniques as illustrated using Figure 5. The proposed edge-map generation technique uses the following image processing steps to get the final optimal edge-map for the pupil localization.


#### 3.1.1. Smoothing of Iris Image

The eye image is smoothed using a Gaussian filter [23, 24] of size 5
×
5 and sigma (σ) equal to 1.0. The larger filter size makes the image more blurred and reduces the pupil boundary contrast. The sigma (σ) equal to 1.0 makes the computer implementation of Gaussian filter simple. The smoothing of the iris image removes the random noise and the uneven intensities that may result in unnecessary false edges in the edge-detected iris image. It also helps in the image binarization step by reducing the false black pixels in the binary image as described later. The smoothed iris image is shown in Figure 2(b).


#### 3.1.2. Edge Detection

The Sobel edge detector without thinning operation [23, 24] is applied on the smoothed iris image. Two 3
×
3 Sobel filter masks are used to find x-derivative and y-derivative components of image gradient as described in [23]. A suitable threshold value is chosen in the edge detection so that the pupil edges, which are among the strong edges in the image, are detected and the faint edges are not. A lower threshold value may detect the iris’s outer boundary edges, which we do not want to be detected at this stage. The initial value of threshold was determined by “edge ()” function of MATLAB, which was then adjusted by simulations of database images and visualization of edge-detected images in MATLAB. The higher threshold gives fewer edge pixels and lower threshold gives more edge pixels. The final value of threshold is chosen after a number of iterations of simulation and manual inspection of edge-detected images, and then it remains constant for a given database. Figure 2(f) shows the edge-detected image after the Sobel operator is applied on the smoothed iris image (Figure 2(b)). The edge-detected image has the pupil edges and other (false) edges due to the lighting reflection spots, eyelids, eyelashes, and eyeglass frames as shown in Figure 2(f). If the CHT is applied on this edge-detected image to detect the pupil circle, it may take much computation time due to the false edges and the accuracy of the circle detection would be low.


#### 3.1.3. Image Binarization

The pupil is the dark region in the iris image. The intensity-based thresholding [23] is used to segment the pupil region. The global thresholding with threshold value (T) is applied on the Gaussian smoothed iris image to get the binarized-image (binary image) as shown in Figure 2(c). The binary image, g
(
x
,
y
), is obtained from intensity image, f
(
x
,
y
), using(1)
g
x
,
y
=
1
⟵
f
x
,
y
≥
T
0
⟵
f
x
,
y
<
T
.The initial value ofT is determined by finding average intensity of pixels in pupil region excluding reflections inside the pupil, for a few images in a given database, and then it was adjusted by performing simulations on all the database images using MATLAB and visualizing the binary images obtained after image binarization. The final value of T is chosen after a number of iterations of simulation and manual inspection of output images. This T value remains the same for all the images of a database and do not need to be computed for each iris image. The T values are different for different databases.


#### 3.1.4. Binary Image Cleanup

The objective of this step is to reduce the size of the noise due to eyelids, eyelashes, and eyebrow hair in the binary image of Figure2(c). This is achieved by applying the morphological processing on the binary image [24] as follows. The image opening operation for black objects is applied on the binary image using a structuring element of type disc of size 7
×
7. Before the image opening, a hole filling operation [25] is applied on the complemented image of the binary image to fill white dots in the pupil. The white dots in the pupil are due to the reflections caused by the light source while capturing the image. Figure 2(d) shows the cleaned binary image in which the noise due to eyelids and eyelashes is completely removed. If the noise is not removed completely after the image opening, its effective size reduces, because the black regions (i.e., noise) of eyelids along with eyelashes in the binary image are not the solid boundary compact objects like the pupil and the image opening removes the pixels at their boundaries.


#### 3.1.5. Optimal Edge-Map

The Sobel edge detection without thinning is applied on the cleaned binary image, Figure2(d), obtained because of the previous step. The resulting edge-detected image may have the false edges corresponding to the dark illumination and eyeglass frame as shown in Figure 2(e). The other false edges in Figure 2(e) could be due to the noise of eyelids, eyelashes, and eyebrow hair, if this noise was not completely removed in the previous step (binary image cleanup). The characteristic of the dark illumination is that it is not detected when the edge detection is applied on the intensity iris image as shown in Figure 2(f). Therefore, the intersection operation on the two edge-detected images, Figures 2(e) and 2(f), removes the false edges due to the dark illumination as shown in Figure 2(g). Figure 2(g) has a few false edges due to the eyeglass frame only. The edge-map in Figure 2(g) is called an optimal edge-map of the iris image as it has significantly less false edges as compared to Figure 2(e) or Figure 2(f). The intersection operation also removes completely or partially the false edges due to the noise of eyelids and eyelashes, if these false edges are present in the edge-detected image of the cleaned binary image (see Figure 3). This so happens because the noise-size of eyelids and eyelashes in the cleaned binary image is smaller than the noise-size that is detected by the edge detection on the intensity iris image.Figure 3
The proposed edge-map creation for pupil localization: (a) optimal edge-map (Image (7)) contains the pupil edges only; (b) optimal edge-map (Image (7)) contains the pupil edges and the false edges. The images in (a) and (b) are (1) an iris image from CILV3; (2) smoothed iris image; (3) binary image, obtained from (2); (4) cleaned binary image, obtained from (3); (5) edge-detected image of (4); (6) edge-detected image of (2); (7) optimal edge-map, obtained using intersection operation on (5) and (6); (8) pupil localized iris image, obtained using CHT on (7).
(a)
(b)Figure 4
Accurately localized pupils in the iris images from three databases: (a) CITHV4, (b) CILV3, and (c) MMUV2.
(a)
(b)
(c)Figure 5
Edge-map generation techniques for pupil localization: (a) thresholding based technique resulting in wrong pupil localization; (b) edge detection based technique resulting in wrong pupil localization; (c) proposed technique based on combining (a) and (b) using logical ANDing, which results in correct pupil localization.Figure3 shows that the noise of eyelids and eyelashes is present in the cleaned binary image (Image (4)), but the false edges corresponding to this noise are almost completely removed in the optimal edge-map (Image (7)) due to the intersection operation. Figure 3(a) shows an ideal case, where the false edges are completely removed and the optimal edge-map (Image (7)) contains the pupil contour only, whereas Figure 3(b) shows the case, where the optimal edge-map (Image (7)) contains a few false edges also. In Figure 3(b), the pupil in the original iris image (Image (1)) is occluded by the eyelids and eyelashes due to which the complete pupil contour does not appear in the optimal edge-map (Image (7)), but still the pupil is localized accurately by the CHT algorithm. The CHT algorithm is discussed below.


### 3.2. Phase 2: Circle Detection Using CHT

We implemented the CHT algorithm [26] to find the pupil circle radius and the pupil position in the edge-map of the iris image. The input to the CHT algorithm is a range of radii, that is, minimum and maximum radius of the pupil circle (r
m
i
n
&
r
m
a
x). At every edge-point (
x
c
,
y
c
), which is a white pixel in the edge-map, the virtual circles are drawn with different radii using (2)
x
=
x
c
+
r
∗
cos
⁡
θ
,
y
=
y
c
+
r
∗
sin
⁡
θ
.The points(
x
,
y
) generated using (2) lie on the circle’s periphery. A 2-dimensional (2D) accumulator array of size the same as the image is created and initialized to zero. The cells’ values in the accumulator array are incremented by one every time a circle passes through them. The accumulator size can also be smaller than the image size, if we can somehow estimate the position of the pupil in the image. Therefore, the accumulator size depends on the image database that we select. We used an accumulator array of size (
M
-
4
r
m
i
n
)
×
(
N
-
4
r
m
i
n
) cells for an image of size M
×
N pixels, because the pupil cannot be touching the image borders as the iris surrounds the pupil. The peak in the accumulator array is determined for every radius, which avoids a separate step of calculating the circle radius. The maximum among all the peaks gives the radius and center of the pupil circle.


## 3.1. Phase 1: Edge-Map Creation

The pupil, eyelashes, eyelids, eyebrow hair, black eyeglass frames, and nonuniform low illumination regions are darker regions in the iris image. The presence of these dark regions other than the pupil complicates the pupil detection process if thresholding based region segmentation technique is used [7]. If the edge detection based segmentation technique is used for detecting the pupil in the iris image, many false edges appear in the edge-detected image of the iris image due to the reflection spots, eyelids, eyelashes, eyebrows, and eyeglass frames. So, neither of the segmentation techniques is able to provide an optimal edge-map input to the CHT algorithm. To create an optimal edge-map of the iris image, we use a technique in which the intersection operation (logical ANDing) is applied on the two edge-detected images obtained via the above-mentioned segmentation techniques as illustrated using Figure 5. The proposed edge-map generation technique uses the following image processing steps to get the final optimal edge-map for the pupil localization.


### 3.1.1. Smoothing of Iris Image

The eye image is smoothed using a Gaussian filter [23, 24] of size 5
×
5 and sigma (σ) equal to 1.0. The larger filter size makes the image more blurred and reduces the pupil boundary contrast. The sigma (σ) equal to 1.0 makes the computer implementation of Gaussian filter simple. The smoothing of the iris image removes the random noise and the uneven intensities that may result in unnecessary false edges in the edge-detected iris image. It also helps in the image binarization step by reducing the false black pixels in the binary image as described later. The smoothed iris image is shown in Figure 2(b).


### 3.1.2. Edge Detection

The Sobel edge detector without thinning operation [23, 24] is applied on the smoothed iris image. Two 3
×
3 Sobel filter masks are used to find x-derivative and y-derivative components of image gradient as described in [23]. A suitable threshold value is chosen in the edge detection so that the pupil edges, which are among the strong edges in the image, are detected and the faint edges are not. A lower threshold value may detect the iris’s outer boundary edges, which we do not want to be detected at this stage. The initial value of threshold was determined by “edge ()” function of MATLAB, which was then adjusted by simulations of database images and visualization of edge-detected images in MATLAB. The higher threshold gives fewer edge pixels and lower threshold gives more edge pixels. The final value of threshold is chosen after a number of iterations of simulation and manual inspection of edge-detected images, and then it remains constant for a given database. Figure 2(f) shows the edge-detected image after the Sobel operator is applied on the smoothed iris image (Figure 2(b)). The edge-detected image has the pupil edges and other (false) edges due to the lighting reflection spots, eyelids, eyelashes, and eyeglass frames as shown in Figure 2(f). If the CHT is applied on this edge-detected image to detect the pupil circle, it may take much computation time due to the false edges and the accuracy of the circle detection would be low.


### 3.1.3. Image Binarization

The pupil is the dark region in the iris image. The intensity-based thresholding [23] is used to segment the pupil region. The global thresholding with threshold value (T) is applied on the Gaussian smoothed iris image to get the binarized-image (binary image) as shown in Figure 2(c). The binary image, g
(
x
,
y
), is obtained from intensity image, f
(
x
,
y
), using(1)
g
x
,
y
=
1
⟵
f
x
,
y
≥
T
0
⟵
f
x
,
y
<
T
.The initial value ofT is determined by finding average intensity of pixels in pupil region excluding reflections inside the pupil, for a few images in a given database, and then it was adjusted by performing simulations on all the database images using MATLAB and visualizing the binary images obtained after image binarization. The final value of T is chosen after a number of iterations of simulation and manual inspection of output images. This T value remains the same for all the images of a database and do not need to be computed for each iris image. The T values are different for different databases.


### 3.1.4. Binary Image Cleanup

The objective of this step is to reduce the size of the noise due to eyelids, eyelashes, and eyebrow hair in the binary image of Figure2(c). This is achieved by applying the morphological processing on the binary image [24] as follows. The image opening operation for black objects is applied on the binary image using a structuring element of type disc of size 7
×
7. Before the image opening, a hole filling operation [25] is applied on the complemented image of the binary image to fill white dots in the pupil. The white dots in the pupil are due to the reflections caused by the light source while capturing the image. Figure 2(d) shows the cleaned binary image in which the noise due to eyelids and eyelashes is completely removed. If the noise is not removed completely after the image opening, its effective size reduces, because the black regions (i.e., noise) of eyelids along with eyelashes in the binary image are not the solid boundary compact objects like the pupil and the image opening removes the pixels at their boundaries.


### 3.1.5. Optimal Edge-Map

The Sobel edge detection without thinning is applied on the cleaned binary image, Figure2(d), obtained because of the previous step. The resulting edge-detected image may have the false edges corresponding to the dark illumination and eyeglass frame as shown in Figure 2(e). The other false edges in Figure 2(e) could be due to the noise of eyelids, eyelashes, and eyebrow hair, if this noise was not completely removed in the previous step (binary image cleanup). The characteristic of the dark illumination is that it is not detected when the edge detection is applied on the intensity iris image as shown in Figure 2(f). Therefore, the intersection operation on the two edge-detected images, Figures 2(e) and 2(f), removes the false edges due to the dark illumination as shown in Figure 2(g). Figure 2(g) has a few false edges due to the eyeglass frame only. The edge-map in Figure 2(g) is called an optimal edge-map of the iris image as it has significantly less false edges as compared to Figure 2(e) or Figure 2(f). The intersection operation also removes completely or partially the false edges due to the noise of eyelids and eyelashes, if these false edges are present in the edge-detected image of the cleaned binary image (see Figure 3). This so happens because the noise-size of eyelids and eyelashes in the cleaned binary image is smaller than the noise-size that is detected by the edge detection on the intensity iris image.Figure 3
The proposed edge-map creation for pupil localization: (a) optimal edge-map (Image (7)) contains the pupil edges only; (b) optimal edge-map (Image (7)) contains the pupil edges and the false edges. The images in (a) and (b) are (1) an iris image from CILV3; (2) smoothed iris image; (3) binary image, obtained from (2); (4) cleaned binary image, obtained from (3); (5) edge-detected image of (4); (6) edge-detected image of (2); (7) optimal edge-map, obtained using intersection operation on (5) and (6); (8) pupil localized iris image, obtained using CHT on (7).
(a)
(b)Figure 4
Accurately localized pupils in the iris images from three databases: (a) CITHV4, (b) CILV3, and (c) MMUV2.
(a)
(b)
(c)Figure 5
Edge-map generation techniques for pupil localization: (a) thresholding based technique resulting in wrong pupil localization; (b) edge detection based technique resulting in wrong pupil localization; (c) proposed technique based on combining (a) and (b) using logical ANDing, which results in correct pupil localization.Figure3 shows that the noise of eyelids and eyelashes is present in the cleaned binary image (Image (4)), but the false edges corresponding to this noise are almost completely removed in the optimal edge-map (Image (7)) due to the intersection operation. Figure 3(a) shows an ideal case, where the false edges are completely removed and the optimal edge-map (Image (7)) contains the pupil contour only, whereas Figure 3(b) shows the case, where the optimal edge-map (Image (7)) contains a few false edges also. In Figure 3(b), the pupil in the original iris image (Image (1)) is occluded by the eyelids and eyelashes due to which the complete pupil contour does not appear in the optimal edge-map (Image (7)), but still the pupil is localized accurately by the CHT algorithm. The CHT algorithm is discussed below.


## 3.1.1. Smoothing of Iris Image

The eye image is smoothed using a Gaussian filter [23, 24] of size 5
×
5 and sigma (σ) equal to 1.0. The larger filter size makes the image more blurred and reduces the pupil boundary contrast. The sigma (σ) equal to 1.0 makes the computer implementation of Gaussian filter simple. The smoothing of the iris image removes the random noise and the uneven intensities that may result in unnecessary false edges in the edge-detected iris image. It also helps in the image binarization step by reducing the false black pixels in the binary image as described later. The smoothed iris image is shown in Figure 2(b).


## 3.1.2. Edge Detection

The Sobel edge detector without thinning operation [23, 24] is applied on the smoothed iris image. Two 3
×
3 Sobel filter masks are used to find x-derivative and y-derivative components of image gradient as described in [23]. A suitable threshold value is chosen in the edge detection so that the pupil edges, which are among the strong edges in the image, are detected and the faint edges are not. A lower threshold value may detect the iris’s outer boundary edges, which we do not want to be detected at this stage. The initial value of threshold was determined by “edge ()” function of MATLAB, which was then adjusted by simulations of database images and visualization of edge-detected images in MATLAB. The higher threshold gives fewer edge pixels and lower threshold gives more edge pixels. The final value of threshold is chosen after a number of iterations of simulation and manual inspection of edge-detected images, and then it remains constant for a given database. Figure 2(f) shows the edge-detected image after the Sobel operator is applied on the smoothed iris image (Figure 2(b)). The edge-detected image has the pupil edges and other (false) edges due to the lighting reflection spots, eyelids, eyelashes, and eyeglass frames as shown in Figure 2(f). If the CHT is applied on this edge-detected image to detect the pupil circle, it may take much computation time due to the false edges and the accuracy of the circle detection would be low.


## 3.1.3. Image Binarization

The pupil is the dark region in the iris image. The intensity-based thresholding [23] is used to segment the pupil region. The global thresholding with threshold value (T) is applied on the Gaussian smoothed iris image to get the binarized-image (binary image) as shown in Figure 2(c). The binary image, g
(
x
,
y
), is obtained from intensity image, f
(
x
,
y
), using(1)
g
x
,
y
=
1
⟵
f
x
,
y
≥
T
0
⟵
f
x
,
y
<
T
.The initial value ofT is determined by finding average intensity of pixels in pupil region excluding reflections inside the pupil, for a few images in a given database, and then it was adjusted by performing simulations on all the database images using MATLAB and visualizing the binary images obtained after image binarization. The final value of T is chosen after a number of iterations of simulation and manual inspection of output images. This T value remains the same for all the images of a database and do not need to be computed for each iris image. The T values are different for different databases.


## 3.1.4. Binary Image Cleanup

The objective of this step is to reduce the size of the noise due to eyelids, eyelashes, and eyebrow hair in the binary image of Figure2(c). This is achieved by applying the morphological processing on the binary image [24] as follows. The image opening operation for black objects is applied on the binary image using a structuring element of type disc of size 7
×
7. Before the image opening, a hole filling operation [25] is applied on the complemented image of the binary image to fill white dots in the pupil. The white dots in the pupil are due to the reflections caused by the light source while capturing the image. Figure 2(d) shows the cleaned binary image in which the noise due to eyelids and eyelashes is completely removed. If the noise is not removed completely after the image opening, its effective size reduces, because the black regions (i.e., noise) of eyelids along with eyelashes in the binary image are not the solid boundary compact objects like the pupil and the image opening removes the pixels at their boundaries.


## 3.1.5. Optimal Edge-Map

The Sobel edge detection without thinning is applied on the cleaned binary image, Figure2(d), obtained because of the previous step. The resulting edge-detected image may have the false edges corresponding to the dark illumination and eyeglass frame as shown in Figure 2(e). The other false edges in Figure 2(e) could be due to the noise of eyelids, eyelashes, and eyebrow hair, if this noise was not completely removed in the previous step (binary image cleanup). The characteristic of the dark illumination is that it is not detected when the edge detection is applied on the intensity iris image as shown in Figure 2(f). Therefore, the intersection operation on the two edge-detected images, Figures 2(e) and 2(f), removes the false edges due to the dark illumination as shown in Figure 2(g). Figure 2(g) has a few false edges due to the eyeglass frame only. The edge-map in Figure 2(g) is called an optimal edge-map of the iris image as it has significantly less false edges as compared to Figure 2(e) or Figure 2(f). The intersection operation also removes completely or partially the false edges due to the noise of eyelids and eyelashes, if these false edges are present in the edge-detected image of the cleaned binary image (see Figure 3). This so happens because the noise-size of eyelids and eyelashes in the cleaned binary image is smaller than the noise-size that is detected by the edge detection on the intensity iris image.Figure 3
The proposed edge-map creation for pupil localization: (a) optimal edge-map (Image (7)) contains the pupil edges only; (b) optimal edge-map (Image (7)) contains the pupil edges and the false edges. The images in (a) and (b) are (1) an iris image from CILV3; (2) smoothed iris image; (3) binary image, obtained from (2); (4) cleaned binary image, obtained from (3); (5) edge-detected image of (4); (6) edge-detected image of (2); (7) optimal edge-map, obtained using intersection operation on (5) and (6); (8) pupil localized iris image, obtained using CHT on (7).
(a)
(b)Figure 4
Accurately localized pupils in the iris images from three databases: (a) CITHV4, (b) CILV3, and (c) MMUV2.
(a)
(b)
(c)Figure 5
Edge-map generation techniques for pupil localization: (a) thresholding based technique resulting in wrong pupil localization; (b) edge detection based technique resulting in wrong pupil localization; (c) proposed technique based on combining (a) and (b) using logical ANDing, which results in correct pupil localization.Figure3 shows that the noise of eyelids and eyelashes is present in the cleaned binary image (Image (4)), but the false edges corresponding to this noise are almost completely removed in the optimal edge-map (Image (7)) due to the intersection operation. Figure 3(a) shows an ideal case, where the false edges are completely removed and the optimal edge-map (Image (7)) contains the pupil contour only, whereas Figure 3(b) shows the case, where the optimal edge-map (Image (7)) contains a few false edges also. In Figure 3(b), the pupil in the original iris image (Image (1)) is occluded by the eyelids and eyelashes due to which the complete pupil contour does not appear in the optimal edge-map (Image (7)), but still the pupil is localized accurately by the CHT algorithm. The CHT algorithm is discussed below.


## 3.2. Phase 2: Circle Detection Using CHT

We implemented the CHT algorithm [26] to find the pupil circle radius and the pupil position in the edge-map of the iris image. The input to the CHT algorithm is a range of radii, that is, minimum and maximum radius of the pupil circle (r
m
i
n
&
r
m
a
x). At every edge-point (
x
c
,
y
c
), which is a white pixel in the edge-map, the virtual circles are drawn with different radii using (2)
x
=
x
c
+
r
∗
cos
⁡
θ
,
y
=
y
c
+
r
∗
sin
⁡
θ
.The points(
x
,
y
) generated using (2) lie on the circle’s periphery. A 2-dimensional (2D) accumulator array of size the same as the image is created and initialized to zero. The cells’ values in the accumulator array are incremented by one every time a circle passes through them. The accumulator size can also be smaller than the image size, if we can somehow estimate the position of the pupil in the image. Therefore, the accumulator size depends on the image database that we select. We used an accumulator array of size (
M
-
4
r
m
i
n
)
×
(
N
-
4
r
m
i
n
) cells for an image of size M
×
N pixels, because the pupil cannot be touching the image borders as the iris surrounds the pupil. The peak in the accumulator array is determined for every radius, which avoids a separate step of calculating the circle radius. The maximum among all the peaks gives the radius and center of the pupil circle.


## 4. Experimental Results and Discussion

The proposed pupil localization method was implemented in MATLAB, version 8.3, and its edge-map generation technique used mainly the built-in functions of MATLAB, such as imfilter (), edge (), im2bw (), imfill (), imdilate (), imerode (), and imcomplement (). To evaluate the performance of the proposed pupil localization method, we used MATLAB version 8.3 installed on a PC with Windows 7 Professional, Intel® Core™ i5 CPU @ 2.40 GHz, 8.00 GB RAM, and a set of three iris databases: CITHV4, CILV3, and MMUV2. All these databases have been developed under the NIR illuminations. Collectively, the set of these databases contains nonideal issues such as specular and lighting reflections, nonuniform illuminations, eyeglasses, low contrast, defocus, and the occlusions by eyelids, eyelashes, and eyebrow hair.


### 4.1. Testing Inputs (Images)

The full description and statistics about the databases taken for testing are available in [6]. The input datasets that were used for evaluating (testing) our proposed method are given below.(1)
CITHV4 Dataset. This database contains 20000 iris images of 1000 subjects, which include 10 left and 10 right iris images of each subject. The total number of images taken for testing from this database is 5600 of 1000 different subjects. The number 5600 contains all 2000 images of the first 100 subjects and 3600 images of 900 subjects (4 images from each subject). By the names of the database images, the number 5600 is the sum of {
S
5000
L
00
,
S
5000
R
00
,
…
,
S
5099
L
09
,
S
5099
R
09
} and {
S
5100
L
00
,
S
5100
L
05
,
S
5100
R
00
,
S
5100
R
05
,
…
,
S
5999
L
00
,
S
5999
L
05
,
S
5999
R
00
,
S
5999
R
05
}. All the images in the database are 8-bit gray-level JPEG files with resolution 640
×
480 pixels [6].
(2)
CILV3 Dataset. This database contains 16212 iris images of 411 subjects. The total number of images taken for testing is 822, which consist of two (first left and first right eye) images from each subject in the database except 11 subjects. The images in the database are 8-bit gray-level JPEG files with resolution 640
×
480 pixels [6].
(3)
MMUV2 Dataset. All (994) images of this database were taken for testing. In MMUV2, the iris images are 24-bit gray-level BMP files with resolution 320
×
238 pixels.


### 4.2. Results and Discussion

Figure4 shows a sample of the accurately localized pupils in the noisy images from the three databases using the proposed method. Figures 6 and 7 are the examples, which illustrate that the standard techniques give wrong results, but they are corrected by the proposed technique. The accuracy of the proposed method was calculated by inspecting the output images manually after simulation in MATLAB and the formula of accuracy is given in Table 1. The accuracy results of the proposed pupil localization method are shown in Table 1. The proposed method has almost 100 percent accuracy (Table 1) and hence, it can be used in the accurate iris segmentation algorithms for noisy images. For the accurate iris segmentation in the NIR images, a high pupil localization accuracy is required because if the pupil was wrongly detected in the image, the iris’s outer boundary would also be, as it requires pupil circle parameters as input for the detection [7, 8]. The MMUV2 has the least accuracy among the three iris databases because a few images in the MMUV2 have significantly less gray difference between the pupil and the iris that is not detected by the edge detector.Table 1
Experimental results of the proposed pupil localization method.
Iris database
Number of images taken for testing (N
t)
Number of correct pupil localized images (N
p)
Accuracy (%) =(
N
p
/
N
t
)
×
100
Average time cost per image (sec)
CITHV4∗ (640
×
480)
5600
5588
99.79
1.18
CILV3∗ (640
×
480)
811
810
99.88
0.74
MMUV2∗ (320
×
238)
994
989
99.5
0.26
∗CASIA-Iris-Thousand, version 4.0 (CITHV4); CASIA-Iris-Lamp, version 3.0 (CILV3); Multimedia University, version 2.0 (MMUV2).Figure 6
Examples of wrong pupil localization using thresholding based technique, which is corrected by the proposed technique.Figure 7
Examples of wrong pupil localization using edge detection based technique, which is corrected by the proposed technique.To find the average time cost per image, a set of 100 randomly chosen images of different subjects was taken from each individual database. The MATLAB’s timer functions “tic” and “toc” were used to find the execution time of a code that runs to localize the pupils in 100 images. The execution time obtained was then divided by 100 to get the average time cost per image. The time performance results are shown in Table1.For comparing the results of the proposed method listed in Table1 with other methods, we did not find the published pupil localization results in the previous works for the databases that we have used in this paper. However, the iris localization results for the same databases are available in Jan et al. methods [11, 13]. Moreover, Jan et al. in [11, 13] used a similar platform (MATLAB environment and computer workstation) for testing their methods, which we have used in our work; therefore, computation times can be compared.To compare the proposed pupil localization method with the Jan et al. [11, 13] iris localization methods, we implemented adaptive IDO proposed by Radman et al. [9] to localize the iris’s outer boundary. The adaptive IDO [9] searches two small regions in the image on the left and right sides of the pupil between the upper and lower eyelids to detect the circular arcs. The adaptive IDO was applied, assuming that the center of iris’s outer boundary circle lies in a 10
×
10 pixel rectangle centered at the pupil center because the pupil and iris’s outer boundary circles may not be concentric. The hundred images (one image from one subject) from each of the CITHV4 and CILV3 databases were taken for evaluating the performance of the adaptive IDO [9] for the iris’s outer boundary detection. We got a time cost of 0.21 sec per image excluding the pupil localization time and accuracy of 98% for iris’s outer boundary detection using adaptive IDO [9]. Therefore, the complete iris localization using the proposed pupil localization method plus the adaptive IDO [9] provides the time cost per image of 1.39 (=1.18
+
0.21) sec and 0.95 (=0.74
+
0.21) sec for the CITHV4 and CILV3 images, respectively (Tables 1 and 2). Here, it should be noted that having localized the pupil in the NIR images the iris’s outer boundary localization takes less computation time as compared to the pupil localization.Table 2
Iris localization (pupil + iris’s outer boundary detection) results.
Iris localization method
Average time cost per image (sec)
CITHV4∗
CILV3∗
Jan et al. [11]
6.4
4.93
Jan et al. [13]
3.4
3.35
Proposed pupil localization + adaptive IDO [9]
1.39
0.95
∗CASIA-Iris-Thousand, version 4.0 (CITHV4); CASIA-Iris-Lamp, version 3.0 (CILV3).The iris localization method that uses the proposed pupil localization method is much faster than Jan et al. [11, 13] methods as shown in Table 2. The edge-map creation technique used in the proposed pupil localization method is the main reason for improvement in the computation time, because it drastically reduces the false edges in the edge-map. This edge-map creation technique is also responsible for the excellent pupil localization accuracy (Table 1).


## 4.1. Testing Inputs (Images)

The full description and statistics about the databases taken for testing are available in [6]. The input datasets that were used for evaluating (testing) our proposed method are given below.(1)
CITHV4 Dataset. This database contains 20000 iris images of 1000 subjects, which include 10 left and 10 right iris images of each subject. The total number of images taken for testing from this database is 5600 of 1000 different subjects. The number 5600 contains all 2000 images of the first 100 subjects and 3600 images of 900 subjects (4 images from each subject). By the names of the database images, the number 5600 is the sum of {
S
5000
L
00
,
S
5000
R
00
,
…
,
S
5099
L
09
,
S
5099
R
09
} and {
S
5100
L
00
,
S
5100
L
05
,
S
5100
R
00
,
S
5100
R
05
,
…
,
S
5999
L
00
,
S
5999
L
05
,
S
5999
R
00
,
S
5999
R
05
}. All the images in the database are 8-bit gray-level JPEG files with resolution 640
×
480 pixels [6].
(2)
CILV3 Dataset. This database contains 16212 iris images of 411 subjects. The total number of images taken for testing is 822, which consist of two (first left and first right eye) images from each subject in the database except 11 subjects. The images in the database are 8-bit gray-level JPEG files with resolution 640
×
480 pixels [6].
(3)
MMUV2 Dataset. All (994) images of this database were taken for testing. In MMUV2, the iris images are 24-bit gray-level BMP files with resolution 320
×
238 pixels.


## 4.2. Results and Discussion

Figure4 shows a sample of the accurately localized pupils in the noisy images from the three databases using the proposed method. Figures 6 and 7 are the examples, which illustrate that the standard techniques give wrong results, but they are corrected by the proposed technique. The accuracy of the proposed method was calculated by inspecting the output images manually after simulation in MATLAB and the formula of accuracy is given in Table 1. The accuracy results of the proposed pupil localization method are shown in Table 1. The proposed method has almost 100 percent accuracy (Table 1) and hence, it can be used in the accurate iris segmentation algorithms for noisy images. For the accurate iris segmentation in the NIR images, a high pupil localization accuracy is required because if the pupil was wrongly detected in the image, the iris’s outer boundary would also be, as it requires pupil circle parameters as input for the detection [7, 8]. The MMUV2 has the least accuracy among the three iris databases because a few images in the MMUV2 have significantly less gray difference between the pupil and the iris that is not detected by the edge detector.Table 1
Experimental results of the proposed pupil localization method.
Iris database
Number of images taken for testing (N
t)
Number of correct pupil localized images (N
p)
Accuracy (%) =(
N
p
/
N
t
)
×
100
Average time cost per image (sec)
CITHV4∗ (640
×
480)
5600
5588
99.79
1.18
CILV3∗ (640
×
480)
811
810
99.88
0.74
MMUV2∗ (320
×
238)
994
989
99.5
0.26
∗CASIA-Iris-Thousand, version 4.0 (CITHV4); CASIA-Iris-Lamp, version 3.0 (CILV3); Multimedia University, version 2.0 (MMUV2).Figure 6
Examples of wrong pupil localization using thresholding based technique, which is corrected by the proposed technique.Figure 7
Examples of wrong pupil localization using edge detection based technique, which is corrected by the proposed technique.To find the average time cost per image, a set of 100 randomly chosen images of different subjects was taken from each individual database. The MATLAB’s timer functions “tic” and “toc” were used to find the execution time of a code that runs to localize the pupils in 100 images. The execution time obtained was then divided by 100 to get the average time cost per image. The time performance results are shown in Table1.For comparing the results of the proposed method listed in Table1 with other methods, we did not find the published pupil localization results in the previous works for the databases that we have used in this paper. However, the iris localization results for the same databases are available in Jan et al. methods [11, 13]. Moreover, Jan et al. in [11, 13] used a similar platform (MATLAB environment and computer workstation) for testing their methods, which we have used in our work; therefore, computation times can be compared.To compare the proposed pupil localization method with the Jan et al. [11, 13] iris localization methods, we implemented adaptive IDO proposed by Radman et al. [9] to localize the iris’s outer boundary. The adaptive IDO [9] searches two small regions in the image on the left and right sides of the pupil between the upper and lower eyelids to detect the circular arcs. The adaptive IDO was applied, assuming that the center of iris’s outer boundary circle lies in a 10
×
10 pixel rectangle centered at the pupil center because the pupil and iris’s outer boundary circles may not be concentric. The hundred images (one image from one subject) from each of the CITHV4 and CILV3 databases were taken for evaluating the performance of the adaptive IDO [9] for the iris’s outer boundary detection. We got a time cost of 0.21 sec per image excluding the pupil localization time and accuracy of 98% for iris’s outer boundary detection using adaptive IDO [9]. Therefore, the complete iris localization using the proposed pupil localization method plus the adaptive IDO [9] provides the time cost per image of 1.39 (=1.18
+
0.21) sec and 0.95 (=0.74
+
0.21) sec for the CITHV4 and CILV3 images, respectively (Tables 1 and 2). Here, it should be noted that having localized the pupil in the NIR images the iris’s outer boundary localization takes less computation time as compared to the pupil localization.Table 2
Iris localization (pupil + iris’s outer boundary detection) results.
Iris localization method
Average time cost per image (sec)
CITHV4∗
CILV3∗
Jan et al. [11]
6.4
4.93
Jan et al. [13]
3.4
3.35
Proposed pupil localization + adaptive IDO [9]
1.39
0.95
∗CASIA-Iris-Thousand, version 4.0 (CITHV4); CASIA-Iris-Lamp, version 3.0 (CILV3).The iris localization method that uses the proposed pupil localization method is much faster than Jan et al. [11, 13] methods as shown in Table 2. The edge-map creation technique used in the proposed pupil localization method is the main reason for improvement in the computation time, because it drastically reduces the false edges in the edge-map. This edge-map creation technique is also responsible for the excellent pupil localization accuracy (Table 1).


## 5. Conclusions

We have presented a novel scheme to localize the pupils accurately in the unconstrained NIR iris images. The proposed method localizes the pupil by creating an edge-map from the iris image followed by applying a general CHT on the edge-map. The experimental results showed that the proposed edge-map creation technique could be used in the iris segmentation methods for high accuracy and the speed. The results also show that the proposed method is robust, as it provides excellent accuracy and efficiency for the noisy images taken from different CASIA and MMU iris databases. The comparison with the previous methods showed that the proposed method is faster.



---

*Source: 4709876-2016-06-05.xml*