在树莓派上手动添加ROS包(usb_cam)

在ROS下,下载包源码编译后,手动添加包

系统:ubuntu1804(树莓派)

 

在树莓派上安装了ubuntu,但树莓派是arm架构,所以用的下载源也不同于在电脑上;

对于ubuntu来说,在普通电脑上用的源一般为 http://mirrors.xxx.xxx/ubuntu/ bionic ....,而在arm架构的树莓派上要改成 http://mirrors.xxx.xxx/ubuntu-ports/ bionic ....

用opencv-ROS做相机标定时运行roslaunch robot_vision usb_cam.launch出现了一个报错 cannot launch node of type [usb_cam],需要安装一个包 sudo apt-get install ros-melodic-usb-cam

在电脑上测试的时候很顺利,很快就下载好了

但换到树莓派上,无论我换成什么源,都会报错 E:无法定位软件包

网上查了查,看到一篇遇到类似问题的文章,可能就是这个arm专用的源里没有这个包

于是决定 把这个包的源代码下载下来自己编译,然后手动安装进去

在github上下到压缩包后,包名改为usb_cam.zip(原来是usb_cam-develop.zip)

在本地创建工作空间,并初始化

~$ mkdir -p cameratest_ws/src

~$ cd cameratest_ws/src 

~/cameratest_ws/src$ catkin_init_workspace

把下载到的压缩包解压到src下,再跳到工作空间主目录下编译

~/cameratest_ws/src$ cd ..

~/cameratest_ws$ catkin_make

接下来就是正式移植了

需要用到的有:

cameratest_ws/devel/share下的 usb_cam 复制到 /opt/ros/melodic/share

cameratest_ws/devel/lib下的 usb_cam 复制到 /opt/ros/melodic/lib

cameratest_ws/devel/lib下的 libusb_cam.so 复制到 /opt/ros/melodic/lib

cameratest_ws/devel/lib/pkgconfig 下的 usb_cam.pc 复制到 /opt/ros/melodic/lib/pkgconfig

cameratest_ws/src/usb_cam/include下的 usb_cam 复制到 /opt/ros/melodic/include

然后就差不多了,再运行roslaunch robot_vision usb_cam.launch时就不会报错了

 

注:若要在树莓派上用,就必须在树莓派上编译;在电脑上编译的话,文件移植到树莓派上运行会报错

 

有的包(find_object_2d)编译报错:'CV_CAP_PROP_FRAME_COUNT' was not declared in this scope 

这类的是因为Opencv的版本问题

例如之前的版本用的是 CV_CAP_PROP_FRAME_COUNT 而更新的版本用的是 cv::CAP_PROP_FRAME_COUNT

跟着报错提示一个个改就完事了 

(发现那个包的错误远远不止这些,于是划掉了(≖_≖ )....)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值