一、LVI-SAM介绍
LVI-SAM是Tixiao Shan的最新力作,Tixiao Shan是Lego-loam和Lio-sam的作者,LVI-SAM是Tixiao Shan最新开源的基于视觉-激光-惯导里程计SLAM框架,结合了Lio-sam和Vins-Mono的视觉-激光-惯导融合的SLAM框架。
文章主要工作:
- 实现了一个激光-视觉-惯性的紧耦合系统(单目相机和16线激光雷达),通过因子图实现多传感器的融合,全局优化和回环检测;
- 通过故障检测机制,避免了单一子系统故障,导致系统不能使用的情况,提高了系统的鲁棒性;
- 利用不同的数据集进行了验证。
源码开源地址:LVI-SAM
二、安装依赖
电脑配置:
Ubuntu 18.04 + ROS Melodic + GTSAM 4.1.0 + CERES 1.14.0
在编译该功能包之前,我们需要先安装相关依赖功能。
2.1 安装ROS
根据自己的Ubuntu版本安装对应的ROS版本,18.04对应ROS melodic。具体安装过程不多做介绍,可参考ROS wiki官网教程.或者检索其他文章。
2.2 安装GTSAM
git clone https://github.com/borglab/gtsam.git
mkdir build && cd build
cmake -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF .. //直接cmake可能会报错
sudo make install -j4
2.3 安装Ceres
git clone https://github.com/ceres-solver/ceres-solver.git
mkdir build && cd build
cmake ..
sudo make install -j4
如果报错,可能是因为缺少相关依赖:
sudo apt-get install -y libgoogle-glog-dev
sudo apt-get install -y libatlas-base-dev
安装完之后重复Ceres的安装过程。
三、创建工作空间并下载源码编译
源码开源地址:LVI-SAM
mkdir ~/catkin_ws/src
cd ~/catkin_ws/src
git clone https://github.com/TixiaoShan/LVI-SAM.git
解压到当前文件夹
cd ..
catkin_make -j4
四、运行数据集
4.1 下载数据集
示例数据Google网盘链接:https://drive.google.com/drive/folders/1q2NZnsgNmezFemoxhHnrDnp1JV_bqrgV?usp=sharing
为了方便下载,已转移其中两个数据集至百度网盘,有需要可以使用下方链接获取:
链接: https://pan.baidu.com/s/1yD1d0f0LmRrVrJY2c78X0Q 提取码: v9ds
4.2 启动程序运行数据集:
//启动LVI-SAM建图节点
roslaunch lvi_sam run.launch//启动LVI-SAM建图节点
rosbag play handheld.bag
如果出现报错:[run.launch] is neither a launch file in package [lvi_sam] nor is [lvi_sam] a launch file name.
运行如下代码,再次重复启动LVI-SAM建图节点和启动LVI-SAM建图节点的操作。
source devel/setup.bash
如果运行rviz界面是这样的:
并且终端出现报错:
[mapOptmization-7] process has died [pid 14493, exit code 127, cmd
/home/zard/catkin_ws/devel/lib/lego_loam/mapOptmization __name:=mapOptmization __log:
=/home/zard/.ros/log/922c7a94-0354-11ed-951b-8d0be314719f/mapOptmization-7.log].
lvi_sam_imuPreintegration进程被杀死,lvi_sam_mapOptmization进程被杀死。
原因是未安装 libmetis 库,通过安装libparmetis-dev修复它重新运行即可:
sudo apt-get install libparmetis-dev
运行成功截图:
查看handheld.bag
的信息:
rosbag info handheld.bag文章来源:https://www.toymoban.com/news/detail-447424.html
文章来源地址https://www.toymoban.com/news/detail-447424.html
到了这里,关于LVI-SAM代码复现、调试与运行的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!