Python bindings and pre-compiled binaries for the Hamming Binary Search Tree (HBST) for visual place recognition with binary descriptors. The HBST algorithm and paper is not my work, if you use this library please cite the original authors:
@article{2018-schlegel-hbst,
author = {D. Schlegel and G. Grisetti},
journal = {IEEE Robotics and Automation Letters},
title = {{HBST: A Hamming Distance Embedding Binary Search Tree for Feature-Based Visual Place Recognition}},
year = {2018},
volume = {3},
number = {4},
pages = {3741-3748}
}
pip install hbst-python
Note that currently only Linux x86_64 is supported.
To get started check out the example with OpenCV descriptors and HBST. Note that this matcher will only produce useful results with binary descriptors (e.g. ORB, BRISK or AKAZE). It is not suitable for SIFT, SURF and the likes.
Development use cases are dockerized. The commands below will spawn the respective docker container mount the repo inside and get the job done.
Syntax:
./build.sh [platform] [python-version]
./test.sh [platform] [python-version]
Example:
./build.sh x86_64 3.8
./test.sh x86_64 3.8