Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Are there any fast alternatives to SURF and SIFT for scale-invariant feature extraction?

SURF is patented, as is SIFT. ORB and BRIEF are not patented, but their features are not scale-invariant, seriously limiting their usefulness in complex scenarios.

Are there any feature extractors that can extract scale-invariant features as fast as SURF and are not so strictly patented as SURF and SIFT?

like image 228
Diego Avatar asked Apr 14 '12 22:04

Diego


People also ask

Is SIFT invariant to scale?

The SIFT features are local and based on the appearance of the object at particular interest points, and are invariant to image scale and rotation. They are also robust to changes in illumination, noise, and minor changes in viewpoint.

Is Surf scale invariant?

The SURF method (Speeded Up Robust Features) is a fast and robust algorithm for local, similarity invariant representation and comparison of images. Similarly to many other local descriptor-based approaches, interest points of a given image are defined as salient features from a scale-invariant representation.

Why is SIFT invariant to scale?

This means that it finds the scale of the image which the feature will produce the highest response. Then, the descriptor is calculated in that scale. So when you use a smaller/larger version, it should still find the same scale for the feature.

How does SIFT achieves scale invariance?

The scale-invariant feature transform (SIFT) is an algorithm used to detect and describe local features in digital images. It locates certain key points and then furnishes them with quantitative information (so-called descriptors) which can for example be used for object recognition.


2 Answers

Although you already choose BRISK, you might find FREAK interesting. Author claims to have better results than BRISK and ORB. I should also add that ORB is scale-invariant but has some problems in that area. So I would still recommend it for someone to try it.

The FREAK source code is compatible with OpenCV (how easy it is to merge them I do not know) and the author is working on submitting it to the OpenCV project.

EDIT:

FREAK is now part of opencv feature detectors / descriptors.

You can read here more about the differences between several feature detectors/extractors, and also a series of benchmarks which includes FREAK and other popular ones.

like image 157
Rui Marques Avatar answered Sep 19 '22 21:09

Rui Marques


FREAK is supposed to be the fastest scale and rotation invariant descriptor extractor, it is open source and you can use it easily as it is implemented in OpenCV. You need a binary matcher that uses the Hamming Distance, like the BruteForceMatcher.

Here you have an example on how to use it, easily replaceble by SIFT descriptor.

like image 37
Jav_Rock Avatar answered Sep 18 '22 21:09

Jav_Rock