Ubuntu20.04 VINS-Mono 安装及运行
环境配置
VINS-Mono的运行需要ROS,环境,此处我选择的是Ubuntu20.04+melodic。此外,还需要一下依赖库
- eigen
- opencv
- ceres
其中eigen与opencv已经装好(注意版本,eigen3.3.3,opencv3.x,不建议过高),因此我直接跳到安装ceres的步骤
ceres安装
在安装ceres之前,我们首先需要保证具备编译ceres所需要的依赖库,如果没有,则可已通过一下命令安装
Sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.2 libgflags-dev libgoogle-glog-dev libgtest-dev
安装完依赖库后,由于ceres不在apt仓库内,需要下载源码自行编译(先安装git)。
git clone https://github.com/ceres-solver
下载后进入代码目录,新建build目录,在build目录内执行
cmake ..
make
之后代码会进行编译,编译完成后使用命令安装
sudo make install
安装VINS-Mono
VINS-Mono是基于ROS运行的,因此需要创建一个ROS工作区
mkdir catkin_ws
cd catkin_ws
catkin_init_workspace
最后一步可能会有Not found报错,大概率是因为ROS的环境变量失效导致没有办法找到ROS的catkin_xxx命令,解决方式如下
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc#路径根据自己的电脑变换
source ~/.bashrc
创建完工作空间后,可以看到catkin_ws下有了多个子目录,进入src子目录下载VINS-Mono源代码
git clone https://github.com/HKUST-Aerial
此处可能出现无法解析Github域名的问题,Ping一下github然后把Ping出来的域名写进hosts里就可以
下载完毕后回到上级目录,输入命令
catkin_make
编译ROS项目,编译完成后,我们需要下载数据集,下载网站为
Euroc数据集下载网站
每次运行前都需要在调用相关节点的终端里写入
source ~/catkin_ws/devel/setup.bash
之后才能在该终端里启动节点
打开三个终端,输入上述命令后再分别输入
roslaunch vins_estimator euroc.launch
roslaunch vins_estimator vins_rviz.launch
rosbag play ~/dataset/MH_01_easy.bag#路径根据自己下载的数据集而定
就可以运行VINS-Mono