Fingerprint Recognition Professor Ostrovsky Andrew Ackerman.

Slides:



Advertisements
Similar presentations
Polygon Scan Conversion – 11b
Advertisements

Objectives Define Clipping Various clipping methods. Line clipping methods.
Applied Algorithmics - week7
Fault-Fracture charachterization in OpendTect
Finger print classification. What is a fingerprint? Finger skin is made of friction ridges, with pores (sweat glands). Friction ridges are created during.
Viewing & Clipping In 2D. 2 of 44 Contents Windowing Concepts Clipping –Introduction –Brute Force –Cohen-Sutherland Clipping Algorithm Area Clipping –Sutherland-Hodgman.
CMPE 466 COMPUTER GRAPHICS Chapter 8 2D Viewing Instructor: D. Arifler Material based on - Computer Graphics with OpenGL ®, Fourth Edition by Donald Hearn,
1 Video Processing Lecture on the image part (8+9) Automatic Perception Volker Krüger Aalborg Media Lab Aalborg University Copenhagen
Fingerprint Recognition Checkpoint Slides Andrew Ackerman Professor Ostrovsky.
THE FINGERPRINT  The reader acquires the fingerprint image.
1Ellen L. Walker Edges Humans easily understand “line drawings” as pictures.
6/9/2015Digital Image Processing1. 2 Example Histogram.
COMP322/S2000/L181 Pre-processing: Smooth a Binary Image After binarization of a grey level image, the resulting binary image may have zero’s (white) and.
Automatic Fingerprint Matching System Hsing-Hua Yu and Chaur-Chin Chen Department of Computer Science National Tsing Hua University Hsinchu 30013, Taiwan.
Good quality Fingerprint Image Minutiae Feature Extraction
An Approach to Korean License Plate Recognition Based on Vertical Edge Matching Mei Yu and Yong Deak Kim Ajou University Suwon, , Korea 指導教授 張元翔.
Highlights Lecture on the image part (10) Automatic Perception 16
Objective of Computer Vision
Fingerprint Recognition Professor Ostrovsky Andrew Ackerman.
Implementation of An Automatic Fingerprint Identification System Peihao Huang, Chia-Yung Chang, Chaur-Chin Chen Department of Computer Science National.
E.G.M. PetrakisBinary Image Processing1 Binary Image Analysis Segmentation produces homogenous regions –each region has uniform gray-level –each region.
Face Recognition Using Neural Networks Presented By: Hadis Mohseni Leila Taghavi Atefeh Mirsafian.
Image processing Lecture 4.
Software Engineering Project Fruit Recognition Zheng Liu.
Digital Image Processing - (monsoon 2003) FINAL PROJECT REPORT Project Members Sanyam Sharma Sunil Mohan Ranta Group No FINGERPRINT.
FEATURE EXTRACTION FOR JAVA CHARACTER RECOGNITION Rudy Adipranata, Liliana, Meiliana Indrawijaya, Gregorius Satia Budhi Informatics Department, Petra Christian.
Neighborhood Operations
CGMB 314 Intro to Computer Graphics Fill Area Primitives.
By Meidika Wardana Kristi, NRP  Digital cameras used to take picture of an object requires three sensors to store the red, blue and green color.
Spatial Filtering: Basics
CS 6825: Binary Image Processing – binary blob metrics
Color and Resolution Introduction to Digital Imaging.
Morphological Image Processing
Minutiae. Review: Fingerprint Principles According to criminal investigators, fingerprints follow 3 fundamental principles: A fingerprint is an individual.
Data Extraction using Image Similarity CIS 601 Image Processing Ajay Kumar Yadav.
CS 376b Introduction to Computer Vision 03 / 21 / 2008 Instructor: Michael Eckmann.
An Efficient Search Strategy for Block Motion Estimation Using Image Features Digital Video Processing 1 Term Project Feng Li Michael Su Xiaofeng Fan.
Digital Image Processing - (monsoon 2003) FINAL PROJECT REPORT Project Members Sanyam Sharma Sunil Mohan Ranta Group No FINGERPRINT.
Levels of Image Data Representation 4.2. Traditional Image Data Structures 4.3. Hierarchical Data Structures Chapter 4 – Data structures for.
COMPUTER GRAPHICS. Can refer to the number of pixels in a bitmapped image Can refer to the number of pixels in a bitmapped image The amount of space it.
1 Machine Vision. 2 VISION the most powerful sense.
Vector Quantization Vector quantization is used in many applications such as image and voice compression, voice recognition (in general statistical pattern.
By Pushpita Biswas Under the guidance of Prof. S.Mukhopadhyay and Prof. P.K.Biswas.
October 1, 2013Computer Vision Lecture 9: From Edges to Contours 1 Canny Edge Detector However, usually there will still be noise in the array E[i, j],
Kfir Wolfson & Adi Barchan Final project, autumn 2006.
Course 5 Edge Detection. Image Features: local, meaningful, detectable parts of an image. edge corner texture … Edges: Edges points, or simply edges,
Example Apply hierarchical clustering with d min to below data where c=3. Nearest neighbor clustering d min d max will form elongated clusters!
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
Course 3 Binary Image Binary Images have only two gray levels: “1” and “0”, i.e., black / white. —— save memory —— fast processing —— many features of.
Chapter 6 Skeleton & Morphological Operation. Image Processing for Pattern Recognition Feature Extraction Acquisition Preprocessing Classification Post.
Leaves Recognition By Zakir Mohammed Indiana State University Computer Science.
April 21, 2016Introduction to Artificial Intelligence Lecture 22: Computer Vision II 1 Canny Edge Detector The Canny edge detector is a good approximation.
3. Polygon Triangulation
Implementation of An Automatic Fingerprint Identification System
图像处理技术讲座(3) Digital Image Processing (3) Basic Image Operations
Digital Image Processing - (monsoon 2003) FINAL PROJECT REPORT
FINGER PRINT RECOGNITION USING MINUTIAE EXTRACTION FOR BANK LOCKER SECURITY Presented by J.VENKATA SUMAN ECE DEPARTMENT GMRIT, RAJAM.
IMAGES.
Polygon Filling Algorithms
VERTICAL LINE TEST GRAPHS can represent functions.
Coarse Classification
Binary Image processing بهمن 92
Lecture 13 Clipping & Scan Conversion
VERTICAL LINE TEST GRAPHS can represent functions.
Fourier Transform of Boundaries
Functions Unit Pre-Algebra.
Computer and Robot Vision I
Richard Anderson Winter 2019 Lecture 6
Digital Filters.
Lab 2: Fingerprints CSE 402.
Presentation transcript:

Fingerprint Recognition Professor Ostrovsky Andrew Ackerman

The Idea Including Region information in minutiae matching Including Region information in minutiae matching Reduces amount of matches need Reduces amount of matches need Can help better identify matches Can help better identify matches

The Process Preprocessing image Preprocessing image Getting image into proper input Getting image into proper input 24-bit Bitmap of ridge detail properly enclosed 24-bit Bitmap of ridge detail properly enclosed Thinning Image Thinning Image Zhang-Suen Thinning algorithm Zhang-Suen Thinning algorithm A Fast Parallel Algorithm for Thinning Digital Patterns A Fast Parallel Algorithm for Thinning Digital Patterns Edge Enhancement Edge Enhancement Fill in gaps in edges due to input quality or thinning process Fill in gaps in edges due to input quality or thinning process Code works to extent Code works to extent Region Coloring Region Coloring Colors in regions Colors in regions Spurious Region Removal Spurious Region Removal Remove regions erroneously created in thinning process Remove regions erroneously created in thinning process

Thinning (Zhang-Suen) A(P) = Number of 01 patterns in order set P 2 … P 9 A(P) = Number of 01 patterns in order set P 2 … P 9 B(P) = Number of non-zero neighbors B(P) = Number of non-zero neighbors Algorithm: Algorithm: Do until picture is stable: Do until picture is stable: First Subiteration: Delete P from pattern if: First Subiteration: Delete P from pattern if: A) 2 ≤ B(P) ≤ 6 A) 2 ≤ B(P) ≤ 6 B) A(P) = 1 B) A(P) = 1 C) P 2 * P 4 * P 6 C) P 2 * P 4 * P 6 D) P 4 * P 6 * P 8 D) P 4 * P 6 * P 8 Second Subiteration: Delete P from pattern if: Second Subiteration: Delete P from pattern if: A and B same as above A and B same as above C’) P 2 * P 4 * P 8 C’) P 2 * P 4 * P 8 D’) P 2 * P 6 * P 8 D’) P 2 * P 6 * P 8

Thinning Example Spurious Regions Edge Gaps

Scanning Image Scan image Scan image Move a window down the image Move a window down the image Offset window horizontally Offset window horizontally Offset window vertically Offset window vertically Offset window horizontally Offset window horizontally and vertically

Edge Enhancement Scan the Image Scan the Image For each window: For each window: Find all the endpoints in the window Find all the endpoints in the window For each endpoint pair For each endpoint pair Look at line that goes through the points Look at line that goes through the points If line is “strong” If line is “strong” Draw line between points Draw line between points

Region Coloring Color in Regions Color in Regions Does in one scan of image Does in one scan of image

Spurious Regions Removal Scan the Image Scan the Image For each window For each window If a region is encased in the window and is small enough If a region is encased in the window and is small enough Calculate how often the regions around it border it Calculate how often the regions around it border it Remove the border between the region and the region that least borders it Remove the border between the region and the region that least borders it

Testing Tested 8 different fingerprints of same finger Tested 8 different fingerprints of same finger Choose different minutiae pairs Choose different minutiae pairs Calculated amount of edges crossed between the minutiae Calculated amount of edges crossed between the minutiae Calculated amount of regions crossed between minutiae pair Calculated amount of regions crossed between minutiae pair Compared Results Compared Results

Input Fingerprints

Output of Program

Minutiae Pair 1 Image 1:13 Regions, 20 Edges Image 1:13 Regions, 20 Edges Image 2: 9 Regions, 16 Edges Image 2: 9 Regions, 16 Edges Image 3: 11 Regions, 19 Edges Image 3: 11 Regions, 19 Edges Image 4: 11 Regions, 17 Edges Image 4: 11 Regions, 17 Edges Image 5: 12 Regions, 19 Edges Image 5: 12 Regions, 19 Edges Image 6: 10 Regions, 16 Edges Image 6: 10 Regions, 16 Edges Image 7: 11 Regions, 15 Edges Image 7: 11 Regions, 15 Edges Image 8: 13 Regions, 18 Edges Image 8: 13 Regions, 18 Edges

Minutiae Pair 2 Image 1: 7 Regions, 11 Edges Image 1: 7 Regions, 11 Edges Image 2: 5 Regions, 13 Edges Image 2: 5 Regions, 13 Edges Image 3: 6 Regions, 11 Edges Image 3: 6 Regions, 11 Edges Image 4: 7 Regions, 12 Edges Image 4: 7 Regions, 12 Edges Image 5: 7 Regions, 11 Edges Image 5: 7 Regions, 11 Edges Image 6: 6 Regions, 10 Edges Image 6: 6 Regions, 10 Edges Image 7: 4 Regions, 8 Edges Image 7: 4 Regions, 8 Edges Image 8: 7 Regions, 12 Edges Image 8: 7 Regions, 12 Edges

Statistics Minutiae Pair 1 Minutiae Pair 1 Max Region Difference:4 Max Region Difference:4 Average Region Difference:1.64 Average Region Difference:1.64 Max Edge Difference: 5 Max Edge Difference: 5 Average Edge Difference:2.21 Average Edge Difference:2.21 Minutiae Pair 2 Minutiae Pair 2 Max Region Difference:3 Max Region Difference:3 Average Region Difference:1.25 Average Region Difference:1.25 Max Edge Difference:5 Max Edge Difference:5 Average Edge Difference:1.7 Average Edge Difference:1.7

Future Work Improve Preprocessing Code Improve Preprocessing Code Improve on edge enhancement via algorithms that use edge orientation Improve on edge enhancement via algorithms that use edge orientation Matching Algorithm Matching Algorithm Using processed fingerprints, come up with algorithm that does fingerprint matching Using processed fingerprints, come up with algorithm that does fingerprint matching Use idea of regions and lines between minutiae Use idea of regions and lines between minutiae Fingerprint of Fingerprint Fingerprint of Fingerprint Run X amount of binary tests on a fingerprint and return a vector of size X. This binary vector would identify the finger print Run X amount of binary tests on a fingerprint and return a vector of size X. This binary vector would identify the finger print Matching prints would have similar vectors (hamming distance) Matching prints would have similar vectors (hamming distance) Tests could include information about minutiae as well as regions Tests could include information about minutiae as well as regions