Skip to content
/ SOLiD Public

(RA-L 2024) This repository is the official code for Narrowing your FOV with SOLiD: Spatially Organized and Lightweight Global Descriptor for FOV-constrained LiDAR Place Recognition.

License

Notifications You must be signed in to change notification settings

sparolab/SOLiD

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SOLiD

Project Paper Arxiv alphaXiv YouTube

[IEEE RA-L] This repository is the official code for Narrowing your FOV with SOLiD: Spatially Organized and Lightweight Global Descriptor for FOV-constrained LiDAR Place Recognition.

Hogyun Kim, Jiwon Choi, Taehu Sim, Giseop Kim, Younggun Cho

Spatial AI and Robotics Lab (SPARO)

animated

NEWS

TODO

Note

  • SOLiD can be integrated with various LiDAR odometry including solid-state LiDAR and Situations (i.e. intra-session, inter-session, and multi-robot).
    • Intra-session SLAM
      • Integrated with A-LOAM: SOLiD-A-LOAM
      • Integrated with a basic ICP odometry: SOLiD-PyICP-SLAM
        • This implementation is fully Python-based so slow but for educational purposes.
    • Inter-session SLAM
      • (TBD) Integrated with LT-mapper
    • Multi-Robot SLAM

What are the problems with traditional LiDAR Place Recognition?

  • The traditional method uses a bird eye view and overlooks vertical information.
  • Also, because it focuses on performance, it is difficult to apply in real-time on an onboard computer.

    animated

What is the SOLiD?

  • SOLiD is a lightweight and fast LiDAR global descriptor for FOV constraints situations that are limited through fusion with other sensors or blocked by robot/sensor operators including mechanical components or solid-state LiDAR (e.g. Livox).

    animated

How to use the SOLiD?

  • Python version

    • If you use the other LiDAR sensor, you modify the parameters in parser of test.py and lidar file structure in utils/point_module.py.
      $ git clone https://github.com/sparolab/SOLiD.git
      $ cd python
      $ python3 test.py
      
  • Cpp version

    • If you use the other LiDAR sensor, you modify the parameters in include/solid_module.h.
        $ git clone https://github.com/sparolab/SOLiD.git
        $ cd cpp
        $ mkdir build
        $ cd build
        $ cmake ..
        $ make
        $ ./test_solid
      

Utils

  • If you want to clip the points, you can use python/bin/point_clipper.py
      $ git clone https://github.com/sparolab/SOLiD.git
      $ cd python/bin/
      $ python3 point_clipper.py
    

Supplementary

Main Contribution

QnA

  • If you have a question, you utilize a alphaXiv and comment here.

Citation

  @article{kim2024narrowing,
    title={Narrowing your FOV with SOLiD: Spatially Organized and Lightweight Global Descriptor for FOV-constrained LiDAR Place Recognition},
    author={Kim, Hogyun and Choi, Jiwon and Sim, Taehu and Kim, Giseop and Cho, Younggun},
    journal={IEEE Robotics and Automation Letters},
    year={2024},
    publisher={IEEE}
  }

Contact

License

  • For academic usage, the code is released under the BSD 3.0 license. For any commercial purpose, please contact the authors.

About

(RA-L 2024) This repository is the official code for Narrowing your FOV with SOLiD: Spatially Organized and Lightweight Global Descriptor for FOV-constrained LiDAR Place Recognition.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published