首页 > 解决方案 > ubuntu 16.04 中 CvBridge 和 ArUco opencv 模块与 ROS 动力学相结合的问题

问题描述

我正在使用无人机进行一个项目,该无人机的驱动程序仅适用于 ROS 动力学,这将我限制在 ubuntu 16.x 和 ROS 动力学。我使用 python 3.5,但是当我尝试将从 ROS 主题中提取的sensor_msgs/Image类型的图像转换为能够使用 OpenCV 处理的图像时,我需要使用 CvBridge。我可以使用rosrun image_view image_view image:=/topic或使用来查看图像rviz,因此图像正确来自主题。

问题是我需要aruco导入模块来处理图像。 CvBridge如果我使用 opencv 版本 3 或更高版本,则会出现错误,但是当我安装opencv2.4.9 并将默认 python 设置为 2.7 时,我可以使用它,但是错误来自不aruco存在的模块,我尝试使用构建 2.4.9 版本手动 contrib 模块,但它也不起作用。

因此,如果有人知道如何使用CvBridge最新版本的模块或类似模块opencv,则使用命令安装的模块pip install opencv-contrib-python

我将不胜感激任何有用的答案。

如果需要或问题不理解,我可以提供更多信息。谢谢。

标签: pythonopencvrosaruco

解决方案


问题解决了。我不知道确切的原因或方式,但是在我在另一个磁盘上全新安装了 Ubuntu 16.04 之后,安装了 ros kinetic 如下:

http://wiki.ros.org/kinetic/Installation/Ubuntu

然后是无人机的司机:

https://bebop-autonomy.readthedocs.io/en/latest/installation.html

并且使用 te OS 附带的默认 opencv 3.3.1-dev 版本一切正常。


推荐阅读