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’sSIFT detectorand 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.
The VLFeatopen sourcelibrary implements popular computer vision algorithms including SIFT,MSER, k-means, hierarchical k-means, agglomerative information bottleneck, and quick shift. It is written in C for efficiency and compatibility, with interfaces in MATLAB for ease of use, and detailed documentation throughout. It supports Windows, Mac OS X, and Linux. The latest version of VLFeat is 0.9.13.