Iris Recognition by Optimized Code Book Generation


This work has presented an iris recognition system, which was tested using MMU databases of greyscale eye images in order to verify the claimed performance of iris recognition technology. Firstly, an automatic segmentation algorithm was presented, which would localize the iris region from an eye image and isolate eyelid, eyelash and reflection areas. Automatic segmentation was achieved through the use of the circular Hough transform for localizing the iris and pupil regions, and the linear Hough transforms for localizing occluding eyelids. Thresholding was also employed for isolating eyelashes and reflections.

Download Code  Discuss Code


The biometric system has wide applications in the field of identification of a single person. The unique physical features are useful to find out identification from the biometric database. The irises are also useful as the biometric application. Iris reorganization is an attractive scheme for identity management. It provides accurate identification authentication without using passwords and cards. Iris is a muscle in a human eye that varied the pupil size [1].

Thesis statement

In this thesis, an iris recognition system is developed by using a circular hour transform, Gabor and wavelet filter and optimization algorithm. The MMU dataset with the digitized grayscale image is used to evaluate the performance of the iris recognition. The iris recognition system consists of an automatic segmentation system that is based on the circular Hough transform and can localize the circular iris and pupil region, occluding eyelids and eyelashes, and reflections.

The extracted iris region was then normalized into a rectangular block with constant dimensions to account for imaging inconsistencies. Finally, the phase data from 1D Log-Gabor filters cascaded with wavelet features were extracted and encoded the unique pattern of the iris into a bit-wise biometric template. We converted this encoding process to an optimization problem and introduced the two additional objective functions to choose only the reliable bits. This encoding process is optimized with the GA algorithm. The Hamming distance was employed for classification of iris templates, and two templates were found to match if a test of statistical independence was failed.

Advantages of Iris recognition

  • Avoided physical contact during scanning
  • Accurate Matching performance
  • Operated from a long distance
  • Hard to spoof
  • It does not change with person age

Drawbacks of Iris recognition

  • Visual light should be minimized for accurate recognition
  • It cannot be used as a regular camera
  • It requires proximity camera
  • The minimum value of criminal investigations

A similar article Facial Expression Recognition using HOG Features is also available on

Facial expression recognition@free-thesis
Facial Expression Recognition

Steps of Iris recognition

The entire iris recognition system is divided into the four major steps;

  • Iris detection by circular hough transform
  • Iris normalization
  • Features encoding (Gabor & wavelet features encoding)
  • Iris recognition
Optimized Iris Recognition @ free-thesis
Optimized Iris Recognition @ free-thesis

Figure 1 Block diagram of iris recognition

Proposed method

The complete work is developed in the MATLAB 2017a software. The MMU iris dataset is used to test the proposed work. The dataset contains the 46 objects iris images with left and right orientations. The five different orientations of iris images are stored with the left and right combination. A total of 460 iris images are used for the training and testing purpose. We used a combination of Gabor and wavelet transform features that are used for every image and these features are encoded. Conventionally features are encoded considering

where bi is the set of binary encoded features and fi are featured.

This encoding also encodes those features that are not robust like features along with the edges and fragile bits in the iris code which leads to performance degradation. So we proposed two optimization equations to remove these limitations of iris coding and these are optimized with the Genetic optimization algorithm. Circular hough transform is explained in the previous chapter and used to detect the iris. Fortunately, in MATLAB 2017a, we have a function based on circular hough transform, which is used to detect the iris. Though this method is sensitive to the inner and outer radius of iris and pupil and our database has eyes at some orientation too.

Objective function

Equation 1 can be converted into an optimization problem as

We introduced two more additional terms along with this objective function and based on those terms, and three cases are tested and optimized by the Genetic optimization algorithm.

First-term of the objective function

In this thesis, due to the binary nature of iris codes, we assume that such a vertical dependency will lead to a vertical bit-adjacency in an iris code. Accordingly, our first objective term exploits the vertical bit-adjacency in an iris code. It is defined as follows:

Where N denotes the two vertical neighbors of bit bi. The terms 4 is added into equation 3 and can be combined as 5

Now Genetic optimization optimizes this equation as the first objective and encodes the data. Here α is a tradeoff between feature value and vertical adjacency bits.

The second term of the objective function

Some bits in iris codes are less reliable. A bit is less reliable if the corresponding feature value is close to the origin in the feature space since such bits are less stable in iris codes. These bits can be removed by using equation 6.

and it is combined with equation 3 as

This is the second objective function, which is tuned by Genetic optimization.

Overall objective function

To mitigate the bits at the edges and to add advance effect, equation 5 and 7 are combined as

Objective function tuned by Genetic Algorithm

GA is based on chromosomes’ positions, which later on updated as their children. These chromosome positions are equal to several features to be encoded. In our work, several features so chromosomes will also be presented by this number of coordinates in their searching space. These coordinates values are in the Matrox of 0, and 1. 0 is considered as that feature is encoded as 0, and 1 depicts that the corresponding feature is 1 encoded. Table 1 shows a part of encoded features.

Flow chart of entire work

Optimized iris recognition@ free-thesis
Optimized iris recognition@ free-thesis

Figure 2 Flow chart of the proposed method of iris recognition

Results and Discussion

We detected iris and pupil in the MMU database. We chose to work with the Multimedia University (MMU) iris database, contributing a total of 450 images, 5 images per iris, 2 irises per subject. All images were taken using the LG Iris Access 2200 at a range of 7-25 centimeters. Figure 3 shows the sample of detected iris for a few images in that database.

Optimized iris recognition@free-thesis

Figure 3 (a) Object 41-right eye      (b) object 46-right eye

We have saved database features for all four cases and used in matching for respective case. Figure 4 shows the query image and its normalized version of iris.

Optimized iris recognition@free-thesis

Figure 4: (a) Detected iris (b) normalized iris

We have encoded the features by four different objective functions. These encoded features are shown in figure 5. The first figure is for the conventional objective function. Second and others are for 1st objective function, second objective function and combined functions. The red dots represent that these elements in the encoded features had value 1 in basic method but now these are changed and vice versa for blue dots.

Optimized iris recognition@free-thesis

Figure 5: Encoded Features by four cases (a) Conventional encoding (b) 1st objective encoding optimized by GA (c) 2nd objective by GA (d) combined objective function encoding by GA

To calculate the accuracy, the whole database is processed and the combination of Gabor and wavelet features are extracted for each object’s Iris image. Though circular hough transform is not fit for every eye image, so we rejected those images manually, whose detection was not overlapped on Iris. This pre-processing improved the accuracy in iris detection.

optimized iris recognition@ free-thesis

Figure 6: Accuracy comparison for all four scenario


In this work, an iris recognition system is presented with MMU databases of grayscale eye images. The features of the iris were encoded by convolving the normalized iris region with 1D Log-Gabor filters and 1D Haar wavelet features. The encoding of features is done using a proposed combination of objective functions using GA optimization. 1st objective function is used to introduce adjancey of vertical neighbor bits and the second objective function removes the noise from iris edges. The Hamming distance was chosen as a matching metric, which gave a measure of how many bits disagreed between two templates.


  1. Hu, K. Sirlantzis and G. Howells, “Optimal Generation of Iris Codes for Iris Recognition,” in IEEE Transactions on Information Forensics and Security, vol. 12, no. 1, pp. 157-171, Jan. 2017.
  2. B. Pereira and A. C. Paschoarelli Veiga, “Application of Genetic Algorithms to Improve the Reliability of an Iris Recognition System,” 2005 IEEE Workshop on Machine Learning for Signal Processing, Mystic, CT, 2005, pp. 159-164
  3. Cherabit, Noureddine, Fatma Zohra Chelali, and Amar Djeradi. “Circular hough transform for iris localization.” Science and Technology2, no. 5 (2012): 114-121.

admin is an innovative and first of its kind platform created by Vidhilekha Soft Solutions Pvt Ltd, a Startup recognized by the Department For Promotion Of Industry And Internal Trade, Ministry of Commerce and Industry, Government of India recognised innovative research startup.


There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.