(Currently, only the necessary steps for using the code are observable. Full open access will be enabled after the review.)
Table of Contents
-
Livox_ros_driver
-
Create ROS workspace
mkdir -p ~/EIKF_LIO_VIO/src cd EIKF_LIO_VIO/src
-
Clone the repository and build
git clone git@github.com:LIAS-CUHKSZ/EIKF-VIO-LIO.git cd .. catkin_make
We have tested the following datasets, which config file can be directly used. We only support the dataset type: rosbag containing lidar, IMU and camera measurements.
Datasets | Dataset link | Launch file | data preprocess | evaluation method | evaluation script |
---|---|---|---|---|---|
URCA | https://advdataset2019.wixsite.com/urbanloco/california | URCA.launch | Rosbag with all sensors is provided, you can directly use. | evo | UR_evaluation.sh |
URHK | https://advdataset2019.wixsite.com/urbanloco/hong-kong | urbanloco.launch | Rosbag with all sensors is provided, you can directly use. | evo | UR_evaluation.sh |
NTU Viral | https://ntu-aris.github.io/ntu_viral_dataset/ | NTU_VIRAL.launch | Rosbag with all sensors is provided, you can directly use. | https://ntu-aris.github.io/ntu_viral_dataset/evaluation_tutorial.html | https://ntu-aris.github.io/ntu_viral_dataset/evaluation_tutorial.html |
NTU MCD | https://mcdviral.github.io/ | NTU_Viral2.launch | Need to merge rosbag with different topics. You can refer to : https://github.com/LIAS-CUHKSZ/DataProcessTools4SLAM/blob/main/merge_rosbag.py | evo | evaluate_ntu2.sh |
private dataset | Our hand-held device | ilive_mid.launch | Rosbag with all sensors is provided, you can directly use. | evo | lab_evaluation.sh |
- You can run the evaluation script directly. Evo is already included in the script.
- evo: https://michaelgrupp.github.io/evo/doc/performance.html
- Evaluation metric we used in evo: root-mean-square-error (rmse) of absolute pose error (ape) with translation part (evo_ape), with unit (m).
1.1 Download datasets and remember its path and the name of rosbag .
1.2 Modify the corresponding launch file.
<!-- what ros bag to play -->
<arg name="dataset" default="<Your BagName>" />
<arg name="bag_path" default="<Your BagPath>" />
<!-- where to save the recorded poses -->
<arg name="path_save" default="<Your SavePath>" />
1.3 Run the code
source devel/setup.bash
roslaunch ilive <Your launch file>
If you want to get evaluation result, please run the corresponding evaluation script.
We thank the authors of the following repositories for their open-source code:
OpenVINS: https://docs.openvins.com/
Fast-LIO: https://github.com/hku-mars/FAST_LIO
R3live: https://github.com/hku-mars/r3live
@misc{li2024efficient,
title={Efficient Invariant Kalman Filter for Inertial-based Odometry with Large-sample Environmental Measurements},
author={Xinghan Li and Haoying Li and Guangyang Zeng and Qingcheng Zeng and Xiaoqiang Ren and Chao Yang and Junfeng Wu},
year={2024},
eprint={2402.05003},
archivePrefix={arXiv},
primaryClass={cs.RO}
}