0% found this document useful (0 votes)
4 views15 pages

Lecture6 1

The document discusses the Scale Invariant Feature Transform (SIFT) method, which includes keypoint detection, orientation assignment, and descriptor creation using a Difference of Gaussian (DoG) approximation. It highlights the robustness of SIFT in handling variations in viewpoint and illumination, and outlines the process of feature matching through distance functions. The document also explains the importance of defining feature distances for accurate matching between images.

Uploaded by

asumi288hk
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views15 pages

Lecture6 1

The document discusses the Scale Invariant Feature Transform (SIFT) method, which includes keypoint detection, orientation assignment, and descriptor creation using a Difference of Gaussian (DoG) approximation. It highlights the robustness of SIFT in handling variations in viewpoint and illumination, and outlines the process of feature matching through distance functions. The document also explains the importance of defining feature distances for accurate matching between images.

Uploaded by

asumi288hk
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

LoG-DoG (Difference of Gaussian)

LoG can be
approximated by a
difference of two
Gaussians (DoG) at
different scales

Adapted from Wiki


Scale Invariant Feature Transform
• Scale space peak selection
– Potential locations for finding features
• Key point localization
– Accurately locating the feature key points
• Orientation assignment
– Assigning orientation to the key points
• Key point descriptor
– Describing the key point as a high dimensional
vector (128) (SIFT Descriptor )

Adapted from slide by Mubarak Shah


Building the Scale Space

𝑘2𝜎
𝑘4𝜎

𝑘3𝜎

𝑘2𝜎

𝑘𝜎

Adapted from IJCV 2004 by David Lowe


Peak Detection

Adapted from slide by Mubarak Shah


Assignment of the Orientation

For the rotation invariance, compute the gradient magnitude


and direction at the scale of the keypoint.

Adapted from IJCV 2004 by David Lowe


Assignment of the Orientation

• An orientation histogram is formed from the gradient orientations


of sample points within a region around the keypoint.

• The orientation histogram has 36 bins

• The samples added to the histogram is weighted by the


gradient magnitude.

• The dominate direction is the peak in the histogram.

Adapted from IJCV 2004 by David Lowe


SIFT descriptor
Full version
• Divide the 16x16 window into a 4x4 grid of cells (2x2 case shown below)
• Compute an orientation histogram (8 bin) for each cell (relative orientation and
magnitude)
• 16 cells * 8 orientations = 128 dimensional descriptor

Adapted from slide by David Lowe


Properties of SIFT
Robust matching technique
– Can handle changes in viewpoint
– Can handle significant changes in illumination
– Fast and efficient—can run in real time
– Lots of code available
Summary
• Keypoint detection: repeatable
and distinctive
– Corners, blobs
– Harris, LoG

• Descriptors: robust
– spatial histograms of orientation
– SIFT and variants are typically good
for stitching and recognition
Which features match?
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
Feature distance
How to define the difference between two features f1, f2?
– Simple approach: L2 distance, ||f1 - f2 || (aka SSD)
– can give good scores to ambiguous (incorrect) matches

f1 f2

I1 I2
Feature distance
How to define the difference between two features f1, f2?
• Better approach: ratio distance = ||f1 - f2 || / || f1 - f2’ ||
• f2 is best SSD match to f1 in I2
• f2’ is 2nd best SSD match to f1 in I2
• gives large values for ambiguous matches

f1 f2' f2

I1 I2
Feature matching example

51 matches (thresholded by ratio score)


Feature matching example

58 matches (thresholded by ratio score)

You might also like