SLAM算法VINS-MONO安装运行介绍

2024-03-15 22:38

本文主要是介绍SLAM算法VINS-MONO安装运行介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

说明:把资料放在这里,主要是因为github经常上不去,速度慢。如果网络申通的话大家还是去官网看资料比较方便,这个贴子本身没什么价值。同时这个贴子会持续更新。

这里是安装在Ubuntu18.04,通常是ROS melodic。

Ubuntu20.04上ROS noetic有些小问题,不过都很容易解决。

关于ceres-solver和VINS-mono在Ubuntu20.04上的特别说明

==>安装ceres-solver-2.0.0后VINS-mono的catkin_make没能编译成功,最后是改用的ceres-solver-1.14.0。

==> 在Ubuntu20.04上ROS-noetic安装VINS-mono,发现Opencv的几个参数不支持,具体可以参考[fix build for ros noetic #385] 这个request。例如把

cv::cvtColor(image, image, CV_GRAY2RGB);

替换成

cv::cvtColor(image, image, cv::COLOR_GRAY2RGB);

VINS MONO 运行介绍

VINS mono的下载地址

https://github.com/HKUST-Aerial-Robotics/VINS-Mono

安装参考网址

ROS Documentation

对VINS一般会选ubuntu18.04+ROS-melodic,

melodic/Installation/Ubuntu - ROS Wiki

按照项目上的安装介绍一步步来,

在安装vins-mono前先要安装ceres-solver,根据官网的指示,先到这里下载ceres包,

http://ceres-solver.org/ceres-solver-2.0.0.tar.gz
http://ceres-solver.org/ceres-solver-1.14.0.tar.gz

然后安装依赖(Start by installing all the dependencies)。

# CMake
sudo apt-get install cmake
# google-glog + gflags
sudo apt-get install libgoogle-glog-dev libgflags-dev
# BLAS & LAPACK
sudo apt-get install libatlas-base-dev
# Eigen3
sudo apt-get install libeigen3-dev
# SuiteSparse and CXSparse (optional)
sudo apt-get install libsuitesparse-dev

编译安装ceres-solver (We are now ready to build, test, and install Ceres),

tar zxf ceres-solver-2.0.0.tar.gz
mkdir ceres-bin
cd ceres-bin
cmake ../ceres-solver-2.0.0
make -j3
make test
# Optionally install Ceres, it can also be exported using CMake which
# allows Ceres to be used without requiring installation, see the documentation
# for the EXPORT_BUILD_DIR option for more information.
make install

下面开始安装使用vins-mono,

(1) Clone the repository and catkin_make:

cd ~/catkin_ws/src
git clone https://github.com/HKUST-Aerial-Robotics/VINS-Mono.git
cd ../
catkin_make
source ~/catkin_ws/devel/setup.bash

(2) 数据集下载地址

Download EuRoC MAV Dataset. Although it contains stereo cameras, we only use one camera. The system also works with ETH-asl cla dataset. We take EuRoC as the example.

(3) 如何运行

3.1.1 Open three terminals, launch the vins_estimator , rviz and play the bag file respectively. Take MH_01 for example

打开3个终端窗口输入下面的指令,注意每个窗口都要输入source ~/catkin_ws/devel/setup.bash,所以整体上就是,

    roslaunch vins_estimator euroc.launch roslaunch vins_estimator vins_rviz.launchrosbag play YOUR_PATH_TO_DATASET/MH_01_easy.bag 

如果不想重复输入source指令,最简单的办法是打开编辑~/.bashrc文件,把下面这句直接加入到文件的内容的后面,

source ~/catkin_ws/devel/setup.bash

然后分别打开三个终端窗口输入上面三条指令就可以了。通常一路过来不会有太大的障碍,运行时就可以通过RVIZ直接看到效果了。

VINS MONO调试介绍

参考资料:

 利用vscode调试VINS-FUSION - 知乎

如何配置VSCode来调试ROS节点_白夜行的狼-CSDN博客_vscode调试ros

VS Code 调试 VINS-Mono 环境配置_Barry_123的博客-CSDN博客c

通常我也是用VScode来调试Ubuntu下面的程序, 

这篇关于SLAM算法VINS-MONO安装运行介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/813484

相关文章

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

MybatisPlus service接口功能介绍

《MybatisPlusservice接口功能介绍》:本文主要介绍MybatisPlusservice接口功能介绍,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录Service接口基本用法进阶用法总结:Lambda方法Service接口基本用法MyBATisP

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)

《MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)》掌握多表联查(INNERJOIN,LEFTJOIN,RIGHTJOIN,FULLJOIN)和子查询(标量、列、行、表子查询、相关/非相关、... 目录第一部分:多表联查 (JOIN Operations)1. 连接的类型 (JOIN Types)

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

java中BigDecimal里面的subtract函数介绍及实现方法

《java中BigDecimal里面的subtract函数介绍及实现方法》在Java中实现减法操作需要根据数据类型选择不同方法,主要分为数值型减法和字符串减法两种场景,本文给大家介绍java中BigD... 目录Java中BigDecimal里面的subtract函数的意思?一、数值型减法(高精度计算)1.

Pytorch介绍与安装过程

《Pytorch介绍与安装过程》PyTorch因其直观的设计、卓越的灵活性以及强大的动态计算图功能,迅速在学术界和工业界获得了广泛认可,成为当前深度学习研究和开发的主流工具之一,本文给大家介绍Pyto... 目录1、Pytorch介绍1.1、核心理念1.2、核心组件与功能1.3、适用场景与优势总结1.4、优