Dynamic-LIO is a LiDAR-inertial odometry for dynamic driving scenarios. The front-end odometry is designed based on the framework of SR-LIO, and the back-end loop closure utilizes SC-A-LOAM.
LiDAR-Inertial Odometry in Dynamic Driving Scenarios using Label Consistency Detection
Authors: Zikang Yuan, Xiaoxiang Wang, Jingying Wu, Junda Cheng and Xin Yang
SR-LIO: LiDAR-Inertial Odometry with Sweep Reconstruction
Authors: Zikang Yuan, Fengtian Lang, Tianle Xu and Xin Yang
GCC >= 7.5.0
Cmake >= 3.16.0
Eigen3 >= 3.3.4
OpenCV >= 3.3
PCL == 1.8 for Ubuntu 18.04, and == 1.10 for Ubuntu 20.04
GTSAM == 4.0.3 for Ubuntu 20.04
OS | GCC | Cmake | Eigen3 | OpenCV | PCL | GTSAM |
---|---|---|---|---|---|---|
Ubuntu 20.04 | 9.4.0 | 3.16.3 | 3.3.7 | 4.2.0 | 1.10.0 | 4.0.3 |
mkdir -p ~/Dynamic-LIO/src
cd Dynamic-LIO/src
git clone https://github.com/ZikangYuan/dynamic_lio.git
cd ..
catkin_make
Noted:
A. The warning message "Failed to find match for field 'time'." doesn't matter. It can be ignored.
B. Please create a folder named "output" in "sr_lio" folder before running. When Dynamic-LIO is running, the estimated pose of odometry is recorded in real time in the pose.txt located in the output folder, and the estimated pose with loop closure is recorded in the final_pose.txt located in the output folder after finishing a sequence.
1. Run on ULHK-CA
Please go to the workspace of Dynamic-LIO and open two terminals, type the following command in terminal 1:
cd Dynamic-LIO
source devel/setup.bash
roslaunch sr_lio lio_ulhk_CA.launch
and type the following command in terminal 2:
cd Dynamic-LIO
source devel/setup.bash
roslaunch aloam_velodyne loop_closure.launch
Then open the terminal in the path of the bag file, and type:
rosbag play SEQUENCE_NAME.bag --clock -d 1.0
2. Run on Urban-Nav
Please go to the workspace of Dynamic-LIO and open two terminals, type the following command in terminal 1:
cd Dynamic-LIO
source devel/setup.bash
roslaunch sr_lio lio_urban_nav.launch
and type the following command in terminal 2:
cd Dynamic-LIO
source devel/setup.bash
roslaunch aloam_velodyne loop_closure.launch
Then open the terminal in the path of the bag file, and type:
rosbag play SEQUENCE_NAME.bag --clock -d 1.0
If you use our work in your research project, please consider citing:
@article{yuan2024lidar,
title={LiDAR-Inertial Odometry in Dynamic Driving Scenarios using Label Consistency Detection},
author={Yuan, Zikang and Wang, Xiaoxiang and Wu, jingying and Cheng, junda and Yang, Xin},
journal={arXiv preprint arXiv:2407.03590},
year={2024}
}