1 machine vision. 2 vision the most powerful sense
TRANSCRIPT
1
Machine Vision
2
VISION
the most powerful sense
3
OUTLINE
1. Properties of Machine Vision Systems
Methods in Machine Vision
2. Example: Fingerprint Recognition System
4
Machine Vision System
• creates a model of the real world from images
• recovers useful information about a scene from its two dimensional projections
5
A typical control system:
Scene Image Description
Application feedback
Imaging device
MACHINE VISION
Illumination
6
Components of a M.V. system
HARDWARESOFTWARE
• Optics (lenses, lighting)• Cameras • Interface (frame grabber)• Computer
7
Components of a M.V. system
HARDWARESOFTWARE
-There is no universal vision system-One system for each application
• Libraries with custom code developed using Visual C/C++, Visual Basic, or Java
• Graphical programming environments
8
Application Fields
• Medical imaging• Industrial automation • Robotics • Radar Imaging • Forensics • Remote Sensing • Cartography • Character recognition
9
Machine Vision StagesImage Acquisition
Image Processing
Image Segmentation
Image Analysis
Pattern Recognition
Analog to digital conversion
Remove noise,improve contrast…
Find regions (objects) in the image
Take measurements of objects/relationships
Match the description withsimilar description of known objects (models)
10
Image Formation
• Perspective projection
• Orthographic projection
3D 2DProjection
11
Digital Image Representation
Image: 2D array of gray level or color values
Pixel: Array element Picture Element
•It`s 2D•It`s a square•It has one color•It may be any color
Pixel value: Arithmetic value of gray level or color intensity
Gray level image: f = f(x,y) Color image: f = {Rred(x,y), Ggreen(x,y), Bblue(x,y)}
12
Digital Image Formation
• Sampling rate (resolution)
• Quantization level
Sampling Quantization
13
Different Sampling Rates
14
Different Quantization Levels
15
Image Processing (IP)
Input Image Output Image
Image Processing
FilteringSmoothingThinning
ExpendingShrinking
Compressing…
16
Fundementals• Neigborhood
• Histogram: gray levels vs number of pixels
4-Neighbors 8-Neighbors
17
IP Examples
Removal of noise with median filter
18
IP Examples (2)
Improvement of contrast by histogram modification
19
Symethricalinversion of the image
IP Examples (3)
20
IP Examples (4)
Smoothing
Original Uniform Gaussian
21
Binary Image ProcessingWHY?
better efficiency in acquiring, storage,
processing and transmission
TRESHOLDING
22
Different tresholds
23
Image Segmentation
Input ImageRegionsObjects
Segmentation
-Clasify pixels into groups having similar characteristics
-Two techniques: Region segmentation
Edge detection
24
Region Segmentation
• Histogram Based
25
Region Segmentation (2)
• Split & Merge
26
Edge Detection
• Find the curves on the image where rapid changes occur
27
Image Analysis
Input ImageRegions, objects
Measurements
Image Analysis
Measurements:-Size -Position-Orientation-Spatial relationship-Gray scale or color intensity-Velocity
28
Pattern Recognition (PR)
- Measurements- Stuctural descriptions
Class identifier
PatternRecognition
feature vectorset of information data
29
Approaches to PR
Statistical
Structural
Neural
30
• 3D VISION
• Dynamic Vision
31
Fingerprint Recognition
- most precise identification biometric
- has many applications- has the largest database
32
33
Fingerprint recognition system
Fingerprintsensor
Fingerprintsensor
Feature Extractor
Feature Extractor
Feature Matcher
ID
Enrollment
Identification
Templatedatabase
34
Fingerprint Representation
Local Ridge Characteristics
•Ridge Ending•Ridge Bifurcation•Enclosure•Ridge Dot
35
Fingerprint Representation (2)
Singular PointsCoreDelta
Major Central Pattern
Arch Loop Whorl
36
Image Processing & Analysis for Fingerprint Recognition
Pre-processing Minutiae Extraction
Post-processing
Input Image
•Binarization
•Noise Removal
•Smoothing
•Thinning
•Ridge break removal
•Bridge removal
•Spike removal
Processed Image
+Minutiae
Description
Outputs
37
Pre-Processing• Binarization
search through array pixel by pixel;
if current byte colour value is above threshold then
change value to white;
else
change colour to black
• Noise Removal if the pixel is white and all immediate surrounding pixels are
black
then
change pixel to black;
else if the pixel is black and all immediate surrounding pixels are white then
change pixel to white;
38
Pre-Processing(2)
• Smoothingfor each pixel do
add the values of surrounding pixels;
divide by the number of surrounding pixels (usually 8 unless
at the edge);
assign current pixel the calculated result;
• Thinning
39
Extractionif pixel has exactly one neighbour then
pixel is a ridge ending;calculate x value of pixel;calculate y value of pixel;
calculate angle of ridge ending;write data to database;
else if pixel has exactly three neighbours thenpixel is a bifurcation;
calculate x value of pixel;calculate y value of pixel;
calculate angle of bifurcation;write data to database;
40
Post-Processing• Ridge break removalIf A and B are facing each other and are less then a minimum
distance (D) then
A and B are false minutia points;
remove A and B from ridge end point set;
update database;
Bridge removal
• Spike removalFor each ridge ending point (A)
For each bifurcation point (B)
If A and B are less than minimum distance (D)apart and they are connected then
A and B are false minutia points;
remove A and B from their sets;
41
Matching
42
References[1] MACHINE VISION
Jain-Kasturi-Schunck[2] EE 701 Robot Vision Lecture Notes
A. Aydin Alatan – METU[3] Tutorial on Machine Vision
Petrakis[4] Multimodel User Interfaces
Anil Jain[5] Automatic Fingerprint Recognition System
Tony Walsh
43
THANK YOU!