TixiaoShan/LVI-SAM
TixiaoShan/LVI-SAM has 1,895 GitHub stars and 517 forks. GitHot measured +1 stars in 24 hours and +1 in 7 days. Last checked 2026-11-09 23:17 UTC. Last push 2022-12-17.
LVI-SAM: Tightly-coupled Lidar-Visual-Inertial Odometry via Smoothing and Mapping
Measured star growth
- in 24h
- +1
- in 7 days
- +1
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalLVI-SAM
This repository contains code for a lidar-visual-inertial odometry and mapping system, which combines the advantages of LIO-SAM and Vins-Mono at a system level.
Dependency
- ROS (Tested with kinetic and melodic)
- 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 - Ceres (C++ library for modeling and solving large, complicated optimization problems)
sudo apt-get install -y libgoogle-glog-dev sudo apt-get install -y libatlas-base-dev wget -O ~/Downloads/ceres.zip https://github.com/ceres-solver/ceres-solver/archive/1.14.0.zip cd ~/Downloads/ && unzip ceres.zip -d ~/Downloads/ cd ~/Downloads/ceres-solver-1.14.0 mkdir ceres-bin && cd ceres-bin cmake .. sudo make install -j4
Getting start with Docker
When you use Docker, you could solve the dependency at once.
For more information, you can check docker_start.md.
Compile
You can use the following commands to download and compile the package.
cd ~/catkin_ws/src
git clone https://github.com/TixiaoShan/LVI-SAM.git
cd ..
catkin_make
Datasets
The datasets used in the paper can be downloaded from Google Drive. The data-gathering sensor suite includes: Velodyne VLP-16 lidar, FLIR BFS-U3-04S2M-CS camera, MicroStrain 3DM-GX5-25 IMU, and Reach RS+ GPS.
https://drive.google.com/drive/folders/1q2NZnsgNmezFemoxhHnrDnp1JV_bqrgV?usp=sharing
Note that the images in the provided bag files are in compressed format. So a decompression command is added at the last line of launch/module_sam.launch. If your own bag records the raw image data, please comment this line out.
New: more datasets are available at LVI-SAM-Easyused.
Run the package
- Configure parameters:
Configure sensor parameters in the .yaml files in the ```config``` folder.
- Run the launch file:
roslaunch lvi_sam run.launch
- Play existing bag files:
rosbag play handheld.bag
Related Packages
TODO
- Update graph optimization using all three factors in imuPreintegration.cpp, simplify mapOptimization.cpp, increase system stability
Paper
Thank you for citing our paper if you use any of this code or datasets.
@inproceedings{lvisam2021shan,
title={LVI-SAM: Tightly-coupled Lidar-Visual-Inertial Odometry via Smoothing and Mapping},
author={Shan, Tixiao and Englot, Brendan and Ratti, Carlo and Rus Daniela},
booktitle={IEEE International Conference on Robotics and Automation (ICRA)},
pages={5692-5698},
year={2021},
organization={IEEE}
}
Acknowledgement
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
561,398 starspublic-apis/public-apis
A collective list of free APIs
497,679 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
447,495 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,261 stars