You are on page 1of 8

Chapter 1

INTRODUCTION
1.1 INTRODUCTION:
1.1.1 Motivation behind Iris Detection Pin numbers, email passwords, credit card numbers, and protected premises access numbers all have something in common. All of them are a key to your identity, and all of them can easily be stolen or guessed after reading the first few pages of "Identity Theft for Dummies". Currently users have been encouraged to create strong passwords for every different domain. This leads to some logical problems. People tend to forget multiple, lengthy and varied passwords, therefore, they use one strong password for everything. This only allows the successful thief to gain access to all the protected information. The other option which follows is to carry a hard copy of each password which again can only be a reward for the quick pick-pocket. Only recently have companies started to use biometric authentication to protect access to highly confidential assets. You may be familiar with some of the physical traits used by biometric authentication programs such as fingerprints and retinas. Other traits that can be measured include the voice, face, and the iris. For most people, these are only high-tech gadgets simulated in hollywood. However, this technology is very real and is currently being used in the private sector. One method of particular interest is the use of iris codes to authenticate users. Iris detection is one one of the most accurate and secure means of biometric identification while also being one of the least invasive. Fingerprints of a person can be faked--dead people can come to life by using a severed thumb. Thiefs can don a nifty mask to fool a simple face recognition program. The iris has many properties which make it the ideal biometric recognition component. The iris has the unique characteristic of very little variation over a life's period yet a multitude of variation between individuals. Irises not only differ between identical twins, but also between the left and right eye. Because of the hundreds of degrees of freedom the iris gives and the ability to accurately measure the textured iris, the false accept probability can be estimated at 1 in 10^31. Another characteristic which makes the iris difficult to fake is its responsive nature. Comparisons of measurements taken a few seconds apart will detect a change in iris area if the light is adjusted--whereas a contact lens or picture will exhibit zero change and flag a false input. Iris Recognition: Detecting the Pupil Beginning with a 320x280 pixel photograph of the eye taken from 4 cenimeters away using a near infrared camera. The near infrared spectrum emphasizes the texture patterns of the iris making the measurements taken during iris recognition more precise. All images tested in this

program were taken from the Chinese Academy of Sciences Institute of Automation (CASIA) iris database. Since the picture was acquired using an infrared camera the pupil is a very distinct black circle. The pupil is in fact so black relative to everything else in the picture a simple edge detection should be able to find its outside edge very easily. Furthermore, the thresholding on the edge detection can be set very high as to ignore smaller less contrasting edges while still being able to retrieve the entire perimeter of the pupil. The best edge detection algorithm for outlining the pupil is canny edge detection. This algorithm uses horizontal and vertical gradients in order to deduce edges in the image. After running the canny edge detection on the image a circle is clearly present along the pupil boundary.

A variety of other filters can be used in order decrease the extraneous data found in the edge detection stage. The first step in cleaning up the image is to dilate all the edge detected lines. By increasing the size of the lines nearby edge detected components are likely to coalesce into a larger line segment. In this way complete edges not fully linked by the edge detector can form. Thus the dilation will give us a higher probability that the perimeter of the pupil is a complete circle. Knowing that the pupil is well defined more filters can be used without fear of throwing out that important information. Assuming the image is centered a filter can be used to fill in the circle defined by the pupil's perimeter. In this way we clearly define the entire area of the pupil. After this, a filter which simply throws out sections of connected pixels with an area below a threshold can be used effectively to throw out smaller disconnected parts of the image the edge detector found. Finally, any holes in the pupil caused by reflections or other distortions can be filled, by looking for sections of blank pixels with an area below a threshold. After this processing we achieve a picture that highlights the pupil area while being fairly clean of extraneous data.

1.4 WHAT IS MAT LAB?

MATLAB (matrix laboratory) is a numerical computing environment and


fourth-generation programming language. Developed by Math Works, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages, including C, C++, and Fortran. Although MATLAB is intended primarily for numerical computing, an optional toolbox uses the MuPAD symbolic engine, allowing access to symbolic computing capabilities. An additional package, Simulink, adds graphical multi-domain simulation and Model-Based Design for dynamic and embedded systems. MATLAB users come from various backgrounds of engineering, science, and economics. MATLAB is widely used in academic and research institutions as well as industrial enterprises. The MATLAB application is built around the MATLAB language. The simplest way to execute MATLAB code is to type it in the Command Window, which is one of the elements of the MATLAB Desktop. When code is entered in the Command Window, MATLAB can be used as an interactive mathematical shell. Sequences of commands can be saved in a text file, typically using the MATLAB Editor, as a script or encapsulated into a function, extending the commands available. MATLAB is a "Matrix Laboratory", and as such it provides many convenient ways for creating vectors, matrices, and multi-dimensional arrays. In the MATLAB vernacular, a vector refers to a one dimensional (1N or N1) matrix, commonly referred to as an array in other programming languages.

CHAPTER-2

IMAGE PROCESSING TOOLBARS


The Image Processing Toolbox software is a collection of functions that extend the capability of the MATLAB numeric computing environment. The toolbox supports a wide range of image processing operations, including.

Spatial image transformations Morphological operations Neighborhood and block operations Linear filtering and filter design Transforms Image analysis and enhancement Image registration Deblurring Region of interest operations Many of the toolbox functions are MATLAB M-files, a series of MATLAB statements that implement specialized image processing algorithms. You can view the MATLAB code for these functions using the statement type function name. You can extend the capabilities of the toolbox by writing your own M-files, or by using the toolbox in combination with other toolboxes, such as the Signal Processing Toolbox software and the Wavelet Toolbox software. This example introduces some basic image processing concepts. The example starts by reading an image into the MATLAB workspace. The example then performs some contrast adjustment on the image. Finally, the example writes the adjusted image to a file.

2.1 READ AND DISPLAY AN IMAGE:


First, clear the MATLAB workspace of any variables and close open figure windows. Close all; To read an image, use the imread command. The example reads one of the sample images included with the toolbox, pout.tif, and stores it in an array named I. I = imread('pout.tif');

imread infers from the file that the graphics file format is Tagged Image File Format (TIFF). For the list of supported graphics file formats, see the imread function reference documentation. Now display the image.

2.2 THE TOOLBOX INCLUDES TWO IMAGE DISPLAY FUNCTIONS:


imshow and imtool. imshow is the toolboxs fundamental image display function. imtool starts the Image Tool which presents an integrated environment for displaying images and performing some common image processing tasks. The Image Tool provides all the image display capabilities of imshow but also provides access to several other tools for navigating and exploring images, such as scroll bars, the Pixel Region tool, Image Information tool, and the Contrast Adjustment tool. For more information, Displaying and Exploring Images. You can use either function to display an image. This example uses imshow. Imshow (I); To write the newly adjusted image I2 to a disk file, use the imwrite function. If you include the filename extension '.png', the imwrite function writes the image to a file in Portable Network Graphics (PNG) format, but you can specify other formats. imwrite (I2, 'pout2.png'); See the imwrite function reference page for a list of file formats it supports. See also Writing Image Data to a File on page 3-5 for more information about writing image data to files. First, clear the MATLAB workspace of any variables, close open figure windows, and close all open Image Tools. close all; Read and display the grayscale image rice.png. I = imread('rice.png');

imshow(I) The Image Processing Toolbox software includes two display functions, imshow and imtool. Both functions work within the Handle Graphics architecture: they create an image object and display it in an axes object contained in a figure object. To display image data, use the imshow function. The following example reads an image into the MATLAB workspace and then displays the image in a MATLAB figure window. moon = imread('moon.tif'); imshow(moon); The imshow function displays the image in a MATLAB figure window, as shown in the following figure.

FIG:2.2 Image Displayed in a Figure Window by imshow

2.3 READING IMAGE DATA:

To import an image from any supported graphics image file format, in any of the supported bit depths, use the imread function. This example reads a true color image into the MATLAB workspace as the variable RGB. RGB = imread('football.jpg'); If the image file format uses 8-bit pixels, imread stores the data in the workspace as a uint8 array. For file formats that support 16-bit data, such as PNG and TIFF, imread creates a uint16 array. imread uses two variables to store an indexed image in the workspace: one for the image and another for its associated color map. imread always reads the colormap into a matrix of class double, even though the image array It may be of class. [X,map] = imread('trees.tif'); In these examples, imread infers the file format to use from the contents of the file. You can also specify the file format as an argument to imread. Imread supports many common graphics file formats, such as Microsoft Windows Bitmap (BMP), Graphics Interchange Format (GIF), Joint Photographic Experts Group (JPEG), Portable Network Graphics (PNG), and Tagged Image File Format (TIFF) formats. For the latest information concerning the bit depths and/or image formats supported, see imread and informants. If the graphics file contains multiple images, imread imports only the first image from the file. To import additional images, you must use imread with format-specific arguments to specify the image you want to import. In this example, imread imports a series of 27 images from a TIFF file and stores the images in a four-dimensional array. You can use imfinfo to determine how many images are stored in the file. mri = zeros([128 128 1 27],'uint8'); for frame=1:27 mri(:,:,:,frame),map] = imread('mri.tif',frame); % preallocate 4-D array

End

You might also like