The last decade has witnessed the establishment of
image processing as a viable means of aiding underwater navigation. However,
many such systems are only implemented in pre-processing and offline due to
their excessive computational demands. Real-time techniques often require
special purpose hardware or impose limitations on the system to obtain
real-time performance at the expense of accuracy. The rapidly improving
performance of graphics hardware as well as the recent improvements in its
programmability with developments such as NVIDIA's CUDA, has made graphics
hardware a practical alternative to CPUs for highly parallel tasks such as
image processing. This paper details the implementation of the scale invariant
feature transform (SIFT) using a graphics processing unit (GPU) instead of a
conventional CPU in order to achieve real-time performance of a vision based
navigation system. The performance of both the GPU and CPU SIFT implementations
are compared and evaluated using images gathered by the newly developed
ROVLATIS off the west coast of Ireland.