An Open-Source SIFT Library

View project onGitHub

The Scale Invariant Feature Transform (SIFT) is a method to detect distinctive, invariant image feature points, which easily can be matched between images to perform tasks such as object detection and recognition, or to compute geometrical transformations between images. The open-source SIFT library available here is implemented in C using the OpenCV open-source computer vision library and includes functions for computing SIFT features in images, matching SIFT features between images using kd-trees, and computing geometrical image transforms from feature matches using RANSAC. The library also includes functionality to import and work with image features from both David Lowe's SIFT executable and the Oxford VGG’s affine covariant feature detectors. The images below depict some of this functionality.

SIFT features detected in two images

SIFT features matched between the two images and the transform computed from the matches using RANSAC.




Please see the THANKS file in the distribution for a list of contributors. Many thanks to all of these folks.

Patent Notice
The following patent has been issued for methods embodied in this software: "Method and apparatus for identifying scale invariant features in an image and use of same for locating an object in an image," David G. Lowe, US Patent 6,711,293 (March 23, 2004). Provisional application filed March 8, 1999. Asignee: The University of British Columbia. For further details, contact David Lowe ( or the University-Industry Liaison Office of the University of British Columbia.