Computer Vision and Image Processing
The OpenSURF Computer Vision Library
The task of finding point correspondences between two images of the same scene or object is an integral part of many machine vision or computer vision systems. The algorithm aims to find salient regions in images which can be found under a variety of image transformations. This allows it to form the basis of many vision based tasks; object recognition, video surveillance, medical imaging, augmented reality and image retrieval to name a few.
This archive contains the latest build of the code in the Repository. This is the original and most widely used open source C++ SURF computer vision library available.
The official port of the OpenSURF library for C#. Builds as a dll to allow seamless integration into any computer vision system.
This paper contains a detailed analysis of the Speeded Up Robust Features computer vision algorithm along with a breakdown of the OpenSURF implementation. Also contains useful info on machine vision and image processing in general.
Should you wish to reference the OpenSURF library in your work, this bibtex entry contains the information you'll need.
The most up-to-date way to get the OpenSURF code is from the trunk in the Subversion repository. See the Google Code help section for details on how to checkout code or Contact Me for details.
This section contains links to computer vision papers referencing the OpenSURF library along with the library rewritten in other languages. Among them are comparisons of open source computer vision algorithms along with novel applications to face recognition.
This paper evaluates the performance of open source SURF computer vision library implementations. Two versions of the OpenSURF library are compared to dlib (based on OpenSURF) and the version included in Pan-o-matic computer vision tool.
This document is a comparison of the OpenSURF feature descriptor with the original computer vision library written by Herbert Bay. This work was kindly provided by Pablo Fernandez.
Application of the computer vision algorithm to face recognition. References "Notes on the OpenSURF Library".
Keypoint detection and matching is a basic computer vision task and a necessary ingredient for several applications, e.g., object recognition, structure from motion, panorama stitching. This work implements the popular SURF descriptor, on commodity graphics hardware and achieve real-time performance even for HD images.
An implementation of the computer vision algorithm exploiting parallel processing on multi-core CPUs. Implementation is based very closely on OpenSURF. References "Notes on the OpenSURF Library".
JOpenSURF is a Java port of the OpenSURF computer vision library for Speeded Up Robust Features.
Implementation as ImageJ plugin with a convenient GUI and output of statistics. Based on OpenSURF computer vision library.
OpenASURF is a port of OpenSURF to the Android Phone platform.
If you've done any work which is based on or provides a reference to OpenSURF and wish for it to appear in this page, please contact me for details.
Please also link to this page if you have found OpenSURF useful!