43
1 Machine Vision SUMMER ACADEMY 2004 by Maya Çakmak Middle East Technical University Electrical and Electronics Engineering

Machine Vision

Embed Size (px)

DESCRIPTION

Machine Vision pdf

Citation preview

  • 1Machine VisionSUMMER ACADEMY 2004

    by

    Maya akmak

    Middle East Technical University

    Electrical and Electronics Engineering

  • 2VISION

    the most powerful sense

  • 3OUTLINE

    1. 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:

    Scene Image Description

    Application

    feedback

    Imaging

    device

    MACHINE

    VISION

    Illumination

  • 6Components of a M.V. system

    HARDWARE

    SOFTWARE Optics (lenses, lighting)

    Cameras

    Interface (frame grabber)

    Computer

  • 7Components of a M.V. system

    HARDWARE

    SOFTWARE

    -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

  • 8Application Fields

    Medical imaging

    Industrial automation

    Robotics

    Radar Imaging

    Forensics

    Remote Sensing

    Cartography

    Character recognition

  • 9Machine Vision Stages

    Image 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 with

    similar 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 2DIt`s a squareIt has one colorIt 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

    Filtering

    Smoothing

    Thinning

    Expending

    Shrinking

    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

    Symethrical

    inversion 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

    Pattern

    Recognition

    feature vector

    set 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

    Fingerprint

    sensor

    Fingerprint

    sensor

    Feature Extractor

    Feature Extractor

    Feature Matcher

    ID

    Enrollment

    Identification

    Template

    database

  • 34

    Fingerprint Representation

    Local Ridge Characteristics

    Ridge EndingRidge BifurcationEnclosureRidge Dot

  • 35

    Fingerprint Representation (2)

    Singular Points

    Core

    Delta

    Major Central Pattern

    Arch Loop Whorl

  • 36

    Image Processing & Analysis for

    Fingerprint Recognition

    Pre-processing Minutiae

    ExtractionPost-processing

    Input Image

    Binarization

    Noise Removal

    Smoothing

    Thinning

    Ridge break removal

    Bridge removal

    Spike removal

    Processed

    Image

    +

    Minutiae

    Description

    Outputs

  • 37

    Pre-Processing

    Binarizationsearch 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

    Extraction

    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;

    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!