如何配置VINS-Mono与GVINS
大家好,我是如何,今天尝试在Ubantu中配置VINS-Mono和GVINS
环境
虚拟机VMware+Ubantu18.04
依赖项安装
ROS
关于ROS安装的详细步骤请参见如何配置ROS
Eigen
强烈建议安装官方推荐版本Eigen3.3.3,否则很容易因版本原因出现问题。下载安装包进入文件夹解压执行
cd YOU_EIGEN_PATH
mkdir build
cd build
cmake ..
make
sudo make install
OpenCV
安装python pip 和numpy
sudo apt install python3-pip
pip install numpy
安装依赖项
sudo apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff5-dev libjasper-dev libopenexr-dev libtbb-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libpng-dev libdc1394-22-dev libvtk5-dev
若安装libjasper-dev出现问题可以参考博客解决
官方下载OpenCV3.3.1源码,进入文件夹解压执行
cd YOU_OPENCV_PATH
mkdir build
cd build
cmake ..
make
sudo make install
安装遇到的问题绝大多都能百度解决(大多数是依赖未安装问题)
Ceres1.4.0
下载Ceres1.4.0源码,遵循官网介绍安装。
关于第3、4依赖项的安装可参见博客。
VINS-Mono编译
创建文件夹
mkdir ~/ws/src
Clone源码
cd src && git clone https://github.com/HKUST-Aerial-Robotics/VINS-Mono.git
构建
cd .. && catkin_make
测试
以EuRoc数据集为例为例,打开三个终端
终端1:
source ~/ws/devel/setup.bash && roslaunch vins_estimator euroc.launch
终端2:
source ~/ws/devel/setup.bash && roslaunch vins_estimator vins_rviz.launch
终端3:
source ~/ws/devel/setup.bash && rosbag play YOUR_PATH_TO_DATASET/MH_01_easy.bag
结果
GVINS编译
GVINS是在VINS-Mono进行开发,因此如果VINS-Mono构建成功的话GVINS的构建也应该没啥问题。
创建文件夹
mkdir ~/ws/src
构建依赖包gnss_comm
cd ~/ws/src
git clone https://github.com/HKUST-Aerial-Robotics/gnss_comm.git
cd .. && catkin_make && source ~/ws/devel/setup.bash
Clone源码
cd src
git clone https://github.com/HKUST-Aerial-Robotics/GVINS.git
构建GVINS
cd .. && catkin_make && source ~/ws/devel/setup.bash
测试
打开三个终端
终端1:
source ~/ws/devel/setup.bash && rviz -d src/GVINS/config/gvins_rviz_config.rviz
终端2:
rviz -d ~/ws/src/GVINS/config/gvins_rviz_config.rviz
终端3:
rosbag play /mnt/hgfs/GVINS/sports_field.bag
结果
至此完成了VINS-Mono和GVINS的构建。
参考
- https://blog.csdn.net/guaijiaodie2064/article/details/83041721
- https://github.com/HKUST-Aerial-Robotics/GVINS
- https://github.com/HKUST-Aerial-Robotics/VINS-Mono