Home Publications Software Research Interests Personal |
FAB-MAP BinariesUpdate June 2012 - Open Source FAB-MAP now available.
The open source release of FAB-MAP is finally here. The old FAB-MAP 1.0 binaries remain available below. FAB-MAP is a system for appearance-based navigation. Relevant publications can be found here. The software incorporates the improvements described in our 2008 ICRA paper. Related datasets are also available. FabMap is available in binary form at present. The code can be run either stand-alone, or integrated into a C++ program by using the headers supplied.
If you would like to run the code on a different platform, please
email me. Visual VocabulariesA key component of FabMap is a visual vocabulary, which encapsulates which visual features are common in a particular type of environment. The download package includes a visual vocabulary specialized for outdoor urban environments. Typical training data is shown below.
A second vocabulary for indoor environments is also available. Typical training data:
We've found the system is quite tolerant with respect to vocabulary - for example, small indoor datasets work fine using the outdoor vocabulary, though with lower recall than if the indoor vocabulary is used. If your data doesn't look much like either of our training sets, the system will probably still work OK. The best way to find out is to try it! If you aren't getting good results, and your data looks very different from the above, please get in contact and we can see about training a custom vocabulary. Running FabMapTo run FabMap stand-alone, just point it at a directory of images. Step-by-step instructions are provided in the download package. FabMap outputs a matrix, the n-th entry of which corresponds to the pdf over previously seen places due to the n-th image. For the sample dataset provided, the resulting matrix is shown below. A loop closure can be seen as a bright off-diagonal line. Note that the main diagonal is special. Entry (i,i) in the matrix is the probability that image i came from a NEW place, not seen before. Therefore, the high probability entries on the main diagonal indicate the detection of new places.
For example, the final loop closure detected is shown
below. |
|||||||||||
|