一、首先声明一下我的环境是ubuntu20.04+opencv3.30+eigen3
二、我们去官网进行源码的下载,地址:https://github.com/cnqiangfu/PL-VINS
三、我们进行空间的创建,首先建立PL-VINS空间文件夹:
mkdir -p ~/catkin_plvins/src
cd catkin_plvins/src //进入创建的catkin_plvins/src文件夹下
catkin_init_workspace 进行空间创建
cd ~/catkin_plvins //在文件夹catkin_plvins下建立终端输入
catkin_make //终端输入
source devel/setup.bash
echo $ROS_PACKAGE_PATH
//将代码下载到src目录下 或者执行下面代码
cd ~/catkin_plvins/src
git clone https://github.com/cnqiangfu/PL-VINS.git
//编译
cd .. //回到文件夹catkin_plvins
catkin_make
source devel/setup.bash
踩坑记录:
1、在运行PL-VINS时,要保证自己安装的opencv版本在3.2.0以上,而且要保证自己的opencv安装的时候需要和opencv_contribute一起安装
2、在将代码下载到SRC目录下之后,进入文件夹,按照PL-VINS的官方readme,将feature_tracker里面的Cmakelist修改一下:主要修改以下三处的路径:
3、将opencv安装目录中的OpenCVConfig.cmake文件中如下一行:
set(OpenCV_INCLUDE_DIRS "${OpenCV_INSTALL_PATH}/include" "${OpenCV_INSTALL_PATH}/include/opencv")
改为:
set(OpenCV_INCLUDE_DIRS "${OpenCV_INSTALL_PATH}")
4、在catkin_make时出现以下的问题:
我们解决的办法就是,打开catkin_plvins/src/PL-VINS/image_node_b文件下的CMakeLists.txt
然后在其中加入一个语句,就可解决相关所有问题:
set(CMAKE_CXX_STANDARD 14)
四、然后我们建立终端进入系统的.bashrc中:
sudo gedit .bashrc
//打开文件之后在底端添加
source ~/catkin_plvins/devel/setup.bash
然后返回终端输入:
source .bashrc //使得文件生效
五、完成之后,我们去Euroc数据集(网址:kmavvisualinertialdatasets – ASL Datasets)中下载
5.1 MH_05_difficult.bag 数据供我们使用,下载完我们保存在catkin_plvins 文件夹下:
5.2 在catkin_plvins 文件夹打开终端一,输入:
source devel/setup.bash
roslaunch plvins_estimator plvins_show_linepoint.launch
注意:我们此时需要需要将src/PL-VINSvins_estimator/launch/下的plvins-show-linepoint.launch改为plvins_show_linepoint.launch(注意是下划线)文件名,希望大家改一下,这样就不会出问题了。
5.3 在catkin_plvins 文件夹打开终端二,输入:
source devel/setup.bash
rosbag play /home/siyu/catkin_plvins/MH_05_difficult.bag
注意:rodbag play 后面按照自己的MH_05的路径,按照个人保存的路径进行相应的更改,这样就保证运行没有问题。
5.4 运行成功截图: