搭建SLAM2並使用Kinect V2跑通ORB-SLAM2
搭建SLAM2並使用Kinect V2跑通ORB-SLAM2
前言:本篇部落格是我之前使用Kinect V2 跑通ORB-SLAM2的一個記錄,並標註了我參考的教程部落格以及我遇到的問題及解決,希望能給遇到同樣問題的朋友一些幫助。
整個過程中,我參考的幾篇部落格:
一、進行ORB-SLAM2的安裝
https://blog.csdn.net/learning_tortosie/article/details/79881165
二、進行TUM資料集的測試
https://blog.csdn.net/oliongs/article/details/79696341
三、使用Kinect V2跑通ORB-SLAM2
遇到的問題及解決方法:
1、如何解鎖Ubuntu中帶鎖資料夾?
解決方法:
sudo chmod -R 777 資料夾名
2、進行TUM資料集的測試時出錯:
[email protected]:~/ORB_SLAM2$ .Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM2.yaml data/rgbd_dataset_freiburg2_360_hemisphere Examples/RGB-D/associations.txt bash:.Examples/RGB-D/rgbd_tum: 沒有那個檔案或目錄
開頭少打了一個/ (雖然很可笑,但還是做了個記錄)
注意此處在網站下載的TUM標準資料集的名字一定要核對清楚,比如我下載的資料集為
rgbd_dataset_freiburg2_360_hemisphere。
3、Linux系統下拷貝命令:
sudo cp -r dir1 dir2
將dir1地址的檔案拷貝到dir2地址的檔案裡面。
4、開啟終端就會出現bash: devel/setup.bash: 沒有那個檔案或目錄
在終端輸指令:
gedit ~/.bashrc
在開啟檔案的最後找到這個setup.bash的檔案路徑檢查是否完整正確。
同時可以刪除重複的多餘配置。
5、如果通過終端的命令 無法成功配置環境變數。
即每次都要在終端輸入指令:
source ~/.bashrc
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/chen/ORB_SLAM2/Examples/ROS
解決方法:在終端輸入gedit ~/.bashrc
在開啟檔案的最後新增:
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/chen/ORB_SLAM2/Examples/ROS
即可解決。
- 教程三中的一些問題:
1、修改後修改後應該執行./build_ros.sh重新編譯。
2、如果出現找不到路徑或包錯誤,請重新配置路徑。
3、執行命令:rosrun ORB_SLAM2 RGBD Vocabulary/ORBvoc.txt Examples/RGB-D/kinect2.yaml時,要注意是在ORB-SLAM2的目錄下。
-
最後,只需要執行下方指令,便可使用Kinect成功跑通ORB-SLAM2:
roslaunch kinect2_bridge kinect2_bridge.launch
cd ORB_SLAM2
rosrun ORB_SLAM2 RGBD Vocabulary/ORBvoc.txt Examples/RGB-D/kinect2.yaml
注意此處kinect2.yaml是需要你進行標定之後的值來進行更正的,此處我們只是測試,可以直接複製之前測試TUM標準資料集的yaml檔案的內容即可。