A High Performance Biometric System Based on Image Morphological Analysis

—At present, many of the algorithms used and proposed for digital imaging biometric systems are based on mathematical complex models, and this fact is directly related to the performance of any computer implementation of these algorithms. On the other hand, as they are conceived for general purpose digital imaging, these algorithms do not take advantage of any common morphological features from its given domains. In this paper we developed a novel algorithm for the segmentation of the pupil and iris in human eye images, whose improvement's hope lies in the use of morphological features of the images of the human eye. Based on the basic structure of a standard biometric system we developed and implemented an innovation for each phase of the system, avoiding the use of mathematical complex models and exploiting some common features in any digital image of the human eye from the dataset that we used. Finally, we compared the testing results against other known state of the art works developed over the same dataset.


INTRODUCTION
The purpose of Biometrics is the research of features that enable the univocal identification for each human being [1].
Since some time ago, the human iris is considered as a biometric because it has some special features against other biometrics [2] [3].For example, the iris biometrical features are present in the human from the 3rd month of gestation, and it remains almost identical until individual"s death.On other hand, any physical contact is not necessary to take an iris sample and the sample"s forgery is practically remote (or at least too troublesome).In the iris visual pattern there is more biometrical information (for univocal human identification) than in a fingerprint [2] [3] [4].Besides, the human iris diameter is very regular, varying between 11.5mm and 12mm from one individual to another, although, by the lens effect caused by the cornea we could measure 13mm of horizontal length [5].This fact is really important, because it gives us an anatomical max value of 6.5mm for the iris radius in any eye image.Fig. 1 shows iris, pupil and sclera of the human eye.

D. Matching.
Almost every latest technique used for iris recognition and human identification shares a common origin, related from the beginning to the statistical analysis of digital imaging [7].Many of the best algorithms for digital images treatment, filtering, and compression owe their success to this statistical approach, because, among other reasons, by modeling images as mathematical objects, theoretical developments, such as Fourier, Wavelet, Hugh transformations and Gabor filters could then be applied, obtaining in many cases excellent results [8] [9] [10] [11] [12] [13].
Thus, most of the latest Iris biometric systems currently use these complex mathematical tools to accurately obtain the edges of the iris (Segmentation phase), and employ generic entropies (like Hamming Distance [14]) later, during the Matching phase.Aversely, the application of these statistical model-based algorithms in biometric systems may depend on filtering, pre-treatments, matrix calculus and other operations that could be costly in terms of computer implementations.

Iris
Pupil www.ijacsa.thesai.org In this paper we developed a novel algorithm for the segmentation of the pupil and iris in human eye images, whose improvement"s hope lies in the use of morphological features of the images of the human eye.Considering an image as a data structure and not as a mathematical object only, we proposed an original alternative for each one of the four phases of a biometric system based on the iris recognition.Our proposal introduces improvements in the performance of the system by drastically decreasing the complexity of the segmentation, in order to get lower computational cost compared to other similar algorithms.We implemented the system in an appropriate imaging framework in order to compare our results with other actual developments.
The rest of the paper is organized as follows: Section II, presents a brief description of the Database, equipment and basic definitions and notations used in this work.In Section III we explain our iris segmentation algorithm in detail.Section IV and V are about the improvement of the Normalization and Extraction phases respectively.Section VI shows the results of our study.Conclusions and future scopes will appear in sections VI and VII respectively.

II. MATERIALS, DEFINITIONS AND NOTATIONS
We used CASIA iris image database version 1.0 [15]; because it is used today in most of the developing works in the area of Iris Recognition [8] [16] [17] [18].This database includes 7 different samples per individual and includes data of 108 individuals; 4 for testing stage and 3 for training stage.The images of the Database have some common features, which became morphological invariants for our development: 1) In every sample (image) of the dataset, there is exactly one eye.
2) The pupil in the sample will look like a regular dark discoid.
3) In each sample, the pupil represents the biggest dark region of the image.
4) All the samples of the dataset are taken maintaining the same distance between sensor (camera) and target (individual's eye); therefore, all the images share approximately the same spatial resolution.5) We know the spatial resolution parameter of the dataset; then, we can estimate in pixels the max value for the iris diameter (remember the 13mm max value, section I).
In this work we used the following equipment:  Software: RSI-IDL(R) y RSI-ENVI(R) 4.7 suite [19].
Finally, in this section, we present some definitions and notations used in this work.
 We represent an ocular image of n x m pixels as a brightness value matrix I of n x m dimension (n columns and m rows).To refer to the element in column i, and row j of matrix I, we use the standard notation: where i and j are natural numbers, with i n-1, and 0j m-1.Lower values in the matrix will be related to darker pixels in the image.
 We use "cell" or "pixel" to denote an element of matrix I, which is associated to a brightness value and its coordinate pair in I.
 The pupil segmentation of the ocular image I is the smallest circle that contains the pupil in I, which is represented with the pair (c,r), where c is the coordinate pair of its center and r its radius measured by adjacent pixels.
 The iris segmentation of the ocular image I is the geometric circular crown S = (c,r,R) such that: the pair (c,r) is the pupil segmentation of I, and R is the distance (in straight line pixels) from c to a pixel from the limit iris-sclera on I.

III. IRIS SEGMENTATION. A NOVEL PROPOSAL
To delimit the iris in an ocular image, we need to find the appropriate c, r, and R parameters.First, let us note that R parameter is a constant for every sample (ocular image) in a dataset since we choose the anatomic max value of 13mm for the iris diameter as an outside diameter for all our iris segmentations.Then, we calculated R using the spatial resolution parameter of the dataset (see v in Section I).Thus, R was defined indeed as the necessary amount of adjacent pixels to cover 6.5mm in the image.
To determine c and r parameters, which are not constants at all, note that c will vary from a sample to another according to the eye's position in the image, and r will be determined by the pupil dilatation in each sample.As we defined in the previous section, c and r parameters are obtained by calculating the pupil segmentation of the image.So, at this point, we reduced the problem of iris segmentation to obtain the pupil segmentation.

A. Locating the pupil. "CRUZ" algorithm
Let i = ( i x , i y ) the coordinate pair of a pixel p i located inside the pupil of image I. Let us trace four paths from i. Two will draw up the vertical trace (north and south paths), and the other two will compose the horizontal trace (east and west paths).Each path will end when the difference between the brightness value of the next pixel and value of the current pixel p i is greater than τ (tolerance).
Fig. 2. In red, the coordinate pair i.In green, the traces made by CRUZ algorithm.In violet, the horizontal and vertical traces.www.ijacsa.thesai.org Our idea was to approximate the pupil by mean of a perfect circle.To estimate the center c of the circle, the horizontal and vertical traces, and some geometrical principles were used: Consider the perpendicular line that passes through the middle point of horizontal trace (vertical violet line in Fig. 2) and the perpendicular line that passes through the middle point of vertical trace.As you can see in Fig. 2, the intersection of both lines approximates the pupil center.Now formally: let T N , T S , T E , T W be the lengths (in pixels) of the north, south, east and west paths respectively obtained by CRUZ algorithm initialized with i = (x i , y i ).
Let us define the center c = (x c , y c ) as follows: 2 Let I be the matrix of a given ocular image, and i = (x i ,y i ) be the coordinate pair of some pixel located inside the pupil of that image.A pseudo-code for CRUZ algorithm from i could be:

while I[x i , y i ] -I[x i , y i+ T S ]| ≤ τ and y i+ T S < M-1 5. do T S ←T S + 1 6. while I[x i , y i ] -I[x i+ T E , y i ]|≤τ and x i+ T E < N-1 7. do T E ←T E + 1 8. while I[x i , y i ] -I[x i -T W , y i ]|≤ τ and
given by (1) 11.Calculate y c given by (2) 12. c←(x c , y c ) 13. return c, T N , T S , T E , T W .
The CRUZ algorithm outputs are the center c=(x c , y c ) and the lengths (in pixels) of the four paths.Thus, after CRUZ algorithm running, we have a possible center for the circle; but we still need to determine the radius r to complete the pupil segmentation.At first we could approximate r as half trace (whatever vertical or horizontal trace), but there is a detail we have to consider: The real pupil in the sample is not a perfect disc, since it has irregular edges, sometimes depending on light conditions, other times varying from an individual to another.This fact determines at least the next two issues: 1) After CRUZ algorithm running, the lengths of the traces could be different, so we would have to establish criteria to obtain r from the traces.
2) The farther from the real center of the pupil the initial coordinate pair i is, the worse the estimation by c of the real center will be.
If the pupil were a perfect disc, both traces would measure the same; and a half-length trace would measure the radius r of our interest.In this case, CRUZ algorithm would obtain the exact center of the disk starting from any coordinate pair of the pupil, no matter how far from the center it is.
The second issue suggests that we will obtain a better center c (closer to the real center) if the starting position i is already near the pupil center.Therefore, let 'c*' be the center calculated by CRUZ algorithm running.Therefore, to fix the second issue we will run CRUZ algorithm again, just from 'c*' as initial position.In other words, the first execution will get us closer to the real center, and the second will give us a very good estimation of it.Finally, to attack the first issue, we decided to choose as radius r the minimum from the four paths given by a third CRUZ execution from the last center obtained (see Fig. 3).This will guarantee that our pupil segmentation does not include iris pixels.Summary: To obtain our pupil segmentation (c,r), we will use CRUZ algorithm (double run) to obtain c, and again to obtain r, always assuming that the first run starts from a coordinate pair inside the pupil (the second and third run start from the center calculated by the earlier run).

B. Improving CRUZ algorithm
Since the pupil represents the biggest dark area in any sample (see iii, Section I), if we choose a set of regular spaced positions from the image, most of the darker pixels will be from the pupil.Other dark pixels could come from eyelashes or some kind of noise.Therefore, we used that fact as follows: If CRUZ algorithm is executed from a dark pixel that is not in the pupil (eyelashes, noise, etc.), the horizontal and vertical traces will be too tiny or too different from each other.Therefore, we redefined the criterion to determine if a trace is adequate with  parameter, which specifies a minimum value for pupil radius.On the other hand, to determine if both traces are alike enough, we fixed a criterion of "expected circularity" introducing  parameter as a percent of desired similarity.We applied these rejection criteria over an ordered list C of coordinate pairs (candidates to be from pupil).If a candidate is rejected, we pass to the next in C list.If not, we assumed that we have found a coordinate pair i as we needed to apply CRUZ algorithm.To minimize the number of comparisons, we could define C as a selection of regular spaced pixels (fig.4) and then order them by bright level, starting from the darkest one.
We introduced the following definitions: Let C={ } be the ordered finite list of pixels defined above such that: o c is the darkest one and i c is darker than 1  i c .We will use the symbol "CRUZ[x]" to denote the execution of CRUZ algorithm initialized with the sample"s pixel "x".www.ijacsa.thesai.org} , , , min{

IV. NORMALIZATION: IMPROVEMENT OF THE SECOND PHASE
The purpose of this section is to provide some kind of standardization of samples, in pursuit of obtaining improvements to further stages of a BSI.

Most of the normalization methods consist in obtaining a feature matrix smaller than the original I sample [5] [6] [8] [20] [21] [22]
. Dougman [5] proposed to build a normalized matrix, N, based on an iris sub-circumferences selection.To build the matrix N this methodology uses polar representation with and r parameters, where:  r (radial resolution) is the amount of regular spaced sub-circumferences to take from the circular crown given by the previous phase.These circumferences will be the rows of matrix N.
 angular resolution is the amount of regular spaced radios to take from the iris segmentation; these radios will be the columns of matrix N.  Daugman's normalization is based on an arbitrary selection of regular spaced pixels.The risk of this method is that it may produce a weak representative selection of iris texture.In addition, attacking this issue by and r increasing, will result in a bigger N matrix, and so, in a higher computational cost.In this work we proposed an improvement of Daugman's normalization.This new normalization procedure is based on the use of the sample mean and involves all of the pixels inside the iris.We decided to use the sample mean, because after several proofs we obtained better results than using other statistic functions for example median or standard deviation.Our normalization method produces the M normalized matrix as follows: 1) Apply Daugman's method with appropriate parameters in order to produce an output matrix N that contains the whole of pixels of iris image.Note that matrix N will be redundant.
2) Divide N on n x m sub-matrices according to a grid of n x m blocks.
Figure 7 shows schematically the method for obtaining the M normalized matrix.www.ijacsa.thesai.orgFig. 7. Above, the matrix N from step 1, which contains all the pixels from the original sample.Overlapped in red, the grid of n x m blocks.Below, the final normalized matrix M obtained by computing the sample mean of each block.
Formally: Let   and r N be the Daugman"s input parameters such that applying unwrapping over an iris image, the output matrix N contains all the pixels of the image.Let V H   , be the horizontal and vertical lengths of every block respectively, defined by: where i{0,1,..n-1} and j{0,1,,m-1} ) The target of the Extraction phase in BSI is to find the biometric interest feature inside the normalized sample, and save it to build the so called "biometric code".This step is not really essential, since the normalized samples of the previous phase could be already used to identify persons.Anyway, we developed an additional new improvement of the BSI taking advantage of this phase and inspired by the following issue: If two samples have different base light level, the matching phase could fail even when the samples came from the same individual.
We defined our feature vector (biometric code) attempting to keep the change relation from one pixel to another as follows: where M is the normalized matrix obtained after applying (7), and D is a matrix of dimension [(n-1) x m], called differential matrix.Now, let us suppose that M 1 and M 2 are two normalized samples to be compared; suppose that M 2 is the same that M 1 but adding a constant k to every element of M 1 .Note that we will get the same feature vector D for both M 1 and M 2 .This means that D can fix the base light issue successfully, and the matching phase will take advantage of this improvement.

VI. RESULTS AND VALIDATION
We ran CRUZ algorithm in CASIA database version 1.0.The success-failure criterion in pupil segmentation stage was based on geometrical circle properties.Additionally, the success in the segmentation process was visually verified.We obtained a 100% effectiveness in 4.45 seconds (approximately 5 milliseconds per sample).We calculated an "average stepping" of 1.067.This parameter measures the number of pixels that CRUZ algorithm discarded before obtaining the center and radius of the circle in the pupil segmentation process.
The Matching phase results were evaluated according to the following two criteria:  Individual"s Matching criterion: We counted one success every time our method matched an individual with any of its testing samples.(Success over number of individuals).
 Sample"s Matching criterion: We counted one success every time our method matched a sample with the right individual.(Success over number of samples).
Matching phase task is to measure the level of similarity between two biometric codes to establish whether these came from the same individual or not.As in most of the works in this area ( [6]  Our Matching results compared to another development presented in [6] are summarized in Table 1.

A. Segmentation
Our results are highly positive because the analysis and segmentation of 756 images in the entire dataset only takes 4.45 seconds in a low profile standard laptop.The value obtained for average stepping shows that the first pixel selected by the CRUZ algorithm was already inside the pupil in most of the cases.

B. Matching
The computational cost of our methodology is lower than in most of the methods presented in [8].The Matching effectiveness in CASIA database Version 1.0 is superior or equal to 95.8%.When we used the individual"s matching criterion, our method reached the 100% of matching effectiveness.In consequence, we were capable of identifying all the individual of the CASIA database version 1.0 [15].

C. Globals
In general we verified informal ideas such as:  "It was possible to resolve the segmentation problem in a very much simpler way and without complex mathematical models"  "Most of the existing methods put a big effort and high complexity into taking the most accurate segmentation, we committed to improving the other steps of the system awaiting for competent results" Indeed, we obtained competitive results spending fewer computing resources on the segmentation step (resigning perhaps some accuracy), and proposing then some prior improvements before comparison by Hamming.
In other words, we achieved a drastic complexity reduction by segmenting the inner pupil edge with our CRUZ algorithm and taking advantage of anatomical standards for the outer edge, opposing the possible accuracy loss in segmentation through improvements implemented in the normalization step and the use of differential matrix before comparison.

VIII. FUTURE SCOPES
At present the problem of matching based on iris segmentation is a matter of big interest in the forensic and security areas.The behavior of our proposal using color images of faces is still being a pending matter.Likewise, the study of the effectiveness of our matching method, considering other measures of similarity between biometric codes, is matter an interesting open problem to be addressed in the future.The analysis of CRUZ algorithm performance using another database is also a pending issue.

Fig. 3 .
Fig. 3. Graphical CRUZ algorithm execution from the estimated center.

Fig. 5 .
Fig. 5. Graphic representation of Daugman method.Left: original sample.Right: normalization of the original sample.
[8] [21]), we used Hamming distance to compare two iris codes.Given D 1 and D 2 , two differential matrices of [(n-1)x m] dimension, the Hamming distance between D 1 and D 2 is defined as follows:where B is a constant that indicates the amount of bits necessary to represent every D 1 (or D 2 ) element,  corresponds to XOR operator and " | | 1 " counts no-nulls bits in binary representation.