Scale-Invariant Feature Transformation

The SIFT algorithm takes an image and transforms i t into a collection of local feature vectors.
SIFTing through the images!
The SIFT algorithm takes an image and transforms i t into a collection of local feature vectors. Each of these feature vectors is distinctive and invariant to any scaling, rotation, or translation of the image. They are also robust with respect to noise, occlusion, some forms of affine distortion and i l lumination changes. The features are relatively easy to extract and are also robust to partial occlusion.


  • Autonomous cars
  • Health- care industry for image retrieval
  • Face recognition, Ear recognition, Iris recognition, Fingerprint recognition
  • Real- time hand gesture recognition


SIFT helps locate the local features in an image, commonly known as the key points of the image. These key points are scale & rotation invariant that can be used for various computer vision applications. The goal is :
  • Detection of the key points on the image for robust matching of the images
  • To obtain keypoints that are resilient to changes in l ight, orientation, brightness, size etc.
  • To obtain highly distinctive features for precise object identification
  • Creation of the descriptor vector for each point of interest, which will help during image matching

The Algorithm

Here' s an outline of the SIFT Algorithm.
  • Constructing a scale space: This is the initial preparation. We create internal representations of the original image to ensure scaleinvariance. This is done by generating a " scale space".
  • Lo G Approximation: The Laplacian of Gaussian is beneficial for f inding the key points in an image. But i t ' s computationally expensive. So, we approximate i t using the Difference of Gaussian( Do G).
  • Finding keypoints: After we derive the Do Gs, we now try to f ind key points. These are maxima and minima in the Difference of Gaussian image.
  • Get rid of unwanted key points: Edges and low contrast regions are the unwanted keypoints. Eliminating these makes the algorithm efficient and robust. A technique similar to the Harris Corner Detector is used here.
  • Assigning an orientation to the keypoints: An orientation is calculated for each key point. Any further calculations are done relative to this orientation. This effectively cancels out the effect of orientation, making it rotation invariant.
  • Encode SIFT features: Finally, with scale and rotation invariance in place, the Keypoint Descriptors are generated. This helps uniquely identify features. With this representation, we can easily identify the feature we are looking for. Keypoints between two images are matched by identifying their nearest neighbours.


There has been a substantial amount of testing of our SIFT algorithm for i ts robustness, processing t ime and i ts efficiency to detect the keypoints and descriptors of an image, invariable of the scale, rotation and brightness.We have run the tests to check the Execution t ime for generating the Do G images, keypoints and descriptors individually.

A range of other input images ( enlarged, blurred, small, blank and with different orientations) have also been tested on the SIFT algorithm. We have been able to draw satisfactory inferences from these.

The outputs have been compared with the SIFT algorithm from other sources. We have derived a better quality of results.

The next milestone would be to reduce the execution t ime taken by SIFT. There is an on- going research on this. Suitable modifications are being made on the existing SIFT algorithm to speed up the process. Watch this space, for our next paper on SIFT which gives an insight on how the Algorithm is made to work faster and get better and more accurate results


The SIFT Algorithm can be extensively used in object detection and the faster version of SIFT can prove to be efficient in real- t ime recognition of the object.


Chiplogic Technologies

Maidenhead Concorde Park
Concorde Road
Building 3, 1st Floor
Maidenhead SL6 4BY
United Kingdom

Sign up to Our Newsletter

© 2020 Chiplogic Technologies.