ubuntu16.04下用筆記本攝像頭和ROS編譯運行ORB_SLAM2的單目AR例程


要編譯ORB_SLAM2的ROS例程首先需要安裝ROS,以及在ROS下安裝usb_cam驅動並調用,最后搭建ORB_SLAM2。

1.ROS的安裝

我的電腦安裝的是ubuntu16.04系統,所以我安裝的是2016年的發行版本ROS_Kinetic,一般的話ROS的版本是一年一更新,和ubuntu的系統更新保持同步。如果你的系統是ubuntu14.04,你可以安裝2014年的發行版本ROS_Indigo。

ROS_Kinetic在ubuntu16.04上的安裝可以參考我的博客:點擊鏈接地址

 

2.usb_cam在ROS中的編譯

首先要新建一個ROS的工作空間

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace

編譯工作空間

cd ~/catkin_ws/
catkin_make

設置環境變量

source devel/setup.bash

如果你的終端為zsh,請用如下命令

source devel/setup.zsh

進入到catkin_ws/src目錄下,下載usb_cam的源文件到此目錄下

cd ~/catkin_ws/src
git clone https://github.com/bosch-ros-pkg/usb_cam.git

退出到catkin_ws目錄下執行catkin_make命令進行編譯並設置環境

cd ..
catkin_make
source ~/catkin-ws/devel/setup.bash

可以測試是否配置成功

roscd usb_cam

沒報錯就說明安裝成功了

3.編譯ORB_SLAM2庫

最簡單的根據orb_slam2在github上面的項目地址就可以安裝成功

項目地址:https://github.com/raulmur/ORB_SLAM2

詳細的可以參考我的博文:點擊鏈接地址

 

4.編譯ROS例程

網上編譯ROS例程的教程很多,但我還是覺得github上面提供的最方便

首先進入到你的ORB_SLAM2源代碼目錄下,然后執行命令

chmod +x build_ros.sh
./build_ros.sh

這個可能不會100%編譯成功,但Mono和MonoAR可以編譯成功,主要是ros_rgbd不能編譯成功,出現報錯,我就沒管他。

編譯完之后,記得在.bashrc后面加入:

 

source /home/zn/ORB_SLAM2-master/Examples/ROS/ORB_SLAM2/build/devel/setup.bash

 

5. 運行ROS中的Demo

以上步驟都成功后,我們就可以運行ros中的demo了

開始之前還有個地方需要改:

 

 

把ros_mono_ar.cc中的

 

ros::Subscriber sub = nodeHandler.subscribe("/camera/image_raw", 1, &ImageGrabber::GrabImage,&igb);

 

改為:

 

ros::Subscriber sub = nodeHandler.subscribe("/usb_cam/image_raw", 1, &ImageGrabber::GrabImage,&igb);

 

(看到沒有,路徑變了喲。因為我們的圖片都是從/usb_cam/image_raw發送過來的)

 

然后再把Example編譯一下~

 

這下可以開始了:

 

首先我們要啟動ros內核,新開一個終端,執行

roscore

啟動usb_cam攝像頭節點,新開一個終端,執行

roslaunch usb_cam usb_cam.launch

啟動 ORB_SLAM2 的 Mono 節點(單目)

rosrun ORB_SLAM2 Mono PATH_TO_VOCABULARY PATH_TO_SETTINGS_FILE
PATH_TO_VOCABULARYORBvoc.txt文件路徑PATH_TO_SETTINGS_FILE是你的攝像機內參數文件路徑

所以可以在第三個終端輸入如下命令:

rosrun ORB_SLAM2 MonoAR /home/zn/ORB_SLAM2/Vocabulary/ORBvoc.txt  /home/zn/ORB_SLAM2/Examples/Monocular/TUM1.yaml

路徑按照自己的電腦路徑進行更改,TUM1.yaml是參數設置文件,主要是相機的內參,這個得自己標定。如果懶得標定,可以直接用TUM1.yaml,不影響程序的運行。

 

 

 

 end......

 參考博文:https://blog.csdn.net/u79501/article/details/68942174

http://www.liuxiao.org/2016/07/ubuntu-orb-slam2-%E5%9C%A8-ros-%E4%B8%8A%E7%BC%96%E8%AF%91%E8%B0%83%E8%AF%95/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM