-1

I'm working on a project with a drone, which has its drivers that only work with ROS kinetic, this limits me to ubuntu 16.x and ROS kinetic. I use python 3.5 but when I try to convert the images from sensor_msgs/Image type extracted from the ROS topic to an image able to be processed with OpenCV, I need to use CvBridge. I am able to see the image with rosrun image_view image_view image:=/topic or using rviz, so the image is coming correctly from the topic.

The problem is that I need aruco module to be imported to process the image. CvBridge gives me errors if I use opencv version 3 or greater, but when I install opencv 2.4.9 and set default python to 2.7 I can use it but then the error comes from no aruco module existent, I tried to build the 2.4.9 version with the contrib modules manually but it doesn't work either.

So if anyone knows how to use the CvBridge or a similar module with the newest version of opencv, the one that is installed using the command pip install opencv-contrib-python

I would be grateful to any useful answer.

I can provide more info if it is required or the question not understood. Thanks.

Avinash Singh
  • 4,970
  • 8
  • 20
  • 35

1 Answers1

0

Question solved. I don't know exactly why or how, but after I made a clean installation of Ubuntu 16.04 on another disk, installed ros kinetic following this:

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

and then the drivers of the drone with this:

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

and everything works fine with the default opencv 3.3.1-dev version that comes with te OS.