|
Anmelden
Andre Schulz, Florian Jung, Sebastian Hartte, Daniel Trick,
Christian Wojek, Konrad Schindler, Jens Ackermann, Michael Goesele
![]() ![]() |
![]() |
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. In this work we implement the popular SURF descriptor, an approximation of SIFT, on commodity graphics hardware and achieve real-time performance even for HD images.
Changelog:
| 2010/08/02 |
Changed FindOpenCV.cmake script, lowered required compute capability to 1.2, added __inline__ keyword, released code as version 1.0.1 |
| 2011/02/04 |
Fixed a memory leak for the integral image. Thanks to Marijn van Vliet for pointing this out! Released code as version 1.0.2 |
| 2011/02/24 |
Various bugfixes in version 1.0.3: - Update FindCUDA |
| 2011/03/18 |
Code release version 1.0.4: -Compatibility bugfix for the Fermi GPU architecture |
| 2011/04/26 |
Code release version 1.1.0: - Added support for compute capability 1.1 - Fixed a bug to handle images without keypoints |
| 2011/04/27 |
Code release version 1.1.1: - Added GPU support for 24-bit RGB images |
| 2012/03/13 |
Code release version 1.1.2 and 1.2.0: - We are releasing two versions at this time to support both CUDPP-1.x and CUDPP-2.x
Highlights for version 1.1.2: - Works with CUDPP-1.x Highlights for version 1.2.0: - Dropped support for CUDPP-1.x |
Code:
Please download the CUDA SURF source code from the links provided in the changelog. Please note that we release this code under the GPLv3 license. The license is contained within the package. To compile the above code you will need to fulfill the following software dependencies:
-CMake 2.6.4 or later, CMake 2.8.2 is recommended
-CUDA Toolkit 2.2 or later
-corresponding CUDA SDK version
-OpenCV 2.0.0 or later
To build CUDA SURF run:
|
$ ccmake . (specify your paths to the CUDA SDK and CUDA Toolkit directories, the build type and generate the Makefile) $ make |
For further notes please see the README file. Once you successfully compiled CUDA SURF run the demo program to compute some interest points::
| $ ./surf |
See main.cpp on how to use the CUDA SURF classes. The interface has been inspired by Chris Evan's OpenSURF library and is thus similar to use.
CUDA SURF has successfully been tested on:
- Debian Linux 64bit, CMake 2.8.2, CUDA+SDK 2.2, OpenCV 2.0.0
- Windows XP 32bit, CMake 2.8.1 (NMake generator), CUDA+SDK 2.2, OpenCV 2.0.0
For further questions please contact Andre Schulz.
