Title: Machine Vision
1Machine Vision
SUMMER ACADEMY 2004 by Maya Çakmak Middle
East Technical University Electrical and
Electronics Engineering
2VISION
the most powerful sense
3OUTLINE
- Properties of Machine Vision Systems
- Methods in Machine Vision
- 2. Example Fingerprint Recognition
System
4Machine Vision System
- creates a model of the real world from images
- recovers useful information about a scene from
its two dimensional projections
5A typical control system
6Components of a M.V. system
- Optics (lenses, lighting)
- Cameras
- Interface (frame grabber)
- Computer
7Components of a M.V. system
HARDWARE SOFTWARE
- Libraries with custom code developed using Visual
C/C, Visual Basic, or Java - Graphical programming environments
-There is no universal vision system -One system
for each application
8Application Fields
- Medical imaging
- Industrial automation
- Robotics
- Radar Imaging
- Forensics
- Remote Sensing
- Cartography
- Character recognition
9Machine Vision Stages
Analog to digital conversion
Image Acquisition
Remove noise, improve contrast
Image Processing
Find regions (objects) in the image
Image Segmentation
Take measurements of objects/relationships
Image Analysis
Match the description with similar description of
known objects (models)
Pattern Recognition
10Image Formation
Projection
3D
2D
- Perspective projection
- Orthographic projection
11Digital Image Representation
- Image 2D array of gray level or color values
- Pixel Array element Picture Element
- Its 2D
- Its 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)
12Digital Image Formation
Sampling
Quantization
- Sampling rate
- (resolution)
13Different Sampling Rates
14Different Quantization Levels
15Image Processing (IP)
Image Processing
Input Image
Output Image
- Filtering
- Smoothing
- Thinning
- Expending
- Shrinking
- Compressing
-
16Fundementals
- Neigborhood
- Histogram gray levels vs number of pixels
4-Neighbors
8-Neighbors
17IP Examples
Removal of noise with median filter
18IP Examples (2)
Improvement of contrast by histogram modification
19IP Examples (3)
Symethrical inversion of the image
20IP Examples (4)
Uniform
Gaussian
Original
21Binary Image Processing
- WHY?
- better efficiency in acquiring, storage,
- processing and transmission
- TRESHOLDING
22Different tresholds
23Image Segmentation
Segmentation
Input Image
Regions Objects
- Clasify pixels into groups having similar
characteristics - Two techniques Region segmentation
-
- Edge detection
24Region Segmentation
25Region Segmentation (2)
26Edge Detection
- Find the curves on the image where rapid changes
occur
27Image Analysis
Image Analysis
Input Image Regions, objects
Measurements
- Measurements
- Size
- Position
- Orientation
- Spatial relationship
- Gray scale or color intensity
- Velocity
28Pattern Recognition (PR)
Pattern Recognition
- Measurements - Stuctural descriptions
Class identifier
feature vector set of information data
29Approaches to PR
- Statistical
- Structural
- Neural
30 31Fingerprint Recognition
- most precise identification biometric
- has many applications
- has the largest database
32(No Transcript)
33Fingerprint recognition system
Enrollment
Template database
Fingerprint sensor
Feature Extractor
Identification
Fingerprint sensor
Feature Extractor
Feature Matcher
ID
34Fingerprint Representation
- Local Ridge Characteristics
- Ridge Ending
- Ridge Bifurcation
- Enclosure
- Ridge Dot
35Fingerprint Representation (2)
Singular Points Core Delta
Major Central Pattern
Arch
Loop
Whorl
36Image Processing Analysis for Fingerprint
Recognition
Pre-processing
Minutiae Extraction
Post-processing
- Binarization
- Noise Removal
- Smoothing
- Thinning
- Ridge break removal
- Bridge removal
- Spike removal
Processed Image Minutiae Description
Input Image
Outputs
37Pre-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
38Pre-Processing(2)
- Smoothing
- for 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
39Extraction
if 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 then pixel is a bifurcation calcul
ate x value of pixel calculate y value of
pixel calculate angle of bifurcation write
data to database
40Post-Processing
- Ridge break removal
- If 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 removal
- For 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
41Matching
42References
Great book!!!
- 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
43THANK YOU!