SIFT Implementation and Optimization for General-Purpose GPU
Date issued
2007
Journal Title
Journal ISSN
Volume Title
Publisher
Václav Skala - UNION Agency
Abstract
With the addition of free programmable components to modern graphics hardware, graphics processing units
(GPUs) become increasingly interesting for general purpose computations, especially due to utilizing parallel
buffer processing. In this paper we present methods and techniques that take advantage of modern graphics
hardware for real-time tracking and recognition of feature-points. The focus lies on the generation of feature
vectors from input images in the various stages. For the generation of feature-vectors the Scale Invariant Feature
Transform (SIFT) method [Low04a] is used due to its high stability against rotation, scale and lighting condition
changes of the processed images. We present results of the various stages for feature vector generation of our
GPU implementation and compare it to the CPU version of the SIFT algorithm. The approach works well on
Geforce6 series graphics board and above and takes advantage of new hardware features, e.g. dynamic
branching and multiple render targets (MRT) in the fragment processor [KF05]. With the presented methods
feature-tracking with real time frame rates can be achieved on the GPU and meanwhile the CPU can be used for
other tasks.
Description
Subject(s)
grafické procesory, SIFT, extrakce znaků, trasování
Citation
WSCG '2007: Full Papers Proceedings: The 15th International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision 2007 in co-operation with EUROGRAPHICS: University of West Bohemia Plzen Czech Republic, January 29 – February 1, 2007, p. 317-322.