Taeyoung96 / 3d_bbs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

3d_bbs

Fast and accurate 3D global localization using branch-and-bound scan matching.
Please refer to our paper.

overview

The latest implementation demonstrates faster processing times than those published in the paper.
Specifically, when tested in a real environment with the following hardware configuration (Intel Core i7-10700K 3.8GHz, 32GB RAM, and NVIDIA GeForce RTX2060), the processing times are as follows:

  • Paper: 878 ms on average
  • Latest: 159 ms on average

Dependencies

  • bbs3d (Lower versions are not tested)
    • Eigen3
    • CMake version 3.15 or higher
    • GPU version: CUDA version 12.0 or higher
  • test
    • (All bbs3d dependencies)
    • PCL

Support Docker 🐳

If nvidia driver is 525.60.11 or higher, try docker!
For more information, you can check docker_start.md

3d_bbs core source code

Build and Install

  • GPU (Please ignore the large number of warnings)
git clone https://github.com/KOKIAOKI/3d_bbs.git
cd 3d_bbs
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j8
sudo make install

Test code

1. Build

  • GPU
cd 3d_bbs/test/
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j8

2. Download

Please download test data.

3. Config file setting

Config file format is 3d-bbs/test/config/test.yaml
Please edit the config file as below:

  1. Copy the target and source paths in the downloaded test_data to target_clouds and source_clouds items.
  2. Create the output folder where you want to save the output pcd and copy the path to output_folder in test.yaml.
  3. Test data work with default parameter values.

Alt text

4. Run

  • GPU
cd 3d_bbs/test/build/
./gpu_test <config_file_path>

About

License:MIT License


Languages

Language:Cuda 59.4%Language:C++ 30.3%Language:CMake 4.3%Language:Dockerfile 3.0%Language:Shell 3.0%