Questions tagged [surf]

Speeded-Up Robust Features (SURF) is a feature detection algorithm used in many [tag:computer-vision] tasks, such as object recognition, 3D reconstruction, camera calibration, and [tag:cbir].

Speeded-Up Robust Features (SURF) is an algorithm in computer vision to detect and describe local features in images.

SURF is billed as specifically “Speeded-Up” and “Robust” over its predecessor, the SIFT algorithm – it is based on Hessian blob detection, and eschews the more byzantine arrangements of SIFT (e.g. octaves). This visualization illustrates SURF features with circles, scaled accordingly for each feature, overlaid on the image from which they were extracted:

SURF feature overlaid

The standard standard SURF implementation, from the introductory journal article, is about an order of magnitude faster than David Lowe’s implementation of SIFT (when run in a comparable environment).

584 questions
84
votes
2 answers

What are keypoints in image processing?

When using OpenCV for example, algorithms like SIFT or SURF are often used to detect keypoints. My question is what actually are these keypoints? I understand that they are some kind of "points of interest" in an image. I also know that they are…
dephinera
  • 3,257
  • 9
  • 37
  • 74
70
votes
21 answers

Can't use SURF, SIFT in OpenCV

I'm trying a simple thing like detector = cv2.SIFT() and get this bad error detector = cv2.SIFT() AttributeError: 'module' object has no attribute 'SIFT' I do not understand that because cv2 is installed. cv2.__version__ is $Rev: 4557 $ My system…
Linda
  • 2,195
  • 4
  • 23
  • 32
38
votes
4 answers

OpenCV / SURF How to generate a image hash / fingerprint / signature out of the descriptors?

There are some topics here that are very helpful on how to find similar pictures. What I want to do is to get a fingerprint of a picture and find the same picture on different photos taken by a digital camera. The SURF algorithm seams to be the best…
dan
  • 5,127
  • 12
  • 36
  • 43
30
votes
6 answers

SURF vs SIFT, is SURF really faster?

I am testing some object detection with SURF and SIFT. SURF claims to be faster and more robust than SIFT but I found in my test that this is not true. SIFT with medium images (600*400) is the same speed of SURF and it recognizes objects pretty well…
dynamic
  • 44,025
  • 53
  • 143
  • 223
29
votes
1 answer

Opencv 3.0 - module object has no attribute 'xfeatures2d'

I have shifted from OpenCV 2.4.9 to 3.0 to make use of drawMatches and drawMatchesKnn function. I came to know that it does not come along with non-free algorithms like SIFT , SURF. So I installed opencv_contrib from…
Pawan
  • 3,521
  • 6
  • 25
  • 32
26
votes
3 answers

Detecting truck wheels

I am currently working on a project which we have a set of photos of trucks going by a camera. I need to detect what type of truck it is (how many wheels it has). So I am using EMGU to try to detect this. Problem I have is I cannot seem to be able…
Dr.Denis McCracleJizz
  • 830
  • 2
  • 10
  • 25
21
votes
2 answers

Nonfree module is missing in OpenCV 3.0

I have built the openCV 3.0 alpha version from source with support for CUDA and TBB. Now, I want to do feature detection and feature matching using SURF algorithm. SurfFeatureDetector is present in the include file opencv2/nonfree/features2d.hpp &…
Chaitanya Uttarwar
  • 310
  • 2
  • 6
  • 13
20
votes
3 answers

OpenCV image comparison in Android

[EDIT] I have devised some code for image comparison. The matching part is still a bit flawed and I would love some assitance. The project can be found at - GitHub. I have these two images Img1 and Img2: When I use the following command in…
20
votes
2 answers

What does size and response exactly represent in a SURF keypoint?

I'm using OpenCV 2.3 for keypoints detection and matching. But I am a bit confused with the size and response parameters given by the detection algorithm. What do they exactly mean? Based on the OpenCV manual, I can't figure it out: float size:…
19
votes
3 answers

OpenCV - Object matching using SURF descriptors and BruteForceMatcher

I have a question about objects matching with OpenCV. I'm useing SURF algorithm implemented in opencv 2.3 to first detect features on each image, and then extracting the descriptors of these features. The problem in matching using Brute Force…
khateeb
  • 603
  • 1
  • 6
  • 17
19
votes
5 answers

BFMatcher match in OpenCV throwing error

I am using SURF descriptors for image matching. I am planning to match a given image to a database of images. import cv2 import numpy as np surf = cv2.xfeatures2d.SURF_create(400) img1 = cv2.imread('box.png',0) img2 =…
motiur
  • 1,500
  • 8
  • 31
  • 54
19
votes
7 answers

SURF and SIFT Alternative Object Tracking Algorithm for Augmented Reality

After asking here and trying both SURF and SIFT, neither of them seams to be efficient enough to generate interest points fast enough to track a stream from the camera. SURF, for example, takes around 3 seconds to generate interest points for an…
Leo Jweda
  • 2,403
  • 3
  • 23
  • 34
18
votes
7 answers

OpenCV - undefined reference: SurfFeatureDetector and BruteForceMatcher

I'm making a program in C++ that uses 2 images to detect SURF Features, compute the matches with a bruteforcematcher and draws it. Here's the code #include #include #include #include "opencv/cv.h" #include…
Lennart-
  • 519
  • 1
  • 6
  • 19
17
votes
4 answers

opencv FLANN with ORB descriptors?

I am trying to use FLANN with ORB descriptors, but opencv crashes with this simple code: vector > dbKeypoints; vector dbDescriptors; vector objects; /* load Descriptors from images (with…
dynamic
  • 44,025
  • 53
  • 143
  • 223
16
votes
2 answers

How to match SURF interest points to a database of images

I am using the SURF algorithm in C# (OpenSurf) to get a list of interest points from an image. Each of these interest points contains a vector of descriptors , an x coordinate (int), an y coordinate (int), the scale (float) and the orientation…
MortenGR
  • 764
  • 1
  • 7
  • 18
1
2 3
38 39