SlideShare a Scribd company logo
Course: Machine Vision
Image Matching
Session 12
D5627 – I Gede Putra Kusuma Negara, B.Eng., PhD
Outline
• Definition
• Invariant features
• Scale Invariant Feature Transform
• Feature matching
Definition
Definition
• Image matching can be defined as “the process of bringing two
images geometrically into agreement so that corresponding pixels in
the two images correspond to the same physical region of the scene
being imaged
• Image matching problem is accomplished by transforming (e.g.,
translating, rotating, scaling) one of the images in such a way that the
similarity with the other image is maximized in some sense
• The 3D nature of real-world scenarios makes this solution complex to
achieve, specially because images can be taken from arbitrary
viewpoints and in different illumination conditions.
Image Matching
• Image matching is a fundamental aspect of many problems in
computer vision, including object and scene recognition, content-
based image retrieval, stereo correspondence, motion tracking,
texture classification and video data mining.
• It is a complex problem, that remains challenging due to partial
occlusions, image deformations, and viewpoint or lighting changes
that may occur across different images
Image Matching (example)
by Diva Sian
by swashford
Feature Matching
• What stuff in the left image matches with stuff on the right?
• This information is important for for automatic panorama stitching
Harder Case
by Diva Sian by scgbt
Even Harder Case
NASA Mars Rover images with SIFT feature matches
Figure by Noah Snavely
Image Matching Procedure
1. Detection of distinguished regions
2. Local invariant description of these regions
3. Definition of the correspondence space
4. searching of a globally consistent subset of correspondences.
Invariant Features
Invariant Local Features
1. At an interesting
point, let’s define a
coordinate system
(x,y axis)
2. Use the coordinate
system to pull out a
patch at that point
Invariant Local Features
• Algorithm for finding points and representing their patches should produce similar
results even when conditions vary
• Buzzword is “invariance”
– Geometric invariance: translation, rotation, scale
– Photometric invariance: brightness, exposure, …etc.
Feature Descriptors
What makes good feature?
• We would like to align by matching local features of these 3 images
• What would be the good local features (ones easy to match)?
Local Measure of Uniqueness
Suppose we only consider a small window of pixels
• What defines whether a feature is a good or bad candidate?
• How does the window change when we shift it?
• Shifting the window in any direction causes a big change
“flat” region:
no change in all
directions
“edge”:
no change along
the edge direction
“corner”:
significant change
in all directions
Harris Corner Detector
(example)
Invariance
Suppose we are comparing two images I1 and I2
– I2 may be a transformed version of I1
– What kinds of transformations are we likely to encounter in
practice?
We’d like to find the same features regardless of the
transformation
– This is called transformational invariance
– Most feature methods are designed to be invariant to
• Translation, 2D rotation, scale
– They can usually also handle
• Limited 3D rotations (SIFT works up to about 60 degrees)
• Limited affine transformations (2D rotation, scale, shear)
• Limited illumination/contrast changes
How to achieve invariance?
1. Make sure our detector is invariant
– Harris is invariant to translation and rotation
– Scale is trickier
• common approach is to detect features at many scales using a Gaussian pyramid
(e.g., MOPS)
• More sophisticated methods find “the best scale” to represent each feature (e.g.,
SIFT)
2. Design an invariant feature descriptor
– A descriptor captures the information in a region around the
detected feature point
– The simplest descriptor: a square window of pixels
• What’s this invariant to?
– Let’s look at some better approaches…
Scale invariant detection
• Suppose we are looking for
corners
• Key idea: find scale that
gives local maximum of f
– f is a local maximum in both
position and scale
– Common definition of f:
Laplacian
(or difference between two
Gaussian filtered images with
different sigmas)
Slide from Tinne Tuytelaars
Lindeberg et al, 1996
Slide from Tinne Tuytelaars
Lindeberg et al., 1996
Rotation invariance for feature
descriptors
Find dominant orientation of the image patch
• This is given by x+, the eigenvector of H corresponding to +
– + is the larger eigenvalue
• Rotate the patch according to this angle
Figure by Matthew Brown
Multiscale Oriented PatcheS
descriptor
Take 40x40 square window
around detected feature
• Scale to 1/5 size (using
prefiltering)
• Rotate to horizontal
• Sample 8x8 square
window centered at
feature
• Intensity normalize the
window by subtracting
the mean, dividing by the
standard deviation in the
window (both window I
and aI+b will match)
8 pixels
Detections at Multiple Scales
Scale Invariant Feature Transform
Scale Invariant Feature
Transform
Basic idea:
• Take 16x16 square window
around detected feature
• Compute edge orientation (angle
of the gradient - 90 ) for each
pixel
• Throw out weak edges
(threshold gradient magnitude)
• Create histogram of surviving
edge orientations
0 2
SIFT Descriptor
Full version
• Divide the 16x16 window into a 4x4 grid of cells (2x2 case shown
below)
• Compute an orientation histogram for each cell
• 16 cells * 8 orientations = 128 dimensional descriptor
SIFT Properties
Extraordinarily robust matching technique
• Can handle changes in viewpoint
• Up to about 60 degree out of plane rotation
• Can handle significant changes in illumination, sometimes even day
vs. night (next example)
• Fast and efficient—can run in real time
• Lots of code available
http://people.csail.mit.edu/albert/ladypack/wiki/index.php?title=Kno
wn_implementations_of_SIFT
SIFT in Action
Feature Matching
Feature Matching
Given a feature in I1, how to find
the best match in I2?
1. Define distance function that
compares two descriptors
2. Test all the features in I2, find the one
with min distance
How to define the difference
between two features f1, f2?
• Simple approach is SSD(f1, f2)
– Sum of square differences between
entries of the two descriptors
– Can give good scores to very
ambiguous (bad) matches
I1
f1
f2
I2
Feature Distance
How to define the difference
between two features f1, f2?
• Better approach: ratio
distance = SSD(f1, f2) /
SSD(f1, f2’)
– f2 is best SSD match to f1 in I2
– f2’ is 2nd best SSD match to f1 in
I2
– gives small values for ambiguous
matches
f1
f2
f2’
I1
I2
Evaluating the Results
• How can we measure the performance of a feature matcher?
50
75
200
feature distance
True/false Positive
The distance threshold affects performance
• True positives = # of detected matches that are correct
– Suppose we want to maximize these—how to choose threshold?
• False positives = # of detected matches that are incorrect
– Suppose we want to minimize these—how to choose threshold?
50
75
200
feature distance
false match
true match
Applications
Features are used for:
• Image alignment (e.g., mosaics)
• 3D reconstruction
• Motion tracking
• Object recognition
• Indexing and database retrieval
• Robot navigation
• … etc.
Acknowledgment
Some of slides in this PowerPoint presentation are adaptation from
various slides, many thanks to:
1. Deva Ramanan, Department of Computer Science, University of
California at Irvine (http://www.ics.uci.edu/~dramanan/)
Thank You

More Related Content

What's hot

Feature detection and matching
Feature detection and matchingFeature detection and matching
Feature detection and matching
Kuppusamy P
 
PPT s02-machine vision-s2
PPT s02-machine vision-s2PPT s02-machine vision-s2
PPT s02-machine vision-s2
Binus Online Learning
 
Image segmentation
Image segmentation Image segmentation
Image segmentation
Image segmentationImage segmentation
Image segmentation
Md Shabir Alam
 
Segmentation Techniques -I
Segmentation Techniques -ISegmentation Techniques -I
Segmentation Techniques -I
Hemantha Kulathilake
 
Various object detection and tracking methods
Various object detection and tracking methodsVarious object detection and tracking methods
Various object detection and tracking methods
sujeeshkumarj
 
Edge Detection and Segmentation
Edge Detection and SegmentationEdge Detection and Segmentation
Edge Detection and Segmentation
A B Shinde
 
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSINGTYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
Kamana Tripathi
 
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSINGTYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
Kamana Tripathi
 
Image segmentation in Digital Image Processing
Image segmentation in Digital Image ProcessingImage segmentation in Digital Image Processing
Image segmentation in Digital Image Processing
DHIVYADEVAKI
 
PPT s03-machine vision-s2
PPT s03-machine vision-s2PPT s03-machine vision-s2
PPT s03-machine vision-s2
Binus Online Learning
 
Ed34785790
Ed34785790Ed34785790
Ed34785790
IJERA Editor
 
Edge Detection algorithm and code
Edge Detection algorithm and codeEdge Detection algorithm and code
Edge Detection algorithm and code
Vaddi Manikanta
 
Image segmentation ajal
Image segmentation ajalImage segmentation ajal
Image segmentation ajal
AJAL A J
 
Image segmentation
Image segmentationImage segmentation
Image segmentationDeepak Kumar
 
Image segmentation
Image segmentationImage segmentation
Image segmentation
Bulbul Agrawal
 
Threshold Selection for Image segmentation
Threshold Selection for Image segmentationThreshold Selection for Image segmentation
Threshold Selection for Image segmentationParijat Sinha
 
Video Segmentation
Video SegmentationVideo Segmentation
Video Segmentation
Smriti Jain
 
Features image processing and Extaction
Features image processing and ExtactionFeatures image processing and Extaction
Features image processing and Extaction
Ali A Jalil
 
Exploring Methods to Improve Edge Detection with Canny Algorithm
Exploring Methods to Improve Edge Detection with Canny AlgorithmExploring Methods to Improve Edge Detection with Canny Algorithm
Exploring Methods to Improve Edge Detection with Canny AlgorithmPrasad Thakur
 

What's hot (20)

Feature detection and matching
Feature detection and matchingFeature detection and matching
Feature detection and matching
 
PPT s02-machine vision-s2
PPT s02-machine vision-s2PPT s02-machine vision-s2
PPT s02-machine vision-s2
 
Image segmentation
Image segmentation Image segmentation
Image segmentation
 
Image segmentation
Image segmentationImage segmentation
Image segmentation
 
Segmentation Techniques -I
Segmentation Techniques -ISegmentation Techniques -I
Segmentation Techniques -I
 
Various object detection and tracking methods
Various object detection and tracking methodsVarious object detection and tracking methods
Various object detection and tracking methods
 
Edge Detection and Segmentation
Edge Detection and SegmentationEdge Detection and Segmentation
Edge Detection and Segmentation
 
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSINGTYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
 
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSINGTYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
TYBSC (CS) SEM 6- DIGITAL IMAGE PROCESSING
 
Image segmentation in Digital Image Processing
Image segmentation in Digital Image ProcessingImage segmentation in Digital Image Processing
Image segmentation in Digital Image Processing
 
PPT s03-machine vision-s2
PPT s03-machine vision-s2PPT s03-machine vision-s2
PPT s03-machine vision-s2
 
Ed34785790
Ed34785790Ed34785790
Ed34785790
 
Edge Detection algorithm and code
Edge Detection algorithm and codeEdge Detection algorithm and code
Edge Detection algorithm and code
 
Image segmentation ajal
Image segmentation ajalImage segmentation ajal
Image segmentation ajal
 
Image segmentation
Image segmentationImage segmentation
Image segmentation
 
Image segmentation
Image segmentationImage segmentation
Image segmentation
 
Threshold Selection for Image segmentation
Threshold Selection for Image segmentationThreshold Selection for Image segmentation
Threshold Selection for Image segmentation
 
Video Segmentation
Video SegmentationVideo Segmentation
Video Segmentation
 
Features image processing and Extaction
Features image processing and ExtactionFeatures image processing and Extaction
Features image processing and Extaction
 
Exploring Methods to Improve Edge Detection with Canny Algorithm
Exploring Methods to Improve Edge Detection with Canny AlgorithmExploring Methods to Improve Edge Detection with Canny Algorithm
Exploring Methods to Improve Edge Detection with Canny Algorithm
 

Similar to PPT s11-machine vision-s2

Computer Vision descriptors
Computer Vision descriptorsComputer Vision descriptors
Computer Vision descriptors
Wael Badawy
 
06 image features
06 image features06 image features
06 image features
ankit_ppt
 
Scale Invariant Feature Transform
Scale Invariant Feature TransformScale Invariant Feature Transform
Scale Invariant Feature Transform
kislayabhi
 
Lecture 6-computer vision features descriptors matching
Lecture 6-computer vision features descriptors matchingLecture 6-computer vision features descriptors matching
Lecture 6-computer vision features descriptors matching
cairo university
 
Michal Erel's SIFT presentation
Michal Erel's SIFT presentationMichal Erel's SIFT presentation
Michal Erel's SIFT presentation
wolf
 
SIFT vs other Feature Descriptor
SIFT vs other Feature DescriptorSIFT vs other Feature Descriptor
SIFT vs other Feature DescriptorNisar Ahmed Rana
 
From Experimentation to Production: The Future of WebGL
From Experimentation to Production: The Future of WebGLFrom Experimentation to Production: The Future of WebGL
From Experimentation to Production: The Future of WebGL
FITC
 
11 cie552 image_featuresii_sift
11 cie552 image_featuresii_sift11 cie552 image_featuresii_sift
11 cie552 image_featuresii_sift
Elsayed Hemayed
 
Computer Vision invariance
Computer Vision invarianceComputer Vision invariance
Computer Vision invariance
Wael Badawy
 
Dip lect2-Machine Vision Fundamentals
Dip  lect2-Machine Vision Fundamentals Dip  lect2-Machine Vision Fundamentals
Dip lect2-Machine Vision Fundamentals
Abdul Abbasi
 
WT in IP.ppt
WT in IP.pptWT in IP.ppt
WT in IP.ppt
viveksingh19210115
 
SIFT.ppt
SIFT.pptSIFT.ppt
SIFT.ppt
ShubhShubh12
 
SIFT.ppt
SIFT.pptSIFT.ppt
SIFT.ppt
MaTruongThanh1
 
Computer Vision panoramas
Computer Vision  panoramasComputer Vision  panoramas
Computer Vision panoramas
Wael Badawy
 
3 D texturing
 3 D texturing 3 D texturing
3 D texturing
krishn verma
 
Image processing.pdf
Image processing.pdfImage processing.pdf
Image processing.pdf
JasaRChoudhary
 
L12 GIS (a).pdf
L12 GIS (a).pdfL12 GIS (a).pdf
L12 GIS (a).pdf
WaliEdwardian1
 
Cahall Final Intern Presentation
Cahall Final Intern PresentationCahall Final Intern Presentation
Cahall Final Intern PresentationDaniel Cahall
 
Object Based Image Analysis
Object Based Image Analysis Object Based Image Analysis
Object Based Image Analysis
Kabir Uddin
 

Similar to PPT s11-machine vision-s2 (20)

Computer Vision descriptors
Computer Vision descriptorsComputer Vision descriptors
Computer Vision descriptors
 
06 image features
06 image features06 image features
06 image features
 
Scale Invariant Feature Transform
Scale Invariant Feature TransformScale Invariant Feature Transform
Scale Invariant Feature Transform
 
Lecture 6-computer vision features descriptors matching
Lecture 6-computer vision features descriptors matchingLecture 6-computer vision features descriptors matching
Lecture 6-computer vision features descriptors matching
 
Michal Erel's SIFT presentation
Michal Erel's SIFT presentationMichal Erel's SIFT presentation
Michal Erel's SIFT presentation
 
SIFT vs other Feature Descriptor
SIFT vs other Feature DescriptorSIFT vs other Feature Descriptor
SIFT vs other Feature Descriptor
 
From Experimentation to Production: The Future of WebGL
From Experimentation to Production: The Future of WebGLFrom Experimentation to Production: The Future of WebGL
From Experimentation to Production: The Future of WebGL
 
11 cie552 image_featuresii_sift
11 cie552 image_featuresii_sift11 cie552 image_featuresii_sift
11 cie552 image_featuresii_sift
 
Computer Vision invariance
Computer Vision invarianceComputer Vision invariance
Computer Vision invariance
 
Dip lect2-Machine Vision Fundamentals
Dip  lect2-Machine Vision Fundamentals Dip  lect2-Machine Vision Fundamentals
Dip lect2-Machine Vision Fundamentals
 
WT in IP.ppt
WT in IP.pptWT in IP.ppt
WT in IP.ppt
 
SIFT.ppt
SIFT.pptSIFT.ppt
SIFT.ppt
 
SIFT.ppt
SIFT.pptSIFT.ppt
SIFT.ppt
 
Computer Vision panoramas
Computer Vision  panoramasComputer Vision  panoramas
Computer Vision panoramas
 
project_PPT_final
project_PPT_finalproject_PPT_final
project_PPT_final
 
3 D texturing
 3 D texturing 3 D texturing
3 D texturing
 
Image processing.pdf
Image processing.pdfImage processing.pdf
Image processing.pdf
 
L12 GIS (a).pdf
L12 GIS (a).pdfL12 GIS (a).pdf
L12 GIS (a).pdf
 
Cahall Final Intern Presentation
Cahall Final Intern PresentationCahall Final Intern Presentation
Cahall Final Intern Presentation
 
Object Based Image Analysis
Object Based Image Analysis Object Based Image Analysis
Object Based Image Analysis
 

More from Binus Online Learning

LN s12-machine vision-s2
LN s12-machine vision-s2LN s12-machine vision-s2
LN s12-machine vision-s2
Binus Online Learning
 
LN s10-machine vision-s2
LN s10-machine vision-s2LN s10-machine vision-s2
LN s10-machine vision-s2
Binus Online Learning
 
LN s09-machine vision-s2
LN s09-machine vision-s2LN s09-machine vision-s2
LN s09-machine vision-s2
Binus Online Learning
 
LN s08-machine vision-s2
LN s08-machine vision-s2LN s08-machine vision-s2
LN s08-machine vision-s2
Binus Online Learning
 
LN s07-machine vision-s2
LN s07-machine vision-s2LN s07-machine vision-s2
LN s07-machine vision-s2
Binus Online Learning
 
LN s06-machine vision-s2
LN s06-machine vision-s2LN s06-machine vision-s2
LN s06-machine vision-s2
Binus Online Learning
 
LN s05-machine vision-s2
LN s05-machine vision-s2LN s05-machine vision-s2
LN s05-machine vision-s2
Binus Online Learning
 
LN s04-machine vision-s2
LN s04-machine vision-s2LN s04-machine vision-s2
LN s04-machine vision-s2
Binus Online Learning
 
LN s03-machine vision-s2
LN s03-machine vision-s2LN s03-machine vision-s2
LN s03-machine vision-s2
Binus Online Learning
 
LN s02-machine vision-s2
LN s02-machine vision-s2LN s02-machine vision-s2
LN s02-machine vision-s2
Binus Online Learning
 
LN s01-machine vision-s2
LN s01-machine vision-s2LN s01-machine vision-s2
LN s01-machine vision-s2
Binus Online Learning
 
PPT s09-machine vision-s2
PPT s09-machine vision-s2PPT s09-machine vision-s2
PPT s09-machine vision-s2
Binus Online Learning
 
PPT s05-machine vision-s2
PPT s05-machine vision-s2PPT s05-machine vision-s2
PPT s05-machine vision-s2
Binus Online Learning
 
LN sesi 2 delivering quality-1
LN sesi 2 delivering quality-1LN sesi 2 delivering quality-1
LN sesi 2 delivering quality-1
Binus Online Learning
 
PPT Sesi 2 FO the guest delivering quality-1
PPT Sesi 2 FO the guest delivering quality-1PPT Sesi 2 FO the guest delivering quality-1
PPT Sesi 2 FO the guest delivering quality-1
Binus Online Learning
 
PPT Sesi 3 FO the guest - delivering quality 2
PPT Sesi 3 FO the guest - delivering quality 2 PPT Sesi 3 FO the guest - delivering quality 2
PPT Sesi 3 FO the guest - delivering quality 2
Binus Online Learning
 
LN sesi 3 delivering quality-2
LN sesi 3 delivering quality-2LN sesi 3 delivering quality-2
LN sesi 3 delivering quality-2
Binus Online Learning
 
LN sesi 4 managing guest reservation-1
LN sesi 4 managing guest reservation-1LN sesi 4 managing guest reservation-1
LN sesi 4 managing guest reservation-1
Binus Online Learning
 
PPT Sesi 4 managing guest reservation-1
PPT Sesi 4 managing guest reservation-1 PPT Sesi 4 managing guest reservation-1
PPT Sesi 4 managing guest reservation-1
Binus Online Learning
 
LN sesi 5 managing guest reservation-2
LN sesi 5 managing guest reservation-2LN sesi 5 managing guest reservation-2
LN sesi 5 managing guest reservation-2
Binus Online Learning
 

More from Binus Online Learning (20)

LN s12-machine vision-s2
LN s12-machine vision-s2LN s12-machine vision-s2
LN s12-machine vision-s2
 
LN s10-machine vision-s2
LN s10-machine vision-s2LN s10-machine vision-s2
LN s10-machine vision-s2
 
LN s09-machine vision-s2
LN s09-machine vision-s2LN s09-machine vision-s2
LN s09-machine vision-s2
 
LN s08-machine vision-s2
LN s08-machine vision-s2LN s08-machine vision-s2
LN s08-machine vision-s2
 
LN s07-machine vision-s2
LN s07-machine vision-s2LN s07-machine vision-s2
LN s07-machine vision-s2
 
LN s06-machine vision-s2
LN s06-machine vision-s2LN s06-machine vision-s2
LN s06-machine vision-s2
 
LN s05-machine vision-s2
LN s05-machine vision-s2LN s05-machine vision-s2
LN s05-machine vision-s2
 
LN s04-machine vision-s2
LN s04-machine vision-s2LN s04-machine vision-s2
LN s04-machine vision-s2
 
LN s03-machine vision-s2
LN s03-machine vision-s2LN s03-machine vision-s2
LN s03-machine vision-s2
 
LN s02-machine vision-s2
LN s02-machine vision-s2LN s02-machine vision-s2
LN s02-machine vision-s2
 
LN s01-machine vision-s2
LN s01-machine vision-s2LN s01-machine vision-s2
LN s01-machine vision-s2
 
PPT s09-machine vision-s2
PPT s09-machine vision-s2PPT s09-machine vision-s2
PPT s09-machine vision-s2
 
PPT s05-machine vision-s2
PPT s05-machine vision-s2PPT s05-machine vision-s2
PPT s05-machine vision-s2
 
LN sesi 2 delivering quality-1
LN sesi 2 delivering quality-1LN sesi 2 delivering quality-1
LN sesi 2 delivering quality-1
 
PPT Sesi 2 FO the guest delivering quality-1
PPT Sesi 2 FO the guest delivering quality-1PPT Sesi 2 FO the guest delivering quality-1
PPT Sesi 2 FO the guest delivering quality-1
 
PPT Sesi 3 FO the guest - delivering quality 2
PPT Sesi 3 FO the guest - delivering quality 2 PPT Sesi 3 FO the guest - delivering quality 2
PPT Sesi 3 FO the guest - delivering quality 2
 
LN sesi 3 delivering quality-2
LN sesi 3 delivering quality-2LN sesi 3 delivering quality-2
LN sesi 3 delivering quality-2
 
LN sesi 4 managing guest reservation-1
LN sesi 4 managing guest reservation-1LN sesi 4 managing guest reservation-1
LN sesi 4 managing guest reservation-1
 
PPT Sesi 4 managing guest reservation-1
PPT Sesi 4 managing guest reservation-1 PPT Sesi 4 managing guest reservation-1
PPT Sesi 4 managing guest reservation-1
 
LN sesi 5 managing guest reservation-2
LN sesi 5 managing guest reservation-2LN sesi 5 managing guest reservation-2
LN sesi 5 managing guest reservation-2
 

Recently uploaded

Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
JoytuBarua2
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
ankuprajapati0525
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 
addressing modes in computer architecture
addressing modes  in computer architectureaddressing modes  in computer architecture
addressing modes in computer architecture
ShahidSultan24
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
AhmedHussein950959
 
ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
Jayaprasanna4
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
Kamal Acharya
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
MdTanvirMahtab2
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
Pipe Restoration Solutions
 
Vaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdfVaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdf
Kamal Acharya
 

Recently uploaded (20)

Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 
addressing modes in computer architecture
addressing modes  in computer architectureaddressing modes  in computer architecture
addressing modes in computer architecture
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 
Vaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdfVaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdf
 

PPT s11-machine vision-s2

  • 1. Course: Machine Vision Image Matching Session 12 D5627 – I Gede Putra Kusuma Negara, B.Eng., PhD
  • 2. Outline • Definition • Invariant features • Scale Invariant Feature Transform • Feature matching
  • 4. Definition • Image matching can be defined as “the process of bringing two images geometrically into agreement so that corresponding pixels in the two images correspond to the same physical region of the scene being imaged • Image matching problem is accomplished by transforming (e.g., translating, rotating, scaling) one of the images in such a way that the similarity with the other image is maximized in some sense • The 3D nature of real-world scenarios makes this solution complex to achieve, specially because images can be taken from arbitrary viewpoints and in different illumination conditions.
  • 5. Image Matching • Image matching is a fundamental aspect of many problems in computer vision, including object and scene recognition, content- based image retrieval, stereo correspondence, motion tracking, texture classification and video data mining. • It is a complex problem, that remains challenging due to partial occlusions, image deformations, and viewpoint or lighting changes that may occur across different images
  • 6. Image Matching (example) by Diva Sian by swashford
  • 7. Feature Matching • What stuff in the left image matches with stuff on the right? • This information is important for for automatic panorama stitching
  • 8. Harder Case by Diva Sian by scgbt
  • 9. Even Harder Case NASA Mars Rover images with SIFT feature matches Figure by Noah Snavely
  • 10. Image Matching Procedure 1. Detection of distinguished regions 2. Local invariant description of these regions 3. Definition of the correspondence space 4. searching of a globally consistent subset of correspondences.
  • 12. Invariant Local Features 1. At an interesting point, let’s define a coordinate system (x,y axis) 2. Use the coordinate system to pull out a patch at that point
  • 13. Invariant Local Features • Algorithm for finding points and representing their patches should produce similar results even when conditions vary • Buzzword is “invariance” – Geometric invariance: translation, rotation, scale – Photometric invariance: brightness, exposure, …etc. Feature Descriptors
  • 14. What makes good feature? • We would like to align by matching local features of these 3 images • What would be the good local features (ones easy to match)?
  • 15. Local Measure of Uniqueness Suppose we only consider a small window of pixels • What defines whether a feature is a good or bad candidate? • How does the window change when we shift it? • Shifting the window in any direction causes a big change “flat” region: no change in all directions “edge”: no change along the edge direction “corner”: significant change in all directions
  • 17. Invariance Suppose we are comparing two images I1 and I2 – I2 may be a transformed version of I1 – What kinds of transformations are we likely to encounter in practice? We’d like to find the same features regardless of the transformation – This is called transformational invariance – Most feature methods are designed to be invariant to • Translation, 2D rotation, scale – They can usually also handle • Limited 3D rotations (SIFT works up to about 60 degrees) • Limited affine transformations (2D rotation, scale, shear) • Limited illumination/contrast changes
  • 18. How to achieve invariance? 1. Make sure our detector is invariant – Harris is invariant to translation and rotation – Scale is trickier • common approach is to detect features at many scales using a Gaussian pyramid (e.g., MOPS) • More sophisticated methods find “the best scale” to represent each feature (e.g., SIFT) 2. Design an invariant feature descriptor – A descriptor captures the information in a region around the detected feature point – The simplest descriptor: a square window of pixels • What’s this invariant to? – Let’s look at some better approaches…
  • 19. Scale invariant detection • Suppose we are looking for corners • Key idea: find scale that gives local maximum of f – f is a local maximum in both position and scale – Common definition of f: Laplacian (or difference between two Gaussian filtered images with different sigmas)
  • 20. Slide from Tinne Tuytelaars Lindeberg et al, 1996 Slide from Tinne Tuytelaars Lindeberg et al., 1996
  • 21.
  • 22. Rotation invariance for feature descriptors Find dominant orientation of the image patch • This is given by x+, the eigenvector of H corresponding to + – + is the larger eigenvalue • Rotate the patch according to this angle Figure by Matthew Brown
  • 23. Multiscale Oriented PatcheS descriptor Take 40x40 square window around detected feature • Scale to 1/5 size (using prefiltering) • Rotate to horizontal • Sample 8x8 square window centered at feature • Intensity normalize the window by subtracting the mean, dividing by the standard deviation in the window (both window I and aI+b will match) 8 pixels
  • 26. Scale Invariant Feature Transform Basic idea: • Take 16x16 square window around detected feature • Compute edge orientation (angle of the gradient - 90 ) for each pixel • Throw out weak edges (threshold gradient magnitude) • Create histogram of surviving edge orientations 0 2
  • 27. SIFT Descriptor Full version • Divide the 16x16 window into a 4x4 grid of cells (2x2 case shown below) • Compute an orientation histogram for each cell • 16 cells * 8 orientations = 128 dimensional descriptor
  • 28. SIFT Properties Extraordinarily robust matching technique • Can handle changes in viewpoint • Up to about 60 degree out of plane rotation • Can handle significant changes in illumination, sometimes even day vs. night (next example) • Fast and efficient—can run in real time • Lots of code available http://people.csail.mit.edu/albert/ladypack/wiki/index.php?title=Kno wn_implementations_of_SIFT
  • 31. Feature Matching Given a feature in I1, how to find the best match in I2? 1. Define distance function that compares two descriptors 2. Test all the features in I2, find the one with min distance How to define the difference between two features f1, f2? • Simple approach is SSD(f1, f2) – Sum of square differences between entries of the two descriptors – Can give good scores to very ambiguous (bad) matches I1 f1 f2 I2
  • 32. Feature Distance How to define the difference between two features f1, f2? • Better approach: ratio distance = SSD(f1, f2) / SSD(f1, f2’) – f2 is best SSD match to f1 in I2 – f2’ is 2nd best SSD match to f1 in I2 – gives small values for ambiguous matches f1 f2 f2’ I1 I2
  • 33. Evaluating the Results • How can we measure the performance of a feature matcher? 50 75 200 feature distance
  • 34. True/false Positive The distance threshold affects performance • True positives = # of detected matches that are correct – Suppose we want to maximize these—how to choose threshold? • False positives = # of detected matches that are incorrect – Suppose we want to minimize these—how to choose threshold? 50 75 200 feature distance false match true match
  • 35. Applications Features are used for: • Image alignment (e.g., mosaics) • 3D reconstruction • Motion tracking • Object recognition • Indexing and database retrieval • Robot navigation • … etc.
  • 36. Acknowledgment Some of slides in this PowerPoint presentation are adaptation from various slides, many thanks to: 1. Deva Ramanan, Department of Computer Science, University of California at Irvine (http://www.ics.uci.edu/~dramanan/)