1. 程式人生 > >Ubuntu16.04+Ros+Usb_Cam ORB SLAM2

Ubuntu16.04+Ros+Usb_Cam ORB SLAM2

轉載自:https://www.jianshu.com/p/dbf39b9e4617親測可用

1.其中編譯ORB_SLAM2的   ./build.sh 和 ./build_ros.sh之前需要修改檔案的屬性, chmod +x build.sh  和chmod +x build_ros.sh ,最好還是進去編輯下,把build.sh 和 build_ros.sh中的make -j修改為make;

2.在執行  ./build_ros.sh時會遇到問題,切換到/catkin_ws/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2修改此目錄下的CMakeList.txt檔案,如下新增紅色部分即可,然後重新執行  ./build_ros.sh

set(LIBS
${OpenCV_LIBS}
${EIGEN3_LIBS}
${Pangolin_LIBRARIES}
${PROJECT_SOURCE_DIR}/../../../Thirdparty/DBoW2/lib/libDBoW2.so
${PROJECT_SOURCE_DIR}/../../../Thirdparty/g2o/lib/libg2o.so
${PROJECT_SOURCE_DIR}/../../../lib/libORB_SLAM2.so
-lboost_system  
)

3.在呼叫設攝像頭時,需要修改/catkin_ws/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2/src下邊的ros_mono.cc檔案將裡邊的訂閱修改為從usb_cam 即 ros::Subscriber sub = nodeHandler.subscribe("/usb_cam

/image_raw", 1, &ImageGrabber::GrabImage,&igb);顯示行號命令為   set nu,這步的意思是從urb_cam接受訊號;

4.如果啟動的攝像頭不是指定的攝像頭,則需要在usb_cam的launch檔案中修改/catkin_ws/src/usb_cam/launch中的usb_cam-test.launch檔案,<param name="video_device" value="/dev/video1" />只需要修改數字即可。