2. features of fingerprint
enhancement
binarization
thinning
minutaie detection
3. 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.
4. 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.
7. • 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.
8. Bifurcation: It is the intersection of two or more line-types which converge or diverge.
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.
Island: A line-type that stands alone.( i.e. does not touch another line-type)
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.
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.
10. Reliable minutiae extraction is extremely
important
Enhancement
Binarization
Thinning
11. 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.
12. 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
13. For each fingerprint image, the fingerprint areas
resulting from segmentation can be divided into:
Well-defined region
Recoverable region
Unrecoverable region
14. 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
15.
16. 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
17. A. Normalization
B. Ridge Frequency
C. Wavelet Decomposition
D. Orientation Field Estimation
18. 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
19. 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.
20. 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.
21.
22.
23.
24. 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 )
25. Initializing Variables in Assignment
Statements
column vectors row vectors
1
a = 2 a = {1 2 3}
3
>>a=[1;2;3] >>a=[1,2,3]
>>a >>a
a= a=
1 1 2 3
2
3
use semi-colon use comma
to separate rows to separate columns
26. Initializing with Shortcut Expressions
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 1 1
2 2
>> g = [1:4]; h=
3 3
>> h = [ g′ g′ ]; 4 4
27. The end function
• 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)
28. 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
29. 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
30. Built-in MATLAB Functions
Math representation Matlab interpretation
z = yx >>z=y^x;
y = ex >>y=exp(x);
y = ln(x) >>y=log(x);
y = log(x) >>y=log10(x)
y = sin(x) y = sin −1 (x) >>y=sin(x); >>y=asin(x);
y = cos(x) y = cos −1 (x) >>y=cos(x); >>y=acos(x);
y = tan(x) y = tan −1 (x) >>y=tan(x); >>y=atan(x);
31. 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')
32. 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
34. 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)
35. Syntax-
Imshow(f,g)
Where f=image array
G=no. of intensity level used to display it.
• Imshow(f.[low high])
36. 1. Intensity type images
a data values whose intensity has been scaled to represent intensities.eg.-
scaled uint8,scaled uint16
2. Binary type images
Logical arrays of 0s &1s
S=logical(a)
Where a is numerical array
40. 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)
41. >>%code for vertical flip of image
>> f=imread('finger.png.jpg');
>> imshow(f)
>> fb=f(end:-1:1,:);
>> figure,imshow(fb)
48. 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
52. Fingerprint is thinned becoz after being thinned,
it is easier to find minutiae such as bifurcation
and simple end points.
53. Reduces the width of the ridges to one pixel
Skeletons , spikes
Filling holes, removing small breaks,
eliminating bridges between ridges etc.
54. 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