This repo is a simple location system based on a priori map, which is based on the lio-sam framework. The current version only supports small scene maps, large scene maps may have some problems.
------------------- Update Date: 2022-11-20 -------------------
- First verison
------------------- Update Date: 2022-12-13 -------------------
- Re-derivation the LM optimization, don't need coordinate transformation.
------------------- Update Date: 2023-03-18 -------------------
- Fixed a bug and was more robust for large scene maps.
------------------- Update Date: 2024-04-30 -------------------
- Add liorf-localization ROS2 version (Foxy、Galactic).
Video: 基于LIO-SAM框架SLAM算法开发(三):定位之小场景定位算法
- You can get a priori map by running liorf or lviorf or liorf-ros2 or any open source SLAM algorithm(e.g. A-LOAM or LOAM or LIO-SAM);
- Make sure the priori map name is "GlobalMap.pcd";
- Change the "savePCDDirectory" parameter in "localization.yaml" to your priori map path.
- gtsam(Georgia Tech Smoothing and Mapping library)
sudo add-apt-repository ppa:borglab/gtsam-release-4.0 sudo apt install libgtsam-dev libgtsam-unstable-dev
- Use the following commands to download and compile the package. (The available ROS2 implementation see branch liorf_localization-ros2)
mkdir -p ~/liorf_localization/src && cd ~/liorf_localization/src
git clone https://github.com/YJZLuckyBoy/liorf_localization.git
cd ../
catkin_make
- Run the launch file
roslaunch liorf_localization run_localization.launch
-
Use "2D Pose Estimate" on rviz to set the initial pose
-
Play bag files
rosbag play your_localization.bag
- Urban
- Building(Avia)
- Underground Parking(Avia)
Thanks for LIO-SAM, MulRan and UrbanNavDataset.