Feature Extraction using SIFT

[Final Year Project] FPGA based Image Mosaicing using AI (log #5)

What are Image Features?

Image features are a set of points in an image that can be distinctively identified even if the image undergoes certain modifications such as –Rotation, Translation, Blurring or Sharpening, Scale Changes, And Changes in Illumination.

Corners and edges are important features and they can be identified by the sharpness i.e the abrupt change in the pixel values.

Feature points are also referred to as Keypoints. Keypoints are used to correlate the two images and thus obtain matches between the two.


SIFT – Scale Invariant feature transform was published by Prof. David Lowe and is patented by the University of British Columbia. It is one of the most widely used algorithms for keypoint detection due to its high-quality results.

A great explanation of how the SIFT works can be found from these sources –
[ http://aishack.in/tutorials/sift-scale-invariant-feature-transform-introduction/ ]
[ https://www.cse.iitb.ac.in/~ajitvr/CS763/SIFT.pdf ]

Implementation of SIFT in OpenCV Python

We made use of the SIFT algorithm available in OpenCV library.

Important Note: One requires OpenCV version to use SIFT because it is not included in the future versions of OpenCV.

Code For SIFT

Input Images

Output Images


2 thoughts on “Feature Extraction using SIFT”

Leave a Reply