Dorian Gálvez López
Software: DLoopDetector: Fast loop detector for sequences of monocular images

Download

DLoopDetector-1.0.2.tar.gz (2013-02-07, 104 KB)

DLoopDetector_demo-1.0.2.tar.gz (2013-02-07, 375 MB): DLoopDetector + SURF64 and BRIEF vocabularies + demo application

Documentation

Updates

Version 1.0.2: compatible version with OpenCV 2.4.3.

Version 1.0.1: minor problems when installing lib files solved.

Overview

DLoopDetector is an open source C++ library to detect loops in a sequence of images collected by a mobile robot. It implements the algorithm presented in [1] and [2], based on a bag-of-words database created from image local descriptors, and temporal and geometrical constraints. The current implementation includes versions to work with SURF64 and BRIEF descriptors. DLoopDetector is based on the DBoW2 library, so that it can work with any other type of descriptor with little effort.

DLoopDetector requires OpenCV and the Boost::dynamic_bitset class in order to use the BRIEF version.

DLoopDetector has been tested on several real datasets, yielding an execution time of ~9 ms to detect a loop a in a sequence with more than 19000 images (without considering the feature extraction). When BRIEF descriptors were used, the feature extraction and the loop detection were performed in 16 ms on average. Check [2] to obtain more information.

License

DLoopDetector is published under a CC-BY-NC-SA license. To obtain a commercial license, contact me.

Citing

If you use this software in an academic work, please cite:

@ARTICLE{GalvezTRO12,
    author={Galvez-Lopez, Dorian and Tardos, J. D.}, 
    journal={IEEE Transactions on Robotics},
    title={Bags of Binary Words for Fast Place Recognition in Image Sequences},
    year={2012},
    month={October},
    volume={28},
    number={5},
    pages={1188--1197},
    doi={10.1109/TRO.2012.2197158},
    ISSN={1552-3098}
}

Install and usage notes

DLoopDetector requires OpenCV and the Boost::dynamic_bitset class in order to use the BRIEF version. You can install Boost by typing:

    $ sudo apt-get install libboost-dev
    

To check how to use DLoopDetector, please download the demo package above. This demo tarball includes the DLoopDetector classes, bag-of-words vocabularies with 106 words to use with SURF64 or BRIEF features, a small collection of images of the Bicocca 2009-02-25b dataset of the Rawseeds FP-6 project and a demo application to find loops in these images.

To build the library and try the demo, just type:

    $ make
    $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./lib
    $ ./demo_brief
    
To install the library in your system (/usr/local by default), type:
    $ make install
    
You can also run demo_surf instead of demo_brief. When the demo is running, you should see a window with the current image, a window with the trajectory of the robot and the status of the detection process in the console:
DLoopDetector demo

The main functionality of the demo is written in the demoDetector.h class. Check it to see how to change the parameters of the loop detector.

Related publications

[1] Dorian Gálvez-López, Juan D. Tardós
Real-Time Loop Detection with Bags of Binary Words
International Conference on Intelligent Robots and Systems, September 2011
[Bibtex] [PDF]

@INPROCEEDINGS{GalvezIROS11,
    author={Galvez-Lopez, Dorian and Tardos, Juan D.},
    booktitle={Intelligent Robots and Systems (IROS), 2011 IEEE/RSJ International Conference on},
    title={Real-time loop detection with bags of binary words},
    year={2011},
    month={sept.},
    volume={},
    number={},
    pages={51 -58},
    keywords={},
    doi={10.1109/IROS.2011.6094885},
    ISSN={2153-0858}
}

[2] Dorian Gálvez-López and Juan D. Tardós
Bags of Binary Words for Fast Place Recognition in Image Sequences
IEEE Transactions on Robotics, Volume 28, Number 5, Pages 1188-1197, October 2012
[Bibtex] [PDF] [Video 1, 89MB] [Video 2, 236MB]

@ARTICLE{GalvezTRO12,
    author={Galvez-Lopez, Dorian and Tardos, J. D.}, 
    journal={IEEE Transactions on Robotics},
    title={Bags of Binary Words for Fast Place Recognition in Image Sequences},
    year={2012},
    month={October},
    volume={28},
    number={5},
    pages={1188--1197},
    doi={10.1109/TRO.2012.2197158},
    ISSN={1552-3098}
}

Dorian Gálvez López - Robotics, Perception and Real Time Group - Universidad de Zaragoza. Last update: 2013-02-07 19:55 CET