Machine Vision and Applications

, Volume 28, Issue 5–6, pp 525–537 | Cite as

Improving the construction of ORB through FPGA-based acceleration

  • Roberto de LimaEmail author
  • Jose Martinez-Carranza
  • Alicia Morales-Reyes
  • Rene Cumplido
Original Paper


Binary descriptors have won their place as efficient and effective visual descriptors in several vision tasks. In this context, one of the most widely used binary descriptors to date is the ORB descriptor. ORB is robust against rotation changes, and it uses a learning procedure to generate sampling pairwise tests to construct the descriptor. However, this construction involves a sequential memory access of as many steps as the binary string size. From the latter and motivated by the fact that modern computer vision tasks may require the construction of thousands, if not millions of binary descriptors, we propose to accelerate the construction process of the ORB descriptor via an FPGA-based hardware architecture. The latter is leveraged with a novel arrangement of pairwise tests, which takes advantage of a dual random access memory scheme achieving an acceleration of up to 17 times when compared against the sequential way. The empirical assessment indicates that ORB descriptors obtained from the proposed approach keep a similar performance to that of the original ORB.


ORB BRIEF FPGA Binary descriptors Feature matching 


  1. 1.
    Alahi, A., Ortiz, R., Vandergheynst, P.: Freak: fast retina keypoint. In: 2012 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)Google Scholar
  2. 2.
    Alcantarilla, P.F.: TrueVision solutions: fast explicit diffusion for accelerated features in nonlinear scale spaces. IEEE Trans. Pattern Anal. Mach. Intell. 34(7), 1281–1298 (2013)Google Scholar
  3. 3.
    Alcantarilla, P.F., Bartoli, A., Davison, A.J.: Kaze features. In: Computer Vision–ECCV (2012)Google Scholar
  4. 4.
    Bello, E.D., Salvadeo, P.A.: An image descriptors extraction hardware–architecture inspired on human retina. In: 2014 IX Southern Conference on Programmable Logic (SPL)Google Scholar
  5. 5.
    Bouris, D., Nikitakis, A., Papaefstathiou, I.: Fast and efficient FPGA-based feature detection employing the surf algorithm. In: Field-Programmable Custom Computing Machines (FCCM), 2010 18th IEEE Annual International Symposium on IEEE, pp. 3–10 (2010)Google Scholar
  6. 6.
    Byrne, J., Shi, J.: Nested shape descriptors. In: Proceedings of the IEEE International Conference on Computer Vision, pp. 1201–1208 (2013)Google Scholar
  7. 7.
    Calonder, M., Lepetit, V., Strecha, C., Fua, P.: Brief: binary robust independent elementary features. Comput. Vis. ECCV 2010, 778–792 (2010)Google Scholar
  8. 8.
    Chang, L., Hernandez-Palancar, J.: A hardware architecture for sift candidate keypoints detection. In: Progress in Pattern Recognition, Image Analysis, Computer Vision, and Applications, pp. 95–102. Springer (2009)Google Scholar
  9. 9.
    Chang, L., Hernandez-Palancar, J., Sucar, L.E., Arias-Estrada, M.: Fpga-based detection of sift interest keypoints. Mach. Vis. Appl. 24(2), 371–392 (2013)CrossRefGoogle Scholar
  10. 10.
    Dalal, N., Triggs, B.: Histograms of oriented gradients for human detection. In: Computer Vision and Pattern Recognition, 2005. CVPR 2005. IEEE Computer Society Conference on IEEE, vol. 1, pp. 886–893 (2005)Google Scholar
  11. 11.
    de Lima, R., Martinez-Carranza, J., Morales-Reyes, A., Cumplido, R.: Accelerating the construction of brief descriptors using an fpga-based architecture. In: 2015 International Conference on ReConFigurable Computing and FPGAs (ReConFig), pp. 1–6. IEEE (2015)Google Scholar
  12. 12.
    Grewenig, S., Weickert, J., Bruhn, A.: From box filtering to fast explicit diffusion. In: Pattern Recognition, pp. 533–542. Springer (2010)Google Scholar
  13. 13.
    Heinly, J., Dunn, E., Frahm, J.M.: Comparative evaluation of binary features. In: Computer Vision–ECCV 2012, pp. 759–773. Springer (2012)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. Circuits Syst. Video Technol. IEEE Trans. 22(3), 340–351 (2012)CrossRefGoogle Scholar
  15. 15.
    Jiang, J., Li, X., Zhang, G.: Sift hardware implementation for real-time image feature extraction. Circuits Syst. Video Technol. IEEE Trans. 24(7), 1209–1220 (2014)MathSciNetCrossRefGoogle Scholar
  16. 16.
    Ke, Y., Sukthankar, R.: Pca-sift: a more distinctive representation for local image descriptors. In: Computer Vision and Pattern Recognition, 2004. CVPR 2004. Proceedings of the 2004 IEEE Computer Society Conference on IEEE, vol. 2, pp. II–II (2004)Google Scholar
  17. 17.
    Khan, N., McCane, B., Mills, S.: Better than sift? Mach. Vis. Appl. 26(6), 819–836 (2015)CrossRefGoogle Scholar
  18. 18.
    Krajník, T., Šváb, J., Pedre, S., Čížek, P., Přeučil, L.: Fpga-based module for surf extraction. Mach. Vis. Appl. 25(3), 787–800 (2014)CrossRefGoogle Scholar
  19. 19.
    Lee, K.-Y.: A design of an optimized orb accelerator for real-time feature detection. Int. J. Control Autom. 7(3), 213–218 (2014)CrossRefGoogle Scholar
  20. 20.
    Lee, K.-Y., Byun, K.-J.: A hardware design of optimized orb algorithm with reduced hardware cost. Adv. Sci. Technol. Lett. 43, 58–62 (2013)Google Scholar
  21. 21.
    Leutenegger, S., Chli, M., Siegwart, R.Y.: Brisk: binary robust invariant scalable keypoints. In: Computer Vision (ICCV), 2011 IEEE International Conference on IEEE, pp. 2548–2555 (2011)Google Scholar
  22. 22.
    Mair, E., Hager, G., Burschka, D., Suppa, M., Hirzinger, G.: Adaptive and generic corner detection based on the accelerated segment test. In: Computer Vision–ECCV 2010, pp. 183–196. Springer (2010)Google Scholar
  23. 23.
    Martinez-Carranza, J., Mayol-Cuevas, W.: Real-time continuous 6d relocalisation for depth cameras. In: Workshop on Multi VIew Geometry in RObotics (MVIGRO), in Conjunction with RSS (2013)Google Scholar
  24. 24.
    Mikolajczyk, K., Schmid, C.: A performance evaluation of local descriptors. Pattern Anal. Mach. Intell. IEEE Trans. 27(10), 1615–1630 (2005)CrossRefGoogle Scholar
  25. 25.
    Mikolajczyk, K., Tuytelaars, T., Schmid, C., Zisserman, A.: A comparison of affine region detectors. Int. J. Comput. Vis. 65(1–2), 43–72 (2005)CrossRefGoogle Scholar
  26. 26.
    Mukherjee, D., Wu, Q.J., Wang, G.: A comparative experimental study of image feature detectors and descriptors. Mach. Vis. Appl. 26(4), 443–466 (2015)CrossRefGoogle Scholar
  27. 27.
    Rosin, P.L.: Measuring corner properties. Comput. Vis. Image Underst. 73(2), 291–307 (1999)CrossRefGoogle Scholar
  28. 28.
    Rosten, E., Drummond, T.: Machine learning for high-speed corner detection. In: Computer Vision–ECCV 2006, pp. 430–443. Springer (2006)Google Scholar
  29. 29.
    Rosten, E., Porter, R., Drummond, T.: Faster and better: a machine learning approach to corner detection. Pattern Anal. Mach. Intell. IEEE Trans. 32(1), 105–119 (2010)CrossRefGoogle Scholar
  30. 30.
    Rublee, E., Rabaud, V., Konolige, K., Bradski, G.: Orb: an efficient alternative to sift or surf. In: Computer Vision (ICCV), 2011 IEEE International Conference on IEEE, pp. 2564–2571 (2011)Google Scholar
  31. 31.
    Shao, A.J., Qian, W.X., Gu, G.H., Lu, K.L.: Real-time implementation of sift feature extraction algorithms in FPGA. In: International Conference on Optical Instruments and Technology 2015, pp. 96220V–96220V, International Society for Optics and Photonics (2015)Google Scholar
  32. 32.
    Shao, H., Svoboda, T., Van Gool, L.: Zubud-zurich buildings database for image based recognition. In: Computer Vision Lab, Swiss Federal Institute of Technology, Switzerland. Technical Report, vol. 260, p. 20 (2003)Google Scholar
  33. 33.
    Viswanath, P., Swami, P., Desappan, K., Jain, A., Pathayapurakkal, A.: Orb in 5 ms: an efficient SIMD friendly implementation. In: Computer Vision-ACCV 2014 Workshops, pp. 675–686. Springer (2014)Google Scholar
  34. 34.
    Weickert, J., Grewenig, S., Schroers, C., Bruhn, A.: Cyclic schemes for PDE-based image analysis. Int. J. Comput. Vis. 1–25 (2015)Google Scholar
  35. 35.
    Weberruss, J., Kleeman, L., Drummond, T.: Orb feature extraction and matching in hardware. In: Australasian Conference on Robotics and Automation (2015)Google Scholar
  36. 36.
    Wilson, C., Zicari, P., Craciun, S., Gauvin, P., Carlisle, E., George, A., Lam, H.: A power-efficient real-time architecture for surf feature extraction. In: ReConFigurable Computing and FPGAs (ReConFig), 2014 International Conference on IEEE, pp. 1–8 (2014)Google Scholar
  37. 37.
    Yang, X., Cheng, K.T.: LDB: an ultra-fast feature for scalable augmented reality on mobile devices. In: Mixed and Augmented Reality (ISMAR), 2012 IEEE International Symposium on IEEE, pp. 49–57 (2012)Google Scholar
  38. 38.
    Zhao, J., Zhu, S., Huang, X.: Real-time traffic sign detection using surf features on fpga. In: High Performance Extreme Computing Conference (HPEC), 2013 IEEE, pp. 1–6 (2013)Google Scholar

Copyright information

© Springer-Verlag GmbH Germany 2017

Authors and Affiliations

  1. 1.Computer Science DepartmentInstituto Nacional de Astrofísica, Óptica y ElectrónicaPueblaMexico

Personalised recommendations