LVI-SAM代码复现、调试与运行

2023-05-16

一、LVI-SAM介绍

        LVI-SAM是Tixiao Shan的最新力作,Tixiao Shan是Lego-loam和Lio-sam的作者,LVI-SAM是Tixiao Shan最新开源的基于视觉-激光-惯导里程计SLAM框架,结合了Lio-sam和Vins-Mono的视觉-激光-惯导融合的SLAM框架。

LVI-SAM系统框架

        文章主要工作:

  • 实现了一个激光-视觉-惯性的紧耦合系统(单目相机和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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LVI-SAM代码复现、调试与运行 的相关文章

  • form-type:submit和reset用法

    form type submit和reset用法 span class token operator lt span form bindsubmit span class token operator 61 span span class
  • checkbox背景颜色设置

    checkbox背景颜色设置 js文件 data span class token punctuation span languages span class token punctuation span span class token
  • MongoDB安装方案

    安装MongoDB 黑马头条项目 43 人力资源后台项目的接口服务均采用了 MongoDB 43 KOA2 技术栈 xff0c 所以在使用本地服务之前 xff0c 我们需要首先安装MongoDB xff0c 这也是该环节中出问题最多的一项
  • 小程序生成海报携带参数-云函数生成二维码

    1 逻辑代码 span class token keyword async span span class token function qcFn span span class token punctuation span span cl
  • 小程序动画

    小程序动画 点击事件 span class token comment lt 三大特色 gt span span class token tag span class token tag span class token punctuati
  • 小程序云开发--内容安全审查API云调用

    云调用 云调用是小程序 云开发提供的在云函数中调用微信开放接口的能力 xff0c 需要在云函数中通过 wx server sdk 使用 接口方法 openapi span class token punctuation span secur
  • 如何通过异或运算快速简单的实现两个数的值的交换

    实现代码如下图所示 xff1a public class class01 public static void swap int a int b a 61 a b b 61 a b a 61 a b System out println a
  • Cisco ISE AAA认证

    ISE 介绍 思科身份服务引擎 ISE 是一种身份验证安全服务 可以在简单而灵活的界面中显示用户和设备 查看并通过网络平台共享详细信息 使其了解用户 设备和网络的具体情况 当然Cisco还有类型的产品 xff0c 比如NAC ACS 那么三
  • PNET模拟器 安装(附下载地址)

    PNET模拟器介绍 Lab is Simple PNET安装步骤 1 将OVA文件导入Vmware 2 注意点 3 开机 xff0c 进行安装 4 选择第一个 5 安装成功 6 打开浏览器输入上边的IP地址 7 选择Online Mode
  • Python自动化备份网络设备配置

    前提 xff1a https blog csdn net weixin 50299079 article details 109300864 好嘞 xff0c 废话不多说 xff0c 开始搞 本文以Cisco CSR1000V设备配合Pyt
  • Check Point R80.40 防火墙

    Check Point 它是一家以色列的公司 xff0c 是面向全球企业用户业内领先的信息安全解决方案提供商 Check Point 解决方案对恶意软件 勒索软件和高级目标威胁的防范率处于业界领先水准 xff0c 可有效保护客户免受网络攻击
  • YangSuite 与 Netconf

    Cisco YangSuite 提供了一组工具和插件 xff0c 用于学习 xff0c 测试采用yang模型的可编程接口 xff0c 例如Netconf Restconf gNMI等 关于理论可以参考之前写的Cisco YangExplor
  • DMVPN 动态多点隧道技术

    DMVPN的特点 配置简单 中心站点只需要配置一次即可 xff0c 增加站点无需修改中心站点配置 xff0c 分支站点配置几乎相同 xff1b 性能好 能够实现动态mGRE隧道 xff0c 数据在分支之间能够直接通信 xff0c 一次加解密
  • Cisco Viptela SD-WAN 基本部署

    Cisco SD WAN Cisco SD WAN四平面 xff0c 四组件 管理平面 vManage xff1b 提供了一个高度可视化的仪表板 xff0c 可简化网络操作 它在整个 SD WAN 结构中提供集中配置 管理 操作和监控 编排
  • Ubuntu20.04安装ROS系统(其中里边出现了很多错误并解决了)

    目录 前言配置流程1 Software amp Update设置2 ifconfig命令3 安装支持SSH4 安装源5 密钥6 更新7 开始安装ROS8 配置环境变量9 验证是否安装成功 前言 首先非常感谢网上的各种安装教程 xff0c 以
  • 大龄程序员没有出路吗?

    点赞关注 xff0c 不会迷路 xff01 前言 说好的更新终于来了 文末有福利 关于这篇文章 xff0c 其实一直在犹豫怎么跟大家说 因为大龄程序员是一个群体 xff0c 但是每个人的情况又各有不同 这篇文章只能给你一个参考 xff0c
  • 怎么做一个分分钟哄女朋友开心的小程序

    点赞关注 xff0c 不会迷路 xff01 主要目的 xff1a 做一个以女朋友照片为背景的画布 xff0c 装饰点小花小草小气球小爱心 xff0c 另设一个女朋友的小图片可以自由的移动 那么就需要创建一个小花类一个气球类 xff0c 一个
  • maven中Profiles的配置及作用

    1 maven中Profiles的配置方法 xff1a pom xml xff1a pom xml中声明的profile只对当前项目有效 当你的项目存在父模块和字模块的时候 xff0c 通常配置在父模块即可 用户settings xml x
  • Java如果在try,catch里面执行return,那么还会不会执行finally?

    点赞关注 xff0c 不会迷路 xff01 总结 xff1a 1 不管有没有异常 xff0c finally中的代码都会执行 2 当try catch中有return时 xff0c finally中的代码依然会继续执行 3 finally是
  • 从三本院校到斩获字节跳动后端研发Offer

    文章篇幅较长 xff0c 都是满满的干货 xff0c 看完收获绝对很多 xff0c 文末有学习笔记和学习资料领取 前言 大家好 这次应博主的邀约 xff0c 写一篇关于我的 Java 自学经历 xff0c 希望对小伙伴们有所帮助 我本科就读

随机推荐

  • 【面试必看】肝出万字攻略,详解腾讯面试

    点赞关注 xff0c 不会迷路 xff01 2021最新学习面试资料 点击一起学习 暗号 xff1a csdn 最新学习资料 43 简历优化资源 前言 今天给大家分享下腾讯面试攻略 标题涉及的范围很广 xff0c 对多数面试腾讯的人而言 x
  • 国内最简单易用的源码,Nacos必须榜上有名!

    点赞关注 xff0c 不会迷路 xff01 2021最新学习面试资料 点击一起学习 暗号 xff1a csdn 最新学习资料 43 简历优化资源 最近新组件新的小组 xff0c 开始了新的项目 xff0c 项目的注册组件选择了我们国产的Na
  • 怎么做能防止B站再崩?

    点赞关注 xff0c 不会迷路 xff01 本文转载自 xff1a 敖丙 大家都知道虽然我是一个程序员 xff0c 但是我非常热爱运动 xff0c 比如跳舞 xff0c 这不每天回家睡前我都会在B站舞蹈区学习相关的舞蹈 昨天也不例外 xff
  • kali工具安装

    文章目录 汉化火狐浏览器 xff1a 安装google拼音输入法安装google浏览器安装beefssh安装gdebi安装 汉化火狐浏览器 xff1a 先执行命令 xff1a apt y install firefox esr l10n z
  • java多线程-8(CompletableFuture的简单使用)

    CompletableFuture简单使用 在JDK1 5引入的Future接口表示了一个异步计算返回的结果 但是使用Future获取异步返回结果的时候 xff0c 要么调用阻塞方法get 方法 要么轮询看isDone 是否为true ge
  • ROS导航小车2 AMCL(蒙特卡洛)粒子滤波定位算法(仅作个人记录)

    AMCL原理概念 AMCL adaptive Monte Carlo Localization 自适应蒙特卡洛定位 xff0c A也可以理解为augmented xff0c 是机器人在二维移动过程中概率定位系统 xff0c 采用粒子滤波器来
  • Linux安装docker-compose时使用github.com拒接连接处理

    报错如 xff1a Failed to connect to raw githubusercontent com port 443 Connection refused 主要问题就是拒接服务到github com xff0c 你可以测试pi
  • ESP32-CAM 在 Web 服务器中拍照和显示

    ESP32 CAM 在 Web 服务器中拍照和显示 项目简介所需部件项目概况 安装 ESP32 附加组件安装库安装 ESPAsyncWebServer 库安装 ESP32 的异步 TCP 库 ESP32 CAM 拍摄和显示照片 Web 服务
  • Linux系统常用命令总结

    目录 基本常用命令 xff1a 关机重启命令 xff1a 防火墙相关命令 xff1a 针对于CentOS7系统 重定向和追加 xff1a 打包压缩命令 xff1a vi vim编辑器 xff1a 软件包安装命令 xff1a 文件权限设置 x
  • ROS入门级教程

    目录 前言 一 ROS简介与安装 二 ROS文件系统 三 ROS核心概念 1 节点 2 话题 3 通讯机制 四 ROS的编译与简单使用 五 调试工具 1 Rviz和Gazebo 2 rqt工具 3 rosbag 六 常用指令 1 常用的文件
  • Springboot 框架

    SpringBoot 1 用来简化 spring 初始搭建和开发过程使用特定的方式进行配置 properties 或者 yml 文 件 2 创建独立的 spring 引用程序 main 方法运行 3 嵌入 Tomcat 无需部署 war 包
  • 新建github分支

    新建github分支 xff0c 可以 直接在github仓库上创建 或者 通过git命令创建 这里以 在main分支下创建test分支 为例 方法一 xff1a 直接在github仓库上创建分支 1 进入相应的仓库 xff0c 点击 Sw
  • Linux应用层开发(文件、多线程,多进程、进程间通信)

    文件IO编程 linux 下 切皆 件 xff0c 我们操作外设 标 键盘 磁盘等外设 就像操作 件 样 要如何操作 件与外设 xff0c 就必须熟练掌握 件IO input 写 output读 1 多文件编程 多 件编程 xff1a 把
  • VINS-MONO运行TUM VIO数据集真实轨迹问题处理

    小loser第一次写记录 xff0c 再次记录一下测试TUM VIO数据集碰到的问题及处理 VINS本身输出的数据需要进行格式转换才能用 xff0c 输出文件修改参考这个博客 Ubuntu 18 04 VINS Mono运行与EVO的评测与
  • 对线程和进程的理解

    进程和线程的区别 进程 xff1a 是指运行后的程序 xff0c 是操作系统分配系统资源 xff08 内存空间 CPU xff09 的最小单位 线程 xff1a 每个进程由一个或者多个进程组成 xff0c 线程是CPU进行分配和调度的最小单
  • 【永久解决】Matlab帮助文档设置语言为中文(可以解决预设窗口中无语言设置的情况)中文帮助文档

    问题描述 Matlab帮助文档在试用一段时间后 xff0c 由中文版本变成了英文版本 xff0c 导致在查询帮助文档时非常难过 网上有说通过预设设置帮助语言 xff0c 但很悲惨的是 xff0c 我的Matlab中并没有语言设置模块 情况如
  • STL — 常用容器

    2 STL 常用容器 2 1 string容器 2 1 1 string基本概念 本质 xff1a string是C 43 43 风格的字符串 xff0c 而string本质上是一个类 string和char 的区别 xff1a char
  • Mysql数据库的初始密码及如何修改密码

    数据库初始密码及如何修改密码 初始密码修改密码 初始密码 可能很多小伙伴们下载安装好MySQL后 xff0c 登录时提示你输入密码 xff0c 但是自己不知道密码是什么 xff0c 用下面的方法可以帮助你快速的找到 xff1a step1
  • John 破解shadow 密码

    1 wget https www openwall com john k john 1 9 0 tar gz 2 tar xvf john 1 9 0 tar gz 3 cd john 1 9 0 src 4 make amp make c
  • LVI-SAM代码复现、调试与运行

    一 LVI SAM介绍 LVI SAM是Tixiao Shan的最新力作 xff0c Tixiao Shan是Lego loam和Lio sam的作者 xff0c LVI SAM是Tixiao Shan最新开源的基于视觉 激光 惯导里程计S