Full n final prjct

59

Transcript of Full n final prjct

Page 1: Full n final prjct
Page 2: Full n final prjct

features of fingerprint enhancement binarization thinning minutaie detection

Page 3: Full n final prjct

A fingerprint is the pattern of ridges and valleys on the surface of a fingerprint. Minutiae are local discontinuities in the fingerprint pattern. Ex-ridge ending and ridge bifurcation.

Ridges and valleys in a local neighborhood form a sinusoidal-shaped plane wave, which has a well-defined frequency and orientation.

In many cases, fingerprints are with numerous discontinuous ridges (dry, wet, damped, scars and smudges).

the main difficulty for feature extraction is that fingerprint quality is often too low, thus noise and contrast deficiency can produce false minutiae or hide valid ones.

Ex- when the person has cuts or scars in his/her fingers.

Page 4: Full n final prjct

Fingerprint recognition is one of the oldest and most researched fields of biometrics.

Some biological principles (Moenssens 1971) related

to fingerprint recognition are as follows:

• Individual epidermal ridges and furrows have different characteristics for different fingerprints.This forms the foundation of fingerprint recognition

• The configuration types are individually variable; but they vary within limits that allow for a systematic classification.Herein lies the basis for fingerprint classification.

• The configuration and minute details of furrows are permanent and unchanging.

Page 5: Full n final prjct
Page 6: Full n final prjct

Diagram of AFMS

Page 7: Full n final prjct

• The human fingerprint is comprised of various types of ridge patterns.• Traditionally classified according to the decades-old Henry system:

left loop, right loop, arch, whorl, and tented arch. • Loops make up nearly 2/3 of all fingerprints, whorls are nearly 1/3, and

perhaps 5-10% are arches. • These classifications are relevant in many large-scale forensic

applications, but are rarely used in biometric authentication.

Page 8: Full n final prjct

Arch: They are found in most patterns, fingerprints made up primarily of them are called “Arch Prints”.

Loop: A recursive line-type that enters and leaves from the same side of the fingerprint.

Ellipse: A circular or oval shaped line-type which is generally found in the center of the fingerprint, it is generally found in the Whorl print pattern.

Bifurcation: It is the intersection of two or more line-types which converge or diverge.

Island: A line-type that stands alone.( i.e. does not touch another line-type)

Tented Arch: It quickly rises and falls at a steep angle. They are associated with “Tented Arch Prints”.

Spiral: They spiral out from the center and are generally associated with “Whorl Prints”.

Rod: It generally forms a straight line. It has little or no recurve feature. They are gennerally found in the center.

Sweat Gland: The moisture and oils they produce actually allow the fingerprint to be electronically imaged.

Page 9: Full n final prjct

Arch Left Loop Right Loop Whorl undecided

Page 10: Full n final prjct

Reliable minutiae extraction is extremely important

Enhancement Binarization Thinning

Page 11: Full n final prjct

many algorithms and techniques proposed and applied to fingerprint image enhancement: using Fourier transform, Gabor filters, Wavelet transform and minutiae filtering, applied to binary or gray-scale images.

The main of an enhancement algorithm is to improve the clarity of ridge structures of fingerprint images in recoverable regions and to remove the unrecoverable regions.

the pattern is related to the ridge direction. the enhancement can help visualizing the ridges.

In this work, a directional wavelet transform is applied to decompose the image into its orientation representation.

Directional filtering is applied to each direction before image reconstruction.

Page 12: Full n final prjct

Performance depends on quality of images Ideal fingerprint Degradation types – ridges are not continuous, parallel

ridges are not well separated, cuts/creases/bruises Leads to problems in minutiae extraction

Page 13: Full n final prjct

Well-defined region Recoverable region Unrecoverable region

For each fingerprint image, the fingerprint For each fingerprint image, the fingerprint areasareas

resulting from segmentation can be divided resulting from segmentation can be divided into:into:

Page 14: Full n final prjct

Goal – to improve the clarity of the ridge structure in the recoverable regions and mark unrecoverable regions as too noisy for further processing

Input – a gray-scale image Output – a gray-scale or binary image

depending on the algorithm Effective initial steps - Contrast stretching,

Histogram manipulation, Normalization, Wiener Filtering

Page 15: Full n final prjct
Page 16: Full n final prjct

Most widely cited fingerprint enhancement is by use of wavelet transform and Gabor filtering.

It uses wavelet transform for demising and increases the contrast between the ridge and background (valley) by using a map function to the wavelet coefficient set, and thereafter, the Gabor filter method can further enhance the ridge using the orientation and frequency information.

In modified second derivative Gaussian filter ,we decompose the fingerprint image before directional filtering.

The second derivative of Gaussian filter is applied directly to each sub-image.

We reconstruct the fingerprint image by using the enhanced approximation image and detail images produced in decomposition.

Page 17: Full n final prjct

A. NormalizationB. Ridge FrequencyC. Wavelet DecompositionD. Orientation Field Estimation

Page 18: Full n final prjct

The processing of fingerprint normalization can reduce the variance in gray-level values along ridges and valleys .

It adjusts the gray-level values to the predefined constant mean and variance.

Normalization can remove the influences of sensor noise and gray-level deformation

Page 19: Full n final prjct

In a gray scale image, repeated ridges and valley appearance of fingerprint patterns can be viewed as a sinusoidal shape with some particular frequency..

The inverse of the average distance between the numbers of peaks encountered is the local frequency of that block.

In our case, the ridge frequency of 0.10-0.12 was measured.

Page 20: Full n final prjct

Different base function convolution with the image can have different effect in the resolution.

we can decompose the image into sub-images at any level.

However, too low resolution is not suitable because an excessive down sampling of the signal can vanish the orientation characteristic of the ridge structure.

We have used only one decomposition level.

Page 21: Full n final prjct
Page 22: Full n final prjct
Page 23: Full n final prjct
Page 24: Full n final prjct

The fundamental unit of data in MATLAB

Scalars are also treated as arrays by MATLAB (1 row and 1 column).

Row & column indices of an array start from 1.

Arrays can be classified as vectors and matrices.

Vector: Array with one dimension Matrix: Array with more than one dimension. Total number of elements in an array=

number of rows(n) * number of columns(m) Size of an array –(n x m )

Page 25: Full n final prjct

column vectors row vectors

1

a 2

3

a 1 2 3

>>a=[1;2;3]>>aa = 1 2 3

>>a=[1,2,3]>>aa = 1 2 3

use semi-colonto separate rows

use commato separate columns

Initializing Variables in Assignment Statements

Page 26: Full n final prjct

first: increment: last

• Colon operator: a shortcut notation used to initialize arrays with thousands of

elements

>> x = 1 : 2 : 10;>> angles = (0.01 : 0.01 : 1) * pi;

• Transpose operator: (′) swaps the rows and columns of an array

>> g = [1:4];>> h = [ g′ g′ ];

1 12 23 34 4

h=

Initializing with Shortcut Expressions

Page 27: Full n final prjct

• The end function: When used in an array subscript, it returns the highest value taken on by that subscript.

arr3 = [1 2 3 4 5 6 7 8];arr3(5:end) is the array [5 6 7 8]arr4 = [1 2 3 4; 5 6 7 8; 9 10 11 12];arr4(2:end, 2:end)

The end function

Page 28: Full n final prjct

MATLAB supports six relational operators. Less Than < Less Than or Equal <= Greater Than > Greater Than or Equal >= Equal To == Not Equal To ~=MATLAB supports three logical operators. not ~ % highest precedence and & % equal precedence

with or or | % equal precedence

with and

Page 29: Full n final prjct

Built-in MATLAB Functions

• result = function( input )– abs, sign– log, log10– exp– sqrt;– sin, cos, tan– asin, acos, atan– max, min– round, floor, ceil, fix– mod, rem

• help elfun help for elementary math functions

Page 30: Full n final prjct

Built-in MATLAB Functions

Math representation Matlab interpretationxz yxy e

y ln(x)

y log(x)

y sin(x)

y cos(x)

y tan(x)

1

1

1

y sin (x)

y cos (x)

y tan (x)

>>z=y^x;

>>y=exp(x);

>>y=log(x);

>>y=log10(x)

>>y=sin(x);

>>y=cos(x);

>>y=tan(x);

>>y=asin(x);

>>y=acos(x);

>>y=atan(x);

Page 31: Full n final prjct

x = 0:pi/100:2*pi;y = sin(x);plot(x,y)xlabel('x = 0:2pi')ylabel('Sine of x')title('Plot of the

Sine Function')

Page 32: Full n final prjct

A digital image is a representation of a two-dimensional image as a finite set of digital values, called picture elements or pixels

Pixel values typically represent gray levels, colours, heights, opacities etc

Remember digitization implies that a digital image is an approximation of a real scene

1 pixel

Page 33: Full n final prjct

Syntax- imread(‘filename’)Ex. F=imread(‘chestxray.jpg’); F=imread(‘d:\myimages\chestxray.jpg’); F=imread(‘.\myimages\chestxray.jpg’);

Page 34: Full n final prjct

Syntax imwrite(f,’filename’)Ex- Imwrite(f,’patient10_run’,tif); or Imwrite(f, ’patient10_run.tif’);For jpeg file Imwrite(f,’filename.jpg’,’quality’,q)

Page 35: Full n final prjct

Syntax- Imshow(f,g)Where f=image arrayG=no. of intensity level used to display it.• Imshow(f.[low high])

Page 36: Full n final prjct

1. Intensity type imagesa data values whose intensity has been scaled to represent intensities.eg.-

scaled uint8,scaled uint162. Binary type images Logical arrays of 0s &1sS=logical(a)Where a is numerical array

Page 37: Full n final prjct

Uint8 [0 255] Uint16 [0 65535] Double -10e308 to10e308 Int8 [-128 127] Int16 [-32768 32767] Single -10e38 to 10e38

Page 38: Full n final prjct

Im2uint8 Mat2gray Im2double im2bw

Page 39: Full n final prjct

TIFF JPEG GIF BMP PNG XWD

Page 40: Full n final prjct

Common image formats include: 1 sample per point (B&W or Grayscale) 3 samples per point (Red, Green, and Blue) 4 samples per point (Red, Green, Blue, and

“Alpha”, a.k.a. Opacity)

Page 41: Full n final prjct

>>%code for vertical flip of image>> f=imread('finger.png.jpg');>> imshow(f)>> fb=f(end:-1:1,:);>> figure,imshow(fb)

Page 42: Full n final prjct
Page 43: Full n final prjct

>> f=imread('finger.png.jpg');>> imshow(f)>> fc=f(57:168,57:168);>> figure,imshow(fc)

Page 44: Full n final prjct
Page 45: Full n final prjct

>> %code for sub sample of image>> f=imread('finger.png.jpg');>> imshow(f)>> fs=f(1:4:end,1:4:end);>> figure,imshow(fs)

Page 46: Full n final prjct

>>

Page 47: Full n final prjct

ENHANCEMENT includes 2 steps binarization thinning

Page 48: Full n final prjct

Based on peak detection in the gray-scale profiles along sections orthogonal to the ridge orientation

A 16x16 oriented window is centered around each pixel [x,y]

The gray-scale profile is obtained by projection of the pixel intensities onto the central section

Page 49: Full n final prjct

I= imread(‘image.bmp’) imshow(I)set(gcf,'position',[1 1 600 600]);J=I(:,:,1)>160;Imshow(J);set(gcf,'position',[1 1 600 600]);

Page 50: Full n final prjct
Page 51: Full n final prjct
Page 52: Full n final prjct

Fingerprint is thinned becoz after being thinned, it is easier to find minutiae such as bifurcation and simple end points.

Page 53: Full n final prjct

Reduces the width of the ridges to one pixel Skeletons , spikes Filling holes, removing small breaks,

eliminating bridges between ridges etc.

Page 54: Full n final prjct

Bwmorph: applies morphological operation on binary image.

Syntax: BW2 = bwmorph(BW,operation,n) applies the operation n times. n can be Inf, in which case the operation is repeated until the image no longer changes

Page 55: Full n final prjct

K=bwmorph(~J,'thin','inf');Imshow(~K);set(gcf,'position',[1 1 600 600]);

Page 56: Full n final prjct
Page 57: Full n final prjct
Page 58: Full n final prjct

3 cmds can be used to clear out the window clear all close all clc all

Page 59: Full n final prjct