(学习笔记)用EUROC数据集运行vins_mono
1.下载EUROC数据集:
官方网址:https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets
我是在网盘下载的,上篇笔记有,
下载至目录:~/dataset/MH_04_difficult.bag
2.vins-mono从官网clone:
https://github.com/HKUST-Aerial-Robotics/VINS-Mono
clone至lin/vin_mono_ws/src
编译安装全部参照官网README,注意一些依赖包的安装,opencv3.3.1、cere3.3.3、eigen3.3.4以上版本等。
遇到的问题:eigen版本太低导致cere编译有问题,所以重新下源码包安装。
最终编译通过。
建立工作空间:
mkdir -p ~/vins_mono_ws/src
cd ~/vins_mono_ws/
catkin_make
3.开始测试
(1)修改结果保存地址:/home/YOURNAME/vins_mono_ws/src/VINS-Mono-Master/config/euroc/euroc_config.yaml中修pose_graph_save_path为想存的地址:~/vins_output/pose_graph,我修改了开头和后面两处。
(2)切换到工作空间目录下:cd vins_mono_ws,执行catkin_make。
(3)开启三个终端,都刷新环境,我已将命令写在了.bashrc中,若没有写在bashrc中,则:source ~/vins_mono_ws/devel/setup.bash
(4)一个终端中进入工作空间,执行如下命令:
可以看到这里开启了三个节点
(5)第二个终端中输入如下:
同时此时会显示rviz界面。
(6)第三个终端中输入:rosbag play ~/dataset/MH_04_difficult.bag
运行结束之后rviz读建图画面如下:
(7)想看节点间关系可输入:rqt_graph,如下:
(8)想要保存结果则在第一个终端中输入s,保存到刚刚指定的路径下:
(9)若想将真值与运行结果比较,则再开一个终端,输入:
roslaunch benchmark_publisher publish.launch sequence_name:=MH_04_difficult
(10)到此结束,让自己对算法运行机制有个初步的了解。