Title: Template Matching
1Template Matching
- Roland Miezianko
- Assignment 2
- CIS 581
- October 30, 2002
2Agenda
- Template Matching
- Definition and Method
- Bi-Level Image
- Gray-Level Image
- Matlab Example
- Gray-Level Template Matching
- Machine Vision Example
3Definition
- Technique used in classifying objects.
- Template Matching techniques compare portions of
images against one another. - Sample image may be used to recognize similar
objects in source image.
4Definition, cont.
- If standard deviation of the template image
compared to the source image is small enough,
template matching may be used. - Templates are most often used to identify printed
characters, numbers, and other small, simple
objects.
5Method
The matching process moves the template image to
all possible positions in a larger source image
and computes a numerical index that indicates how
well the template matches the image in that
position. Match is done on a pixel-by-pixel basis.
6Correlation
- Correlation is a measure of the degree to which
two variables agree, not necessary in actual
value but in general behavior. - The two variables are the corresponding pixel
values in two images, template and source.
7Bi-Level Image TM
- Template is a small image, usually a bi-level
image. - Find template in source image, with a Yes/No
approach.
8Grey-Level Image TM
- When using template-matching scheme on grey-level
image it is unreasonable to expect a perfect
match of the grey levels. - Instead of yes/no match at each pixel, the
difference in level should be used.
Source Image
9Grey-LevelCorrelation Formula
10Correlation is Computation Intensive
- Template image size 53 x 48
- Source image size 177 x 236
- Assumption template image is inside the source
image. - Correlation (search) matrix size 124 x 188
(177-53 x 236-48) - Computation count
- 124 x 188 x 53 x 48 59,305,728
11Machine Vision Example
- Load printed circuit board into a machine
- Teach template image (select and store)
- Load printed circuit board
- Capture a source image and find template
12Machine Vision Example
Assumptions and Limitations 1. Template is
entirely located in source image 2. Partial
template matching was not performed (at
boundaries, within image) 3. Rotation and scaling
will cause poor matches
13Matlab Example
Matlab Data Set
Template
Data Set 1
Data Set 2
Data Set 3
Data Set 4
Data Set 5
14Data Set 1
Source Image, Found Rectangle, and Correlation Map
Correlation Map with Peak
15Data Set 2
Source Image and Found Rectangle
Correlation Map with Peak
16Data Set 3
Source Image and Found Rectangle
Correlation Map with Peak
17Data Set 4
Source Image and Found Rectangle
Correlation Map with Peak
18Data Set 5, Corr. Map
Correlation Map with Peak
Source Image
19Data Set 5, Results
Threshold set to 0.800
Threshold set to 0.200
20Matlab and Data Files
Matlab Files hw2.m findTemplate.m hw2output.m
Data and Output Files F06Temp.bmp F08.BMP Circl
eTemplate.bmp F08CorrMap.bmp F01.BMP
F08CorrMap.txt F01CorrMap.bmp
F08Temp.bmp F01CorrMap.txt
PAD1.BMP F01Temp.bmp PAD1CorrMap.bmp
F01TempContour.bmp PAD1CorrMap.txt F05.BMP
PAD1TempN.bmp F05CorrMap.bmp
PAD1TempY.bmp F05CorrMap.txt
F05Temp.bmp F06.BMP F06CorrMap.bmp F06CorrMap.tx
t
21QuestionsandAnswers