A High-Performance FPGA-Based Image Feature Detector and Matcher Based on the FAST and BRIEF Algorithms

Image feature detection and matching is a fundamental operation in image processing. As the detected and matched features are used as input data for high-level computer vision algorithms, the matching accuracy directly influences the quality of the results of the whole computer vision system. Moreover, as the algorithms are frequently used as a part of a real-time processing pipeline, the speed at which the input image data are handled is also a concern. The paper proposes an embedded system architecture for feature detection and matching. The architecture implements the FAST feature detector and the BRIEF feature descriptor and is capable of establishing key point correspondences in the input image data stream coming from either an external sensor or memory at a speed of hundreds of frames per second, so that it can cope with most demanding applications. Moreover, the proposed design is highly flexible and configurable, and facilitates the trade-off between the processing speed and programmable logic resource utilization. All the designed hardware blocks are designed to use standard, widely adopted hardware interfaces based on the AMBA AXI4 interface protocol and are connected using an underlying direct memory access (DMA) architecture, enabling bottleneck-free inter-component data transfers.

[1]  Hans P. Moravec Visual Mapping by a Robot Rover , 1979, IJCAI.

[2]  Christopher G. Harris,et al.  A Combined Corner and Edge Detector , 1988, Alvey Vision Conference.

[3]  Carlo Tomasi,et al.  Good features to track , 1994, 1994 Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.

[4]  Pietro Perona,et al.  Real-time 2-D feature detection on a reconfigurable computer , 1998, Proceedings. 1998 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (Cat. No.98CB36231).

[5]  César Torres-Huitzil,et al.  An FPGA architecture for high speed edge and corner detection , 2000, Proceedings Fifth IEEE International Workshop on Computer Architectures for Machine Perception.

[6]  Rainer Lienhart,et al.  An extended set of Haar-like features for rapid object detection , 2002, Proceedings. International Conference on Image Processing.

[7]  Cordelia Schmid,et al.  Scale & Affine Invariant Interest Point Detectors , 2004, International Journal of Computer Vision.

[8]  J. Ross Quinlan,et al.  Induction of Decision Trees , 1986, Machine Learning.

[9]  Tom Drummond,et al.  Fusing points and lines for high performance tracking , 2005, Tenth IEEE International Conference on Computer Vision (ICCV'05) Volume 1.

[10]  Steven M. Seitz,et al.  Photo tourism: exploring photo collections in 3D , 2006, ACM Trans. Graph..

[11]  Matthew A. Brown,et al.  Automatic Panoramic Image Stitching using Invariant Features , 2007, International Journal of Computer Vision.

[12]  Tom Drummond,et al.  Machine Learning for High-Speed Corner Detection , 2006, ECCV.

[13]  Kurt Konolige,et al.  Large-Scale Visual Odometry for Rough Terrain , 2007, ISRR.

[14]  Olivier Stasse,et al.  MonoSLAM: Real-Time Single Camera SLAM , 2007, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[15]  Kurt Konolige,et al.  CenSurE: Center Surround Extremas for Realtime Feature Detection and Matching , 2008, ECCV.

[16]  R. Njuguna A Survey of FPGA Benchmarks , 2008 .

[17]  Fabien Moutarde,et al.  Person re-identification in multi-camera system by signature based on interest point descriptors collected on short video sequences , 2008, 2008 Second ACM/IEEE International Conference on Distributed Smart Cameras.

[18]  Adam Schmidt,et al.  High-Speed Image Feature Detection Using FPGA Implementation of Fast Algorithm , 2008, VISAPP.

[19]  Luc Van Gool,et al.  Speeded-Up Robust Features (SURF) , 2008, Comput. Vis. Image Underst..

[20]  George A. Constantinides,et al.  A Parallel Hardware Architecture for Scale and Rotation Invariant Feature Detection , 2008, IEEE Transactions on Circuits and Systems for Video Technology.

[21]  Huiyu Zhou,et al.  Object tracking using SIFT features and mean shift , 2009, Comput. Vis. Image Underst..

[22]  Libor Preucil,et al.  FPGA based Speeded Up Robust Features , 2009, 2009 IEEE International Conference on Technologies for Practical Robot Applications.

[23]  Alexander G. Hauptmann,et al.  MoSIFT: Recognizing Human Actions in Surveillance Videos , 2009 .

[24]  Gundolf Kiefer,et al.  Flex-SURF: A Flexible Architecture for FPGA-Based Robust Feature Extraction for Optical Tracking Systems , 2010, 2010 International Conference on Reconfigurable Computing and FPGAs.

[25]  Vincent Lepetit,et al.  BRIEF: Binary Robust Independent Elementary Features , 2010, ECCV.

[26]  Darius Burschka,et al.  Adaptive and Generic Corner Detection Based on the Accelerated Segment Test , 2010, ECCV.

[27]  Yuichiro Shibata,et al.  Pattern Compression of FAST Corner Detection for Efficient Hardware Implementation , 2011, 2011 21st International Conference on Field Programmable Logic and Applications.

[28]  Roland Siegwart,et al.  BRISK: Binary Robust invariant scalable keypoints , 2011, 2011 International Conference on Computer Vision.

[29]  Gary R. Bradski,et al.  ORB: An efficient alternative to SIFT or SURF , 2011, 2011 International Conference on Computer Vision.

[30]  Gundolf Kiefer,et al.  Object Recognition on a Chip: A Complete SURF-Based System on a Single FPGA , 2011, 2011 International Conference on Reconfigurable Computing and FPGAs.

[31]  Matthijs C. Dorst Distinctive Image Features from Scale-Invariant Keypoints , 2011 .

[32]  Krystian Mikolajczyk,et al.  Evaluation of local detectors and descriptors for fast feature matching , 2012, Proceedings of the 21st International Conference on Pattern Recognition (ICPR2012).

[33]  Wolfram Burgard,et al.  Simultaneous Parameter Calibration, Localization, and Mapping , 2012, Adv. Robotics.

[34]  M. Westoby,et al.  ‘Structure-from-Motion’ photogrammetry: A low-cost, effective tool for geoscience applications , 2012 .

[35]  F. Fraundorfer,et al.  Visual Odometry : Part II: Matching, Robustness, Optimization, and Applications , 2012, IEEE Robotics & Automation Magazine.

[36]  Tsutomu Maruyama,et al.  Real-time corner and polygon detection system on FPGA , 2012, 22nd International Conference on Field Programmable Logic and Applications (FPL).

[37]  David López Vilariño,et al.  Towards the Optimal Hardware Architecture for Computer Vision , 2012 .

[38]  Yung-Chang Chen,et al.  High-Performance SIFT Hardware Accelerator for Real-Time Image Feature Extraction , 2012, IEEE Transactions on Circuits and Systems for Video Technology.

[39]  Vincent Lepetit,et al.  BRIEF: Computing a Local Binary Descriptor Very Fast , 2012, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[40]  Michael S. Lew,et al.  Evaluation of salient point methods , 2013, ACM Multimedia.

[41]  Dah-Jye Lee,et al.  The Nature-Inspired BASIS Feature Descriptor for UAV Imagery and Its Hardware Implementation , 2013, IEEE Transactions on Circuits and Systems for Video Technology.

[42]  Hoon Heo,et al.  FPGA based Implementation of FAST and BRIEF algorithm for Object Recognition , 2013 .

[43]  Marek Kraft,et al.  Comparative assessment of point feature detectors in the context of robot navigation , 2013 .

[44]  Zhiguo Cao,et al.  An Embedded System-on-Chip Architecture for Real-time Visual Detection and Matching , 2014, IEEE Transactions on Circuits and Systems for Video Technology.

[45]  Roman P. Pflugfelder,et al.  Consensus-based matching and tracking of keypoints for object tracking , 2014, IEEE Winter Conference on Applications of Computer Vision.

[46]  Felix Jesús Villanueva,et al.  Distributed FPGA-based architecture to support indoor localisation and orientation services , 2014, J. Netw. Comput. Appl..

[47]  Stijn De Beugher,et al.  The Battle of the Giants - A Case Study of GPU vs FPGA Optimisation for Real-time Image Processing , 2014, PECCS.