Applying Scale-Invariant Feature Transform (SIFT)

The SIFT algorithm (1999) finds features in images or videos and is patented by the University of British Columbia. Typically, we can use the features for classification or clustering. SIFT is invariant with respect to translation, scaling, and rotation.

The algorithm's steps are as follows:

  1. Blur the image at different scales using a Gaussian blur filter.
  2. An octave corresponds to doubling the standard deviation of the filter. Group the blurred images by octave and difference them.
  3. Find the local extremas across the scale for the differenced images.
  4. Compare each pixel related to local extrema to the neighboring pixels in the same scale and neighboring scales.
  5. Select the largest or smallest value from ...

Get Python Data Analysis Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.