Making Speeded Up Robust Features (SURF) Faster

  • Adrian Hoffmann
    ETHZ
  • Luohong Wu
    ETHZ
  • Marc Styger
    ETHZ
  • Max Eichenberger
    ETHZ

Abstract

Computer vision is increasingly important in today's world. A common task in computer vision is feature extraction with some applications even requiring this to happen in real-time. An example of a well-known algorithm for this problem is Speeded Up Robust Features (SURF) which detects points of interest in an image and extracts its features. We divide the algorithm into multiple parts on which we apply optimizations to make SURF even faster. We perform run time experiments on optimizations like mathematical reforming, loop unrolling, blocking, inlining and vectorization. In the end, we analyze their behaviour with methods like roofline analysis and run time plots, which allow us to show that we achieve significant speed up (10 times for some modules).

Details and personal contributions are available in the paper.

Examples of our optimization improvement

Acknowledgements

The website template was borrowed from Michaël Gharbi.