Jump to content

Speeded up robust features

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 222.127.196.140 (talk) at 06:03, 19 October 2010 (→‎Implementations: Made a direct link to the SURF documentation in OpenCV). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

SURF (Speeded Up Robust Features) is a robust image detector & descriptor, first presented by Herbert Bay et al. in 2006, that can be used in computer vision tasks like object recognition or 3D reconstruction. It is partly inspired by the SIFT descriptor. The standard version of SURF is several times faster than SIFT and claimed by its authors to be more robust against different image transformations than SIFT. SURF is based on sums of approximated 2D Haar wavelet responses and makes an efficient use of integral images. As basic image features it uses a Haar wavelet approximation of the determinant of Hessian blob detector.

Implementations

  • Original implementation (closed source)
  • OpenSURF (open source) implementation with detailed documentation and reference paper (C++, C#, Java, Android, iPhone)
  • OpenSURF Matlab (open source) Translation of Evans OpenSURF (Matlab)
  • OpenCV SURF (open source) implementation of SURF feature extraction (OpenCV 2.0)
  • SURFmex Matlab interface (MEX) to OpenCV's SURF code.
  • GPU SURF (closed source) a GPU Implementation
  • CUDA SURF (open source) a GPU implementation using CUDA, similar interface as OpenSURF (C++, CUDA)
  • libmv SURF (open source) implementation of extraction and matching.
  • Dlib C++ Library (open source) implementation of SURF feature extraction
  • Pan-o-matic (open source) software which includes an implementation of the SURF algorithm
  • Parallel SURF Multi-threaded implementation based on Pan-o-matic
  • C# SURF plugin for Multi-Agent Serving System (open source) implementation of extraction and matching.
  • JavaSurf (open source) java implementation (platform independent)
  • JOpenSURF (open source) java translation of OpenSURF
  • ImageJ SURF (open source) SURF implementation as ImageJ plugin with a convenient GUI and output of statistics (platform independent).
  • ASSURF (open source) SURF implementation in ActionScript for the Adobe Flash Platform.
  • Speeded Up SURF (open source) a GPU Implementation

See also

References