Occluded iris classification and segmentation using self-customized artificial intelligence models and iterative randomized Hough transform

A fast and accurate iris recognition system is presented for noisy iris images, mainly the noises due to eye occlusion and from specular reflection. The proposed recognition system will adopt a self-customized support vector machine (SVM) and convolution neural network (CNN) classification models, where the models are built according to the iris texture GLCM and automated deep features datasets that are extracted exclusively from each subject individually. The image processing techniques used were optimized, whether the processing of iris region segmentation using iterative randomized Hough transform (IRHT), or the processing of the classification, where few significant features are considered, based on singular value decomposition (SVD) analysis, for testing the moving window matrix class if it is iris or non-iris. The iris segments matching techniques are optimized by extracting, first, the largest parallel-axis rectangle inscribed in the classified occluded-iris binary image, where its corresponding iris region is cross-correlated with the same subject’s iris reference image for obtaining the most correlated iris segments in the two eye images. Finally, calculating the iris-code Hamming distance of the two most correlated segments to identify the subject’s unique iris pattern with high accuracy, security, and reliability.


INTRODUCTION
The security is a crucial issue; it needs precise and robust alternatives or support to password and personal identification number (PIN) because the computer hacking is greatly rising permanently [1]. Biometric technology treats such problems, because of an individual's biometric data uniqueness and cannot be converted nor transferred [2]. One of the most common techniques in biometric recognition systems is iris recognition [3]. It utilizes pattern recognition methods based on high-quality iris images [4]. The diversity of the iris texture is appropriate for using it in biometric systems; in addition to its intrinsic isolation and protection from the external environment [5]. The iris texture pattern is a phenotypic feature (genetically independent) and is stable over time [6], [7].
Several methods have been proposed to segment the iris and classify it from the non-iris region. Paul [8] extracted iris features using Gabor filter after utilizing Hough transform for iris region localizing and then feed the proposed features to Hamming distance classifier. Radu [9] designed multiple classifiers to enhance the iris recognition of noisy eye colored images by extracting the iris colored features. Kekre [10] used Haar where = + ( ) and = + ( ) This method is complex, and it needs high computation time, therefore the accumulator points can be generated by selecting n points from the edge points randomly to generate the cone in Hough space, this is called a randomized Hough transform [29]. The accuracy of this approach depends mainly on the number of randomly chosen points [30]- [34].
Several authors suggested another algorithm for Hough transform which is called iterative Hough transform. It is started with forming an accumulator vote cells with a coarse and uniform resolution in parametric space [35], [36], where the cells that are registered with higher votes at this resolution, will be investigated in the higher resolution and soon until it converges to an acceptable level of accuracy in a course to a fine adaptive approach. This approach has been used by Adiv [37] to search for motion parameters in high-dimensional spaces, and by Silberberg [38] to identify the parameters that determine the shape model. One main disadvantage of high resolution in the parameter space is that the votes are distributed sparsely, therefore, clustering them is needed. Silberberg et al. [38] described an iterative Hough procedure where "initially, a sparse, regular subset of parameters and transformations is evaluated for goodness-of-fit, and then the procedure is repeated by successively subdividing the parameter space near current best estimates of peaks". Different applications have been developed using iterative random Hough transform IRHT, such as in fetal head part detection in ultrasound images [39].
Before applying the Hough transform to the iris images, several pre-processing techniques are applied to discriminate against the iris region from the non-iris region precisely. Controlling on the conditions during capturing iris images makes the iris localization and recognition more efficient. These conditions are including lighting, eyelids, eyeglasses, and occlusion [20], [40], [41]. Iris segmentation means localizing the actual part of the iris, and excluding the eyelids, occluded parts, shadows, reflections, or eyelashes [42]. Failure in iris matching has resulted mainly from inaccurate segmentation [43]. Kumer et al. [13] proposed a method that uses circular Hough transform and the IDO for binarizing the pupil then using CHT to find the iris outer boundaries.
Daugman's IDO is used mainly for denoising the given image by removing the upper and lower eyelids and localizing the iris portion [44]. The operator evaluates the partial derivative of the average intensity of the circular points concerning the radius r. For detecting the upper and lower eyelids, a modification on the contour integration is performed for localizing the iris region as a parabolic curve [14], [45]. Wildes used both edge detection and Hough transform to define the eyelids using the parabolic curve and Hough transform parameter instead of using a circular Hough transform [15]. Eyelashes detection was the main goal of Kong et al. algorithm, where they used the Gabor filter and variance of intensity to categorize the eyelashes into separable and multiple. The separable eyelashes were detected by the 1D Gabor filter, whereas multiple eyelashes were discriminated against by the variance of intensity [46]. Cui et al. [47] used a different approach based on texture segmentation to detect the upper and lower eyelids. They compared the energy spectrum of each region with the eyelashes, and they noticed that the region of eyelashes is characterized by a high spectrum, whereas, the upper eyelashes are detected as a parabolic curve.
Proenca and Alexandre proposed an iris segmentation algorithm based on the Fuzzy-k-mean clustering classifier algorithm and intensity features extracted from the iris region followed by using a Hough  [49], their algorithm started with localizing the pupil by thresholding and circular Hough transform, defining the outer iris boundaries to localize the outer iris, detecting the upper and lower eyelids, removing eyelashes, reflection, and pupil noises by thresholding. Mahmoud and Ali utilized the linear Hough transform for localizing the boundaries between upper and lower eyelids in the occluded iris images [50].
Another group of researchers focused on finding the largest rectangle in the iris region [51], [52], therefor defining the largest rectangle (LR) that can be inscribed in geometrical shape is an optimization issue [53]. Many researchers have extensively addressed this problem; Chazelle et al. [54], [55] proposed an algorithm to find LR that its sides are parallel to the n given points with computational time O(n log3 n) and O(n log n) space. Aggarwal et al. [56] enhanced Chazelle's group algorithm by reducing the space to O(n), but Daniels et al. developed the algorithm to find LR within n-vertex general polygon and they also optimized the largest rectangle for orthogonal and non-orthogonal polygons with running time O(n log2 n). In addition, the proposed algorithm to find the largest empty rectangle in both self-intersecting polygon and general polygons with holes with running time O(n log n) [57]. McKenna et al. [58] used a divide-andconquer algorithm to optimize the largest rectangle within geometrical shape with time O(n log5 n). They also find the largest rectangle in polygons with holes in O(n log n) time. The authors of this paper will use their enhanced approach for finding the largest inscribed rectangle in the iris region based on course to the fine hierarchical approach which runs in O(log2 n) time [59].
The novel contribution of the present study is to enhance the accuracy and the speed of the occluded iris recognition, where the proposed approach of designing the classifier model is customized for each subject's unique texture to build its SVM classifier model, where the accuracy of segmenting the iris nonoccluded region is subject to that individually-tailored SVM classifier model and therefore optimizing the specificity of the designed model.

RESEARCH METHOD
The developed methodology captures a grayscale image of the human iris, then the acquired image will be subjected to different processing techniques to detect the iris even when it occluded. The sequence of processing algorithms is shown in the flowchart of Figure 1.

Experimental setup and image acquisition
The experiment was conducted on 30 volunteers from our institute, with ages range 20-30 years old and healthy, normal eyes. For each subject, the images were acquired for both eyes (right and left) using the IrisGuard IG-AD100 iris camera connected to the computer by USB connection. It captures eye images with distance 21-37 cm (8.3"-14.6") [60]. Each subject was asked once to open his eyes fully to acquire his reference eye images, and next was asked to occlude his eyes partially to acquire the occluded eyes images.

Features extraction and selection
Iris features must be extracted to discriminate between the iris and non-iris region [61]. In this paper, texture features (Halarick features) were extracted using the Grayscale co-occurrence matrix (GLCM) [62]. GLCM contains information about the frequency of the occurrence of two neighboring pixels combination in an image, and it is better than other texture discriminations methods [63]- [65]. To reduce the number of features to the most significant ones, singular value decomposition was applied to the whole data of the iris and non-iris regions [66]. The subject asked to capture the eye image with full eye-opening (reference image). The iris was localized by IRHT. Then the iris region was segmented, and the moving window size was 15 with step 7 sliding over the iris region where the most five significant features are evaluated and stored in a matrix.

Support vector machine (SVM) classifier design
Support vector machine (SVM) is one of the most commonly used and known supervised machine learning algorithms in general and especially in biometrics. It is originally used for the classification of data into two major classes and later on a generalized model proposes for multi-class classification [67]. A predefined training dataset is used to construct a model that represents a hyperplane model used to predict a new testing partition of the class. In this paper a customized classifier model for each subject is built by using radial basis (RBF) SVM has been built.

Convolutional neural network (CNN)
The deep learning algorithm in this research is utilized in two scenarios, in the first one it is used to classify the iris region and in the second one, it is used in features extraction for each subject and use it in building a self-customized SVM model. A convolutional network is a kind of neural networks that employ the convolution operation at least one time in their layers. It is utilized the machine learning algorithms in various fields such as segmentation, classification and regression as well. The pre-processing stage here is not required as other classification algorithms. It consists of an input layer, an output layer, and many hidden layers. The most distinguished feature of CNN is the architecture of hidden layers. These hidden layers are convolutional layer, which is responsible for detecting high details of the image, by specifying the number of filters and the stride. The pooling layer reduces the dimension and extracting the most important features by applying one of two methods, max pooling or average pooling. The rectified layer guarantees that all values are positive. The most commonly used function in that layer is the rectified linear unit (RELU) function [68]. Finally, a fully connected layer which is used to describe the best label for the given image [69]. A fully connected layer is often ended by a softmax layer which applies a softmax function to its input, which is expressed by the (2).
Softmax function bounded the output between 0 and 1, therefore, the output can be interpreted as a probability. In this paper, we employed the corresponding CNN architecture in the iris segmentation region and in extracting its distinguished features. Figure 2 shows the architecture of the used CNN model. The input is a grayscale image with size 32×32, and the first convolutional layer uses 32 filters with size 3×3 and padding zeros is one, whereas the rest convolutional layers use 16 filters with the same size, except the third one uses 8 filters only. To accelerate the training stage in CNN, and to decrease the sensitivity of the network initialization, the batch normalization layer is added between the convolutional layer and the nonlinearity layer (RELU) [10], [69]. Max pooling layer is employed in the suggested CNN with window size 2×2 and increments 2 pixels as well. The output layer consists of a fully connected layer with an output size 10, a softmax layer, and a classification layer.

Self-customized hybrid model
Instead of handcraft GLCM features extraction, CNN is utilized in extracting the deep features automatically for each subject individually. By storing the labeled windows for the iris region of the reference image. The features are extracted from the fully connected layer. These features are most distinguished for each person exclusively. The extracted descriptors are fed to the SVM classifier to build the model for each subject independently. This model is tested using the occluded iris region that is segmented in the previous scenario and the hamming distance is computed between two regions.

Classifier training
The training stage is started by extracting five features from window size 15 * 15 in iris and non-iris region in the reference image for each subject individually. The iris region is labeled as 1 and the non-iris region is labeled as 0 as well. The cross-validation procedure is exploited in this paper by partitioning the training two equal subsets, one subset is used for training and the other for testing. The initial input value for the kernel width  and (constraint parameter) which is called box constrain is 1, the optimization procedure is employed to choose the most optimal parameters to achieve stricter separation between two classes [67]. The optimum value was obtained from the cross-validation procedure is passed into the training stage to get the final subjective SVM model, which is used to classify the test data.

Occluded eye classification
The occluded eye is passed to the IRHT to localize the iris region, which includes the iris and the non-iris partitions. Then five features are extracted from the selected region using a moving window of size 15 15 and step size 7. These features are stored in a matrix and it is tested using a model structure that was computed in the training stage for the same subject. The output image shows the iris region and excludes the non-iris part. Figure 3 shows the occluded iris segmentation using iterative random Hough transform (IRHT).

Occluded iris segmentation and classification
Once the user's eye image (occluded in general) is acquired, the processing for finding both the pupillary boundary and the outer (limbus) boundary of the iris will start, first by determining the three parameters defining the pupillary circle. Before obtaining the circle parameters of the pupil using Hough transform, a pre-processing stage is required, where the eye's image is converted to a binary image and then computing the image complement of the result which is followed by applying opening morphological operation with proper structuring element shape and size to remove any remaining protrusions, then filling the holes in the white regions is applied followed by removing any small objects. The white objects in the image from the previous step will be labeled for finding the white object with the lowest Eccentricity which indicates a circular shape. Also, of finding the Eccentricity, the centroid and diameter of each object will be calculated exploiting the function region props. The object with the lowest Eccentricity will be separated and then its convex hull will be obtained to make the pupil white object shape closer to the circle where then the canny edge detection algorithm is applied for finding the pupil boundary.
The result of using is the optimal circles surrounding the iris region after finding the optimal parameters of the pupillary boundary and the outer (limbus) boundary of the iris. To accelerate the HT processing running time, a 3-D Accumulator grid with size: 5×5×5 was generated using the "ndgrid" function contains the three-circle parameter ranges, where 5 is the resolution of each parameter range. The 53 Accumulator grid elements are calculated as: where x and y are the coordinates of boundary pixels respectively, xo, yo, and rare the ranges of the x-canter, the y-center, and radius respectively each with resolution 5 for each iteration, and these ranges will be progressively finer precision at successive iterations. This step will speed up the processing time to a higher rate instead of using three for-loops at each iteration. As the iris region is precisely determined, the classification stage using the adopted self-customized SVM algorithm will start after retrieving the user's two stored files of the classification model structure and the eye reference image (non-occluded iris eye image). For accelerating the classification phase, the classification algorithm will be applied only to the region that is confined in between the two red circles and above and below the green dashed lines. The result of applying this self-tailored algorithm using the user's classification model parameters. The algorithm will be applied on a white matrix with the same size as the eye original image and the black pixels shown are for the classified pixels as non-iris pixels which are supposed to indicate to the occluded partition of the iris region.
As it was explained in the section of "Occluded Eye Classification", the five classifier features are extracted from the moving window submatrix of size 15x15 and step size 7 and then fed to the SVM classifier algorithm to classify the submatrix center as iris pixel and given a value one (white) or non-iris pixel and given a value zero (black). The opening morphological operator is applied with a structuring element of disk shape and size greater than the moving window step size to connect between the neighbor black pixels. The small black regions from the previous result are then removed after computing the complement of the image and applying the function "bwareaopen" with proper size and then taking the complement of the result. Also, to eliminate the impact of the specular reflection, the indices of the pixels in the original eye image with intensity above a certain threshold will be identified for zeroing the corresponding pixels in the classification result. Once the iris region is successfully classified, the doughnutshaped iris region pixels are remapped from Cartesian coordinates to the normalized non-concentric polar coordinates using the homogeneous rubber sheet model suggested by Daugman [7]. The result of remapping the pixels of the image that are confined between the two red circles and then normalization the result by resizing the resultant matrix to 50×500 where the remapping starts at the green dashed line which indicates the mapping angle zero position. The normalization process will produce iris region with always the same dimensions regardless of pupil dilation due to various illumination level. Figure 4 describes the segmentation and classification result.

Finding largest inscribed rectangle and iris segments matching
Next, the algorithm of detecting the largest parallel-axis rectangle inscribed in the white region of the image is applied where the largest rectangle is shown in gray color. The algorithm used for this process was coarse-to-fine hierarchical approach proposed by the authors [59]. The iris region in the original eye will be remapped using the rubber sheet model and the same IRHT circle parameters used before. The calculated largest parallel-axis rectangle coordinates that were assigned before will be used to segment the iris nonoccluded partition in the remapped iris region of the original eye image and its segment, and this segment supposed to represent the iris region that is free from any type of noise such as occlusion or specular reflection.
Finally, the iris matching stage between any future acquired eye image (occluded in general) and its reference image (not-occluded) is starting by determining the best matching partition in the reference remapped iris image with the remapped iris partition in the occluded eye image, which is done by applying the normalized cross-correlation algorithm. The result of normalized cross-correlation between the images. The position of the maximum normalized cross-correlation in the reference iris image is then obtained and the coordinates of the corresponding matching segment in the reference remapped iris image is determined. The two matched segments from the maximum normalized cross-correlation are then extracted for the final phase of biometric iris recognition which is calculating the iris-code Hamming distance employed by Daugman [7]. Figure 5 shows the largest rectangle that is containing the iris region.

Iris segmentation
The previously mentioned CNN architecture is employed in this paper to classifying the iris region from the non-iris region. The database for each class was generated by applying windows with size 15×15 for both regions from different subjects with full eye-opening, and each one is stored in a folder with its region name. The total number of extracted regions are 17258 for both labels. The output after applying the deep learning strategy on the reference eye is as shown in figures.

RESULTS AND DISCUSSION
This section will show the results of each step discussed in the research methodology, then we will discuss these results. Figure 6 shows the process of detecting the pupil boundary using the IRHT algorithm and canny edge detection. After the detection of the pupil, the occluded iris will be detected using the proposed methodology using IRHT on the eye image where the features extraction and classification process will be applied on the area outside the pupils Figure 7 shows the region for features extraction and classification for occluded iris detection and segmentation. After detection of the region of interest for iris detection and segmentation, the GLCM features are extracted and fed to the SVM classifier which is used for iris detection for segmentation purposes. Figure 8 shows the classification results of iris region features using the SVM classifier. After detection and classification of the iris region, it is time to extract the iris region of interest for similarity finding purposes, Figure 9 shows the detected and segmented region of iris that will be used for similarity finding. The small black regions and the specular regions are removed using proper removing size and threshold respectively. The green dashed line indicates the starting mapping angle 0 in the angle mapping direction of the rubber sheet model. Then, when after we detect the region of the iris, we remap it to Cartesian coordinates for the largest rectangle area detection for similarity finding and calculation purposes which are by removing the eyelashes area. Figure 10 shows the remapped area of the iris area in Figures 9  and 11 shows the largest rectangle area detected on the remapped image. Figure 9. The classification result after applying opening morphological operator with a structuring element of size 10 and shape disk Figure 10. The homogeneous rubber sheet model is assigned to each pixel in the iris region for remapping, and the resultant matrix is always resized to 50×50, the surrounding black frame is only for illustration Figure 11. Detection the largest inscribed parallel-axis rectangle in the white region, displayed in gray color, which corresponds to iris partition in the iris region, the surrounding black frame is only for illustration Finally, the detected largest rectangle area will be used for extracting the iris details from the remapped segmented original iris region. Figure 12 shows the remapped segmented iris region from the original eye image where Figure 10 shows the selected largest rectangle from the remapped original eye image. Finally, Figure 11 shows the cropped iris region based on the selected area. The homogeneous rubber sheet model is assigned to each pixel in the iris region for remapping using the same IRHT circle parameters, and the resultant matrix is always resized to 50×50 as shown in Figure 12. Figure 12. The homogeneous rubber sheet model is assigned to each pixel in the iris region for remapping using the same IRHT circle parameters, and the resultant matrix is always resized to 50×50 The The largest parallel-axis rectangle coordinates shown as blue frame corresponds to the iris nonoccluded partition as it is clear in Figure 13. The resultant image is shown in Figure 14, which is the nonoccluded segment of iris in original image. Then for similarity finding and calculating using hamming distance purposes we use a non-occluded iris image as a reference for measuring the hamming distance and the same process for cropping the iris area will be applied. Figure 15 shows the detected iris area on the reference image and Figure 16 shows the cropped iris area for hamming distance calculation purposes. After we have two regions one from the reference image with non-occluded iris and the other from the occluded iris image, we can calculate normalized cross-correlation between the two regions. Figure 17 shows the normalized cross-correlation between the two regions. Based on the calculated normalized cross-correlation we can find the maximum cross-correlation region between the two images (the reference and the occluded image). Figure 18 shows the maximum crosscorrelation area selected from the non-occluded (reference) and Figure 19 shows a comparison between the reference and the occluded images. Finally, after finding the maximum normalized cross-correlation are between the occluded and non-occluded areas we use these two areas to find the hamming distance between them for identification purposes. Table 1 shows a comparison between the three used models based on the resultant hamming distance. Figure 17. The result of applying a normalized cross-correlation algorithm between the iris not-occluded partition image and the reference iris image, the result displays a peak value for the position of the two images matching Figure 18. The blue frame displays the position of the maximum normalized cross-correlation between the iris segment of the occluded eye image and the iris image of the entirely full-iris eye image Figure 19. The two matched iris segments from the reference and occluded images respectively, local histogram equalization was implemented for display enhancement purposes and the surrounding black frame is only for illustration As shown in Table 1 the hamming distance varies between 0.1-0.3, this range is acceptable when it is compared with previous studies. Due to the large iris texture variety among people, the contribution of texture and deep features in describing the iris texture is large as well for different subjects. This large variance will necessarily require different construction to the hyperplane of the support vector machine (SVM) classifier to get the best hyperplane that represents the largest separation, or margin, between the two classes or the hyperplane that the distance from it to the nearest data point on each side is maximized. The designing of the SVM model using a large dataset of iris segments from many different people in the training stage, will not achieve the desired goal of constructing a hyperplane with a high margin between the two classes of iris and non-iris. Therefore, it is more reasonable and reliable to build an SVM and CNN models associated with each subject exclusively, where the related SVM and CNN models and therefore, the classifier hyperplane will be built according to the contribution of the most significant five texture features or two deep using CNN features for each subject's iris uniquely. The successful classification will necessarily lead to an accurate iris largest parallel-axis rectangle segmentation result which in turn be matched successfully to the associated partition in the retrieved reference iris polar image, and therefore, very low iriscode Hamming distance value in recognizing the same subject. Table 2 describes the comparison between the proposed method and the existence methods in literature.

CONCLUSION
The proposed noisy iris recognition system is fast and accurate and that by improving and optimizing the used image processing techniques, whether in processing the iris region segmentation using IRHT or in designing the classification model, where few significant subjective GLCM and deep features are selected for testing the skipped moving window matrix using the subjective SVM and CNN models. Also, only small iris partitions are selected for classification in the iris region that are most likely exposed to occlusion in general, which significantly accelerates the computation time. The time complexity of the used RBF kernel in the SVM classifier is O (nSV×d) where nSV is the number of support vectors and d is the number of selected features. When the number of support vectors is large the complexity is reduced to O(d) The novelty of the proposed approach lies in exploiting the complexity, uniqueness, and stability of human iris texture and accordingly, its classifier descriptors uniqueness which varies significantly depending on the eye-iris texture where some persons have more textured irises than others and therefore, the number of the most independent features may vary significantly as well. The adopted algorithm using the SVD method in selecting the most independent with independence. Because of the identification security and authentication issues are crucial for ensuring the successful adoption of an appropriate biometric identification security system, this approach provides such a secure and authenticated system.