You are on page 1of 19

Robust Iris Recognition

using Basis Pursuit


by Gabriel Thomas Maliakal
gtm2122

Overview
1.Iris recognition is a type of biometric identification that uses the
unique pattern found in an individuals iris.
2.Typically, the iris of a person is captured by a near infrared
camera, and this image after processing is compared with a
dictionary of stored irises.
3.If the error is below a threshold after comparision with each and
every iris, then the person is said to be recognized.

Steps involved
Preprocessing :
This involves storing the images from the dataset to a 3-D matrix in
matlab.
Resizing the images
Vectorizing the iris data from the eye to a column vector.

Platform used
Matlab 2015a
UTIRIS database ( cited at the end of slided)

Iris segmentation

1.In this step, I need to get the Iris part


from the eye.
2.First I find the pupil, then the center of
the pupil, assuming Iris has the same
center I form a bounding circle.
3.Then I collect Pixel data between the
Iris and pupil and make it into a
column vector.
4.This step is repeated for all images

To concatenate all the iris columns successfully I had to zero pad


those columns with elements less than the elements in the vector
with the maximum elements.
for p = svec+1 : Z
vec1(p)=0;
end
A = [A,vec1];

Sparse recovery
Now that I have my training matrix A, which in my case is of size
21699*230
I can Employ L1 minimization given an input test image.
L1 minimization also known as basis pursuit was done using
Accelerated Proximal gradient approach for Basis Pursuit DeNoising.

Accelerated Proximal gradient


approach.
The following picture shows the code I used for
the above approach.
converges at a rate of O(1/k2)

Typically the time taken to recover x was 30 seconds.


I took L = 2*1e8 and lambda as 55

Toy example
I was getting very good result for a toy example where I recovered a
sparse vector of 15 non zero elements using a dictionary of size
100*50

Time plots for the recovery from the


dictionary
From the plots, it seems like 10 iterations were
enough to reach a near constant error.

Error plots
The plot shows the error ||y-A*x||
here x corresponds to the 21st image.
We can see that this error is very small for
image 21, however it is not reproducible
as the same error can be seen for image 223 and also image 134

For recovery with image 35

Reconstruction error
1.The x recovered is actually the coefficient matrix.
2.To find reconstruction error, using the coefficient matrix and the
iris vectors in the Training matrix as components, I reconstruct
vectors for each class.
3.This was done by finding the linear sum of the 10 coefficients
with the corresponding images in the training matrix. For
example, for the first person, I used the first 10 coefficients and
found linear sum with the first 10 images.
4.For second person, second set of 10 coefficients and second set

This way I obtain 23 reconstructed images, one image per


person(class).
I then find the norm = L_2_norm (rec_image - A (:,i)). The class
corresponding to the minimum norm below a certain threshold is the
class identified.

Future works
To improve the functionality of the algorithm by better iris
segmentation.
To improve the functionality of the algorithm by finding better
measure of error.
Expand to video input.
Use the same concepts as well as Low rank matrices to diagnose eye
diseases.

Questions ?

Contact - gtm2122@columbia.edu

References
1. Robust and secure Iris recognition by Vishal M Patel, University of Maryland
http://www.eecs.berkeley.edu/~yang/courses/IJCB/IJCB_iris.pdf
2. J. Wright,A. Y. Yang,A. Ganesh,S. S. Sastry,Y. Ma, Robust face recognition via sparse
representation,"IEEE PAMI , 2009.
3. ELEN 6886 Lectures 8: Algorithms I, John Wright, Columbia University

Acknowledgements
UTIRIS Database:
@article{HosseiniAraabiSoltanianZadeh:2010, author={Hosseini, M.S. and Araabi, B.N. and Soltanian-Zadeh, H.},
journal={Instrumentation and Measurement, IEEE Transactions on}, title={Pigment Melanin: Pattern for Iris Recognition},
year={2010}, month={april}, volume={59}, number={4}, pages={792 -804}, doi={10.1109/TIM.2009.2037996},
ISSN={0018-9456},}

You might also like