Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/osanj/hbst-python
Python Bindings for the Hamming Binary Search Tree
https://github.com/osanj/hbst-python
binary-search-tree keypoint-matching
Last synced: about 2 months ago
JSON representation
Python Bindings for the Hamming Binary Search Tree
- Host: GitHub
- URL: https://github.com/osanj/hbst-python
- Owner: osanj
- License: other
- Created: 2021-12-09T18:20:17.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-01-09T23:24:49.000Z (almost 3 years ago)
- Last Synced: 2024-10-12T00:34:43.522Z (2 months ago)
- Topics: binary-search-tree, keypoint-matching
- Language: C++
- Homepage:
- Size: 1.5 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# hbst-python
Python bindings and pre-compiled binaries for the [Hamming Binary Search Tree (HBST)](https://gitlab.com/srrg-software/srrg_hbst)
for visual place recognition with binary descriptors. The HBST algorithm and [paper](https://arxiv.org/abs/1802.09261)
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}
}
```## Installation and Usage
```bash
pip install hbst-python
```Note that currently only Linux x86_64 is supported.
To get started check out the [example](example/match.py) 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
Development use cases are dockerized. The commands below will spawn the respective
docker container mount the repo inside and get the job done.Syntax:
```bash
./build.sh [platform] [python-version]
./test.sh [platform] [python-version]
```Example:
```bash
./build.sh x86_64 3.8
./test.sh x86_64 3.8
```