在ROS中使用usb網路攝像頭(usb_cam,Arch linux,ROS JADE)
阿新 • • 發佈:2018-10-31
如題,在做香蕉派的影象處理時需要用到usb_cam這個ros node,在ubuntu上驗證之後,打算移植到Banana Pi的Archlinux ARM的時候卻發現了一個問題:不像ubuntu可以直接apt-get到,在Arch上不論pacman還是yaourt上都搜不到這個包。無奈,總會有原始碼吧,好在在ROS wiki上面找到了這個包的說明,上面給出了github地址:
於是就開心的找到了,hahaha~
通過
git clone https://github.com/bosch-ros-pkg/usb_cam.git
指令下載下來這個node,直接執行裡面的.launch檔案就行,用下面指令:
roslaunch usb_cam/launch/usb_cam-test.launch
即可。然而遇到了一些問題,執行不了。如下:
ERROR: cannot launch node of type [usb_cam/usb_cam_node]: usb_cam
還有一個差不多的錯誤提示,和這個的共性就是—提示並沒有什麼用。於是懷疑是缺少依賴,因為直接從github下載node,不會自動去檢查依賴。好在node包裡面有package.xml,依賴部分如下:
裡面確實有很多沒裝,yaourt -Ss一下都有,這就好辦了,全部安裝上(很多包編譯很慢,慢慢等一等)。然後還有一個問題,這只是一個獨立的node。編譯的話要先把它移到catkin工作空間內。比如我的工作空間是~/ros/ws/src,那麼
cp -r usb_cam ~/ros/ws/src
複製到工作空間,然後
cd ~/ros/ws
catkin_make
編譯。然後
source ~/ros/ws/devel/setup.bash
執行:
roslaunch usb_cam usb_cam-test.launch
發現還是一樣的錯誤,發現還是少image view,那就
yaourt -S ros-jade-image-view
安裝即可,之後重新roslaunch成功,如下。