update readme

This commit is contained in:
HViktorTsoi
2021-08-08 23:32:04 +08:00
parent aa31e7c405
commit 0fed211858

View File

@@ -2,15 +2,15 @@
A simple localization framework that can re-localize in built maps based on [FAST-LIO](https://github.com/hku-mars/FAST_LIO). A simple localization framework that can re-localize in built maps based on [FAST-LIO](https://github.com/hku-mars/FAST_LIO).
## Features ## 1. Features
- Realtime 3D global localization in a pre-built point cloud map. - Realtime 3D global localization in a pre-built point cloud map.
By fusing low-frequency global localization (about 0.5~0.2Hz), and high-frequency odometry from FAST-LIO, the entire system is computationally efficient. By fusing low-frequency global localization (about 0.5~0.2Hz), and high-frequency odometry from FAST-LIO, the entire system is computationally efficient.
<div align="center"><img src="doc/demo.GIF" width=100% /></div> <div align="center"><img src="doc/demo.GIF" width=90% /></div>
- Eliminate the accumulative error of odometry. - Eliminate the accumulative error of the odometry.
<div align="center"><img src="doc/demo_accu.GIF" width=100% /></div> <div align="center"><img src="doc/demo_accu.GIF" width=90% /></div>
- The initial localization can be provided either by rough manual estimation from RVIZ, or pose from another sensor/algorithm. - The initial localization can be provided either by rough manual estimation from RVIZ, or pose from another sensor/algorithm.
@@ -22,14 +22,14 @@ A simple localization framework that can re-localize in built maps based on [FAS
</div> </div>
## Prerequisites ## 2. Prerequisites
### 1.1 Dependencies for FAST-LIO ### 2.1 Dependencies for FAST-LIO
Technically, if you have built and run FAST-LIO before, you may skip this section. Technically, if you have built and run FAST-LIO before, you may skip section 2.1.
This part of dependency is consistent with FAST-LIO, please refer to the documentation https://github.com/hku-mars/FAST_LIO#1-prerequisites This part of dependency is consistent with FAST-LIO, please refer to the documentation https://github.com/hku-mars/FAST_LIO#1-prerequisites
### 1.2 Dependencies for localization module ### 2.2 Dependencies for localization module
- python 2.7 - python 2.7
@@ -40,12 +40,12 @@ This part of dependency is consistent with FAST-LIO, please refer to the documen
Notice that, if using **Ubuntu 18.04** with native **PCL 1.8**, there may be issue after installing **python-pcl** through pip, Notice that, if using **Ubuntu 18.04** with native **PCL 1.8**, there may be issue after installing **python-pcl** through pip,
please refer to https://github.com/barrygxwan/Python-PCL-Ubuntu18.04, download the **.whl** file and then install. please refer to https://github.com/barrygxwan/Python-PCL-Ubuntu18.04, download the **.whl** file and then install.
## 2. Build ## 3. Build
Clone the repository and catkin_make: Clone the repository and catkin_make:
``` ```
cd ~/$A_ROS_DIR$/src cd ~/$A_ROS_DIR$/src
git clone https://github.com/hviktortsoi/FAST_LIO_LOCALIZATION.git git clone https://github.com/HViktorTsoi/FAST_LIO_LOCALIZATION.git
cd FAST_LIO_LOCALIZATION cd FAST_LIO_LOCALIZATION
git submodule update --init git submodule update --init
cd ../.. cd ../..
@@ -57,8 +57,8 @@ Clone the repository and catkin_make:
```export PCL_ROOT={CUSTOM_PCL_PATH}``` ```export PCL_ROOT={CUSTOM_PCL_PATH}```
## 3. Run Localization ## 4. Run Localization
### Sample Dataset ### 4.1 Sample Dataset
Demo rosbag in a large underground garage: Demo rosbag in a large underground garage:
[Baidu Pan (Code: ne8d)](https://pan.baidu.com/s/1ceBiIAUqHa1vY3QjWpxwNA); [Baidu Pan (Code: ne8d)](https://pan.baidu.com/s/1ceBiIAUqHa1vY3QjWpxwNA);
@@ -67,9 +67,9 @@ Corresponding map: [Baidu Pan (Code: kw6f)](https://pan.baidu.com/s/1Yw4vY3kEK8x
The map can be built using LIO-SAM or FAST-LIO-SLAM. The map can be built using LIO-SAM or FAST-LIO-SLAM.
### Run ### 4.2 Run
1. First, please make sure you're using **Python 2.7** environment; 1. First, please make sure you're using a **Python 2.7** environment;
2. Run localization, here we take Livox AVIA as an example: 2. Run localization, here we take Livox AVIA as an example:
@@ -107,9 +107,14 @@ Note that, during the initialization stage, it's better to keep the robot still.
## Related Works ## Related Works
1. [FAST-LIO](https://github.com/hku-mars/FAST_LIO): A computationally efficient and robust LiDAR-inertial odometry (LIO) package 1. [FAST-LIO](https://github.com/hku-mars/FAST_LIO): A computationally efficient and robust LiDAR-inertial odometry (LIO) package
2. [FAST-LIO-SLAM](https://github.com/gisbi-kim/FAST_LIO_SLAM): The integration of FAST-LIO with [Scan-Context](https://github.com/irapkaist/scancontext) **loop closure** module. 2. [ikd-Tree](https://github.com/hku-mars/ikd-Tree): A state-of-art dynamic KD-Tree for 3D kNN search.
3. [LIO-SAM_based_relocalization](https://github.com/Gaochao-hit/LIO-SAM_based_relocalization): A simple system that can relocalize a robot on a built map based on LIO-SAM. 3. [FAST-LIO-SLAM](https://github.com/gisbi-kim/FAST_LIO_SLAM): The integration of FAST-LIO with [Scan-Context](https://github.com/irapkaist/scancontext) **loop closure** module.
4. [LIO-SAM_based_relocalization](https://github.com/Gaochao-hit/LIO-SAM_based_relocalization): A simple system that can relocalize a robot on a built map based on LIO-SAM.
## Acknowledgments ## Acknowledgments
Thanks for the authors of [FAST-LIO](https://github.com/hku-mars/FAST_LIO) and [LIO-SAM_based_relocalization](https://github.com/Gaochao-hit/LIO-SAM_based_relocalization). Thanks for the authors of [FAST-LIO](https://github.com/hku-mars/FAST_LIO) and [LIO-SAM_based_relocalization](https://github.com/Gaochao-hit/LIO-SAM_based_relocalization).
## TODO
1. Go over the timestamp issue of the published odometry and tf;
2. Updating...