Machine Vision and Applications

, Volume 25, Issue 3, pp 787–800 | Cite as

FPGA-based module for SURF extraction

  • Tomáš Krajník
  • Jan Šváb
  • Sol Pedre
  • Petr Čížek
  • Libor Přeučil
Original Paper

Abstract

We present a complete hardware and software solution of an FPGA-based computer vision embedded module capable of carrying out SURF image features extraction algorithm. Aside from image analysis, the module embeds a Linux distribution that allows to run programs specifically tailored for particular applications. The module is based on a Virtex-5 FXT FPGA which features powerful configurable logic and an embedded PowerPC processor. We describe the module hardware as well as the custom FPGA image processing cores that implement the algorithm’s most computationally expensive process, the interest point detection. The module’s overall performance is evaluated and compared to CPU and GPU-based solutions. Results show that the embedded module achieves comparable distinctiveness to the SURF software implementation running in a standard CPU while being faster and consuming significantly less power and space. Thus, it allows to use the SURF algorithm in applications with power and spatial constraints, such as autonomous navigation of small mobile robots.

Keywords

SURF FPGA Monocular navigation Embedded systems Feature extraction 

References

  1. 1.
    Agrawal, M., Konolige, K., Blas, M.: CenSurE: Center surround extremas for realtime feature detection and matching. In: European Conference on Computer Vision (2008)Google Scholar
  2. 2.
    Aubepart, F., El Farji, M., Franceschini, N.: FPGA implementation of elementary motion detectors for the visual guidance of micro-air-vehicles. In: IEEE International Symposium on Industrial Electronics (2004)Google Scholar
  3. 3.
    Battezzati, N., Colazzo, S., Maffione, M., Senepa, L.: SURF Algorithm in FPGA: a novel architecture for high demanding industrial applications. In: Design, Automation and Test in Europe Conference and Exhibition (2012)Google Scholar
  4. 4.
    Bauer, J., Sünderhauf, N., Protzel, P.: Comparing several implementations of two recently published feature detectors. In: International Conference on Intelligent and Autonomous Systems (2007)Google Scholar
  5. 5.
    Bay, H., Ess, A., Tuytelaars, T., van Gool, L.: Speeded-up robust features (SURF). Comput. Vis. Image Underst. 110(3), 346–359 (2008)CrossRefGoogle Scholar
  6. 6.
    Bonato, V., Marques, E., Constantinides, G.A.: A parallel hardware architecture for scale and rotation invariant feature detection. IEEE Trans. Circuits Syst. Video Technol. 18(12), 1703–1712 (2008). doi:10.1109/TCSVT.2008.2004936 Google Scholar
  7. 7.
    Bouris, D., Nikitakis, A., Papaefstathiou, I.: Fast and efficient FPGA-based feature detection employing the SURF algorithm. In: IEEE International Symposium on Field-Programmable Custom Computing Machines (2010)Google Scholar
  8. 8.
    Chandrasekhar, V., et al.: Mobile visual search. IEEE Signal Process. Mag. (2011). doi:10.1109/MSP.2011.940881
  9. 9.
    Chang, L., Hernandez-Palancar, J., Sucar, L., Arias-Estrada, M.: FPGA-based detection of SIFT interest keypoints. Mach. Vis. Appl. 24(2), 371–392 (2013). doi:10.1007/s00138-012-0430-8 Google Scholar
  10. 10.
    Cornelis, N., van Gool, L.: Fast scale invariant feature detection and matching on programmable graphics hardware. In: IEEE International Conference on Computer Vision and Pattern Recognition (2008)Google Scholar
  11. 11.
    Davison, A.J., Reid, I.D., Molton, N.D., Stasse, O.: MonoSLAM: real-time single camera SLAM. IEEE Trans. Pattern Anal. Mach. Intell. 29(6), 1052–1067 (2007). doi:10.1109/TPAMI.2007.1049
  12. 12.
    Grabner, M., Grabner, H., Bischof, H.: Fast approximated SIFT. In: Proceedings of the 7th Asian conference of computer vision, pp. 918–927 (2006)Google Scholar
  13. 13.
    Harris, C., Stephens, M.: A combined corner and edge detector. In: Proceedings of the 4th Alvey Vision Conference, pp. 147–151 (1988)Google Scholar
  14. 14.
    Huang, F.C., Huang, S.Y., Ker, J.W., Chen, Y.C.: High-performance SIFT hardware accelerator for real-time image feature extraction. IEEE Trans. Circuits Syst. Video Technol. 22(3), 340–351 (2012). doi:10.1109/TCSVT.2011.2162760 Google Scholar
  15. 15.
    Jorg, S., Langwald, J., Nickl, M.: FPGA based real-time visual servoing. In: Proceedings of the 17th International Conference on Pattern Recognition, vol. 1, pp. 749–752 (2004). doi:10.1109/ICPR.2004.1334300
  16. 16.
    Ke, Y., Sukthankar, R.: PCA-SIFT: a more distinctive representation for local image descriptors. In: IEEE Conference on Computer Vision and Pattern Recognition (2004). doi:10.1109/CVPR.2004.1315206
  17. 17.
    Krajník, T., Faigl, J., Vonásek, V., Košnar, K., Kulich, M., Přeučil, L.: Simple yet stable bearing-only navigation. J. Field Robot. 27, 511–533 (2010). doi:10.1002/rob.20354 Google Scholar
  18. 18.
    Li, J., Allinson, N.: A comprehensive review of current local features for computer vision. Neurocomputing 71 (2008). doi:10.1016/j.neucom.2007.11.032
  19. 19.
    Loncomilla, P., del Solar, J.R.: Improving SIFT-based object recognition for robot applications. Image Anal. Process. 1084–1092 (2005). doi:10.1007/11553595_133
  20. 20.
    Mikolajczyk, K., Schmid, C.: Scale and affine invariant interest point detectors. 60(1), 63–86 (2004). doi:10.1023/B:VISI.0000027790.02288.f2
  21. 21.
    Mikolajczyk, K., Schmid, C.: Scale and affine invariant interest point detectors. Int. J. Comput. Vis. 60(1), 63–86 (2004). doi:10.1023/B:VISI.0000027790.02288.f2 Google Scholar
  22. 22.
    Mikolajczyk, K., Schmid, C.: A performance evaluation of local descriptors. IEEE Trans. Pattern Anal. Mach. Intell. 27(10), 1615–1630 (2005). http://lear.inrialpes.fr/pubs/2005/MS05 Google Scholar
  23. 23.
    Moravec, H.: Obstacle avoidance and navigation in the real world by a seeing robot rover. Ph.D. thesis, Robotics Institute, Carnegie Mellon University, StanfordGoogle Scholar
  24. 24.
    Mouragnon, E., Lhuillier, M., Dhome, M., Dekeyser, F., Sayd, P.: Real time localization and 3D reconstruction. In: IEEE Conference on Computer Vision and Pattern Recognition (2006)Google Scholar
  25. 25.
    Murray, D., Little, J.J.: Using real-time stereo vision for mobile robot navigation. Auton. Robots (2000). doi:10.1023/A:1008987612352
  26. 26.
    Price, A., Pyke, J., Ashiri, D., Cornall, T.: Real time object detection for an unmanned aerial vehicle using an FPGA based vision system. In: IEEE International Conference on Robotics and Automation (2006)Google Scholar
  27. 27.
    Sarfraz, A.S., Hellwich, O.: Head pose estimation in face recognition across pose scenarios. In: International Conference on Computer Vision Theory and Applications (2008)Google Scholar
  28. 28.
    Schaeferling, M., Kiefer, G.: Flex-SURF: A flexible architecture for FPGA-based robust feature extraction for optical tracking systems. In: International Conference on Reconfigurable Computing and FPGAs (2010)Google Scholar
  29. 29.
    Schaeferling, M., Kiefer, G.: Object recognition on a chip: A complete SURF-based system on a single FPGA. In: International Conference on Reconfigurable Computing and FPGAs (2011)Google Scholar
  30. 30.
    Schaeferling, M., Kiefer, G.: Object recognition on a chip: a complete SURF-based system on a single FPGA. In: International Conference on Reconfigurable Computing and FPGAs (2011)Google Scholar
  31. 31.
    Se, S., Lowe, D., Little, J.: Vision-based mobile robot localization and mapping using scale-invariant features. In: IEEE International Conference on Robotics and Automation (2001)Google Scholar
  32. 32.
    Se, S., et al.: Vision based modeling and localization for planetary exploration rovers. In: International Astronautical Congress (2004)Google Scholar
  33. 33.
    Šváb, J., Krajník, T., Faigl, J., Přeučil, L.: FPGA-based speeded up robust features. In: IEEE International Conference on Technologies for Practical Robot Applications (2009)Google Scholar
  34. 34.
    Thorpe, C., Hebert, M., Kanade, T., Shafer, S.: Vision and navigation for the Carnegie-Mellon Navlab. IEEE Trans. Pattern Anal. Mach. Int. (1988)Google Scholar
  35. 35.
    Tippetts, B., Lee, D.J., Archibald, J.: An on-board vision sensor system for small unmanned vehicle applications. Mach. Vis. Appl. (2012)Google Scholar
  36. 36.
    Tippetts, B., et al.: FPGA implementation of a feature detection and tracking algorithm for real-time applications. In: International Conference on Advances in Visual Computing (2007) Google Scholar
  37. 37.
    Williams, J., Dawood, A., Visser, S.: FPGA-based cloud detection for real-time onboard remote sensing. In: IEEE International Conference on Field-Programmable Technology (2002). doi:10.1109/FPT.2002.1188671
  38. 38.
    Wu, C.: SiftGPU: a GPU implementation of scale invariant feature transform (SIFT). http://cs.unc.edu/ccwu/siftgpu
  39. 39.
    Yao, L., Feng, H., Zhu, Y., Jiang, Z., Zhao, D., Feng, W.: An architecture of optimised SIFT feature detection for an FPGA implementation of an image matcher. International Conference on Field-Programmable Technology, pp. 30–37 (2009). doi:10.1109/FPT.2009.5377651

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Tomáš Krajník
    • 1
    • 2
  • Jan Šváb
    • 2
  • Sol Pedre
    • 3
  • Petr Čížek
    • 2
  • Libor Přeučil
    • 2
  1. 1.Lincoln Centre for Autonomous Systems, School of Computer ScienceUniversity of LincolnLincolnUK
  2. 2.Department of Cybernetics, Faculty of Electrical EngineeringCzech Technical University in PraguePragueCzech Republic
  3. 3.División de Robótica CAREM, Centro Atómico BarilocheComisión Nacional de Energía AtómicaBuenos AiresArgentina

Personalised recommendations