1. 程式人生 > >ROS下執行SVO資料包.md

ROS下執行SVO資料包.md

ROS下編譯和執行SVO(使用資料集)

安裝指南

先在home目錄下,新建catkin_ws/src/SVO這幾級資料夾目錄,作為workspace

安裝Sophus庫

Sophus庫我之前已經安裝過,如果未安裝:

cd catkin_ws/src/SVO
git clone https://github.com/strasdat/Sophus.git
cd Sophus
git checkout a621ff
mkdir build
cd build
cmake ..
make

安裝Fast庫(用於fast角點檢測)

cd catkin_ws/src/SVO
git clone https://github.com/uzh-rpg/fast.git
cd fast
mkdir build
cd build
cmake ..
make

安裝g2o庫(圖優化)–可選

建議安裝。在安裝g2o之前,需要先使用apt-get 安裝 cmake, libeigen3-dev, libsuitesparse-dev, libqt4-dev, qt4-qmake, libqglviewer-qt4-dev這些依賴項(參考

依賴項安裝完畢,開始安裝g2o:

cd catkin_ws/src/SVO
wget https://github.com/RainerKuemmerle/g2o/archive/20160424_git.tar.gz -O g2o-20160424_git.tar.gz
tar xvzf g2o-20160424_git.tar.gz
cd g2o-20160424_git
mkdir build
cd build
cmake ..
make
sudo make install

安裝vikit

cd catkin_ws/src/SVO
git clone https://github.com/uzh-rpg/rpg_vikit.git

安裝ROS依賴項

sudo apt-get install ros-hydro-cmake-modules
將hydro換成自己的ROS系統,我的是kinetic

###編譯SVO

cd catkin_ws/src/SVO
git clone https://github.com/uzh-rpg/rpg_svo.git

此時,若成功安裝了g2o,需要將/home/<使用者名稱>/catkin_ws/src/SVO/rpg_svo/svo/CMakeLists.txt中的HAVE_G2O

設定成TRUE

接下來:

cd catkin_ws
catkin_make

在虛擬機器下編譯,記憶體設為3G,編譯到一半宕機,調整為4G後,順利編譯完成,此時,在catkin_ws資料夾中,生成了build和devel資料夾。

執行指南

使用資料集執行SVO

下載資料集

由於資料集比較大(1.8G),使用續傳分段下載

wget -c rpg.ifi.uzh.ch/datasets/airground_rig_s3_2013-03-18_21-38-48.bag

新建終端,使用準備好的launchfile啟動SVO

cd catkin_ws
source devel/setup.bash
roslaunch '/home/<使用者名稱>/catkin_ws/src/SVO/rpg_svo/svo_ros/launch/test_rig3.launch' 

新建終端,啟動RVIZ (Robot Visualizer)

rosrun rviz rviz -d /home/<使用者名稱>/catkin_ws/src/SVO/rpg_svo/svo_ros/rviz_config.rviz

新建終端,執行資料集

下載的資料集已放在catkin_ws資料夾下

cd catkin_ws
rosbag play airground_rig_s3_2013-03-18_21-38-48.bag 

使用wiki上的方法,RVIZ無法正常顯示。此處參考部落格

執行成功效果圖如下: 在這裡插入圖片描述

等有時間,考慮用自己的攝像頭試試,再作補充~