Coco-LIC: Continuous-Time Tightly-Coupled LiDAR-Inertial-Camera Odometry using Non-Uniform B-spline
The following are three main characters of 🥥 Coco-LIC [Paper
] [Video
] :
- dynamically place control points to unlock the real power of the continuous-time trajectory
- tightly fuse LiDAR-Inertial-Camera data in a short sliding window based on a factor graph
- support multimodal multiple LiDARs and achieve great performance in degenerated cases
- ROS(tested with noetic)
- Eigen 3.3.7(comes with ROS)
- Ceres 2.0.0
- OpenCV 4(comes with ROS)
- PCL >= 1.13
- livox_ros_driver
- yaml-cpp
mkdir -p ~/catkin_coco/src
cd ~/catkin_coco/src
git clone https://github.com/Livox-SDK/livox_ros_driver.git
cd ~/catkin_coco && catkin_make
cd ~/catkin_coco/src
git clone https://github.com/APRIL-ZJU/Coco-LIC.git
cd ~/catkin_coco && catkin_make
cd ~/catkin_coco/src/Coco-LIC && mkdir data
-
Download R3LIVE dataset or FAST-LIVO dataset or NTU-VIRAL dataset or LVI-SAM dataset.
-
Modify
bag_path
in theconfig/ct_odometry_xxx.yaml
file. -
Run on R3LIVE dataset for example.
cd ~/catkin_coco && source devel/setup.bash roslaunch cocolic odometry.launch config_path:=config/ct_odometry_r3live.yaml
The estimated IMU trajectory will be saved in the folder
./src/Coco-LIC/data
.
1 control point per 0.1 seconds 🥊 adaptively placing control points per 0.1 seconds.
The different colors of the trajectory correspond to different densities of control points.
We additionally compare Coco-LIC with our previous work CLIC on NTU-VIRAL dataset, employing 1 LiDAR.
The best results are marked in bold. It can be seen that Coco-LIC stably outperforms CLIC.
If you find our work helpful, please consider citing 🌟:
@article{lang2023coco,
title={Coco-LIC: continuous-time tightly-coupled LiDAR-inertial-camera odometry using non-uniform B-spline},
author={Lang, Xiaolei and Chen, Chao and Tang, Kai and Ma, Yukai and Lv, Jiajun and Liu, Yong and Zuo, Xingxing},
journal={IEEE Robotics and Automation Letters},
year={2023},
publisher={IEEE}
}
@article{lv2023continuous,
title={Continuous-time fixed-lag smoothing for lidar-inertial-camera slam},
author={Lv, Jiajun and Lang, Xiaolei and Xu, Jinhong and Wang, Mengmeng and Liu, Yong and Zuo, Xingxing},
journal={IEEE/ASME Transactions on Mechatronics},
year={2023},
publisher={IEEE}
}
Thanks for Basalt, LIO-SAM, Open-VINS, VINS-Mono, R3LIVE and FAST-LIVO.
The code is released under the GNU General Public License v3 (GPL-3).