安裝與運行的所有文檔:https://github.com/uzh-rpg/rpg_svo/wiki
有兩種安裝方式:
[1]沒ros的似乎比較麻煩,首先依照ros的安裝方法:
cd SVO
1.安裝Sophus
由於我已經安裝過了,所以在這里不詳細說明,下載下來簡單編譯即可。
安裝完后,在~/.cmake/packages/中可以看到Sophus(如果看不見在Home按ctrl+h即可,再按就隱藏)
安裝完后,在~/.cmake/packages/中可以看到Sophus(如果看不見在Home按ctrl+h即可,再按就隱藏)
2.安裝fast角點檢測部分 https://github.com/uzh-rpg/fast.git
3.安裝g2o
[以上都是通過cmake編譯安裝的。。。]
[以下是通過ROS編譯安裝的。。。]
4.安裝vikit
mkdir -p rosbuild_ws/src cd rosbuild_ws/src git clone https://github.com/uzh-rpg/rpg_vikit.git
5.安裝ros cmake modules
sudo apt-get install ros-indigo-cmake-modules
6.安裝SVO
cd rosbuild_ws/src git clone https://github.com/uzh-rpg/rpg_svo.git
我已經安裝了g2o,因此把svo/CMakeLists.txt中的HAVE_G2O設為TRUE
7.catkin_make
又出現了cv-bridge的錯誤,所以修改http://www.cnblogs.com/Jessica-jie/p/6959309.html
修改完繼續 catkin_make
8.運行
用ros跑下載好的svo數據
(1).從這個網址https://github.com/uzh-rpg/rpg_svo/wiki/Run-SVO-with-ROS 用一個DATAset來運行SVO---airground_rig_s3_2013-03-18_21-38-48.bag
(2).在一個終端,首先運行roscore
(3).在另一個終端,然后運行roslaunch svo_ros test_rig3.launch
errror:
你是不也遇到這個問題了?
忘記關鍵步驟了
$ cd <path_to_catkin_ws>
$ source devel/setup.bash
//顯然這里忽略了對程序進行注冊:也就是執行名為 setup.bash 的腳本文件,它是 catkin_make 在你工作區的 devel 子目錄下生成的。
再執行上面的命令。
(4).再打開一個終端,打開rviz:rosrun rviz rviz -d /home/wj/Downloads/SVO/rosbuild_ws/src/rpg_svo/svo_ros_ros/rviz_config.rviz //rviz
顯示模型
(5).載入數據:rosbag play /home/wj/Downloads/SVO/airground_rig_s3_2013-03-18_21-38-48.bag //前面下載的數據
有了數據之后,程序就會運行,也可以看到可視化的軌跡了。
有了數據之后,程序就會運行,也可以看到可視化的軌跡了。
用 ros跑自己的攝像頭采集的數據
[2]沒ros的安裝方法:
Boost - c++ Librairies (thread and system are needed)
sudo apt-get install libboost-all-dev
Eigen 3 - Linear algebra
apt-get install libeigen3-dev
OpenCV - Computer vision library for loading and displaying images(我之前就安裝過了)
Follow the instructions at www.opencv.org
1.安裝Sophus
2.安裝fast角點檢測部分
3.安裝g2o
[已經通過cmake編譯安裝過的,所以不用重復安裝。。。只需要將下面的通過cmake安裝,而不是ROS]
4.安裝vikit(注意:
rpg_vikit/vikit_common/CMakeLists.txt set the flag USE_ROS to FALSE.)
cd home/wj/Downloads/svo/svo git clone https://github.com/uzh-rpg/rpg_vikit.gitcd rpg_vikit/vikit_common mkdir build cd build cmake .. make //在/rpg_vikit/vikit_common/bin生成了可執行文件
//rpg_vikit有3個文件夾:vikit_common;vikit_py;vikit_ros。最小二乘求解器中的固定設置先驗vikit_common:
//生成了3個test可執行文件:test_vk_common_camera;vikit_common/bintest_vk_common_patch_score;test_vk_common_triangulation.
5.安裝SVO(注意:
svo/CMakeLists.txt set the flag USE_ROS to FALSE.)
cd home/wj/Downloads/svo/svo mkdir build cd build cmake .. make //在/svo/bin生成了可執行文件
Documentation---The API is documented here: http://uzh-rpg.github.io/rpg_svo/doc
---Instructions---See the Wiki for more instructions. https://github.com/uzh-rpg/rpg_svo/wiki
---
Contributing--- I try to follow the ROS C++ style guide http://wiki.ros.org/CppStyleGuide
---
Create a folder where you will store all datasets, e.g.:
cd ~
mkdir Datasets
In your .bashrc script, create a new environment variable pointing to the dataset folder:
export SVO_DATASET_DIR=${HOME}/Datasets
Source your new .bashrc script, go to the new dataset folder and download the test data:
source ~/.bashrc cd ${SVO_DATASET_DIR} wget http://rpg.ifi.uzh.ch/datasets/sin2_tex2_h1_v8_d.tar.gz -O - | tar -xz
Run SVO on the test data:
cd svo/bin
./test_pipeline
備注:如果單個運行生成的可執行文件,出來的結果是大體是一樣的。
