参考https://github.com/HKUST-Aerial-Robotics/VINS-Mono
1.先决条件
首先安装ros kinect与ceres
Nvidia jetson tx2安装ros kinect
此处安装第一个
ctrl+alt+t打开终端
1)添加源
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
这一步如果不行,可以换源
2)设置密钥
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 0xB01FA116
3)更新
sudo apt-get update
4)安装全功能版本的ros
sudo apt-get install ros-kinetic-desktop-full
此步骤可能需要很长时间
5)初始化
sudo rosdep init
rosdep update
6)测试
打开终端,输入以下命令,初始化ros环境
roscore
打开新的终端,输入以下命令,会出现小乌龟
rosrun turtlesim turtlesim_node
再次打开新的终端,输入以下命令,方向键可以控制小乌龟移动
rosrun turtlesim turtle_teleop_key
NVIDIA jetson tx2 安装ceres-solver
官网教程
http://ceres-solver.org/installation.html
1)终端输入:
sudo apt-get install cmake
sudo apt-get install libgoogle-glog-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libeigen3-dev
sudo apt-get install libsuitesparse-dev
sudo add-apt-repository ppa:bzindovic/suitesparse-bugfix-1319687
sudo apt-get update
sudo apt-get install libsuitesparse-dev
2)下载安装包,此处我使用从官网推荐的方法。也可以从GitHub下载:https://github.com/ceres-solver/ceres-solver
终端输入:
git clone https://ceres-solver.googlesource.com/ceres-solver
3)然后新建ceres-bin
mkdir ceres-bin
终端依次输入:
cd ceres-bin
cmake ../ceres-solver
make -j3
make test //我在执行这一行提示not found ,我跳过了
sudo make install
安装成功。
Ceres库的头文件安装在"/usr/local/include/ceres/“目录下,库文件安装在”/usr/local/lib/“目录;eigen库的头文件安装在”/usr/local/include/eigen3/"目录下。可以查看相应目录。
4)测试
bin/simple_bundle_adjuster ../ceres-solver/data/problem-16-22106-pre.txt
打印如下:
则表示安装成功。
2.ros上构建VINS-Mono
cd ~/catkin_ws/srcgit clone https://github.com/HKUST-Aerial-Robotics/VINS-Mono.gitcd ../catkin_makesource ~/catkin_ws/devel/setup.bash
我在执行第二行时一直失败,直接官网下载之后拷贝到src文件夹
在执行到catkin_make时出现如下错误:
Invoking "make -j6 -l6" failed
解决方法如下:
我没找到合适的解决方法,然后重新执行了一次,成功了。。。。。。。。。。。。。。。。mmp
3.测试运行
执行完之后,运行一下测试集
终端依次输入:
roslaunch vins_estimator euroc.launch roslaunch vins_estimator vins_rviz.launchrosbag play YOUR_PATH_TO_DATASET/MH_01_easy.bag
1)此时执行第一句,出现如下错误
终端输入:source devel/setup.bash,然后执行
2)执行第二句,步骤和第一步一样
此时会出现一个窗口
3)运行测试集
测试集路径为https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets#the_euroc_mav_dataset
此处play后面为你自己的bag路径,我的为
rosbag play /home/dji/vins-test/V1_02_medium.bag
运行情况如下