Ask Your Question

opencv2/aruco with ROS opencv

asked 2016-04-27 06:14:10 -0500

PRoque gravatar image


I want to use opencv2/aruco.hpp with ROS that is installed with opencv3. This is for usage with function cv::aruco::estimatePoseSingleMarkers . Is it also available on ROS opencv, or do I need opencv 3 for this?

I tried to install ros-jade-opencv3 but got stuck with multiple errors due to library conflict (saying it could not find string::deallocate() and so on). How can I manage this? What shall I do?

Here are my includes:

#include <iostream>
#include <ros/ros.h>
#include <chrono>

#include <aruco/aruco.h>
#include <aruco/cvdrawingutils.h>

#include <image_transport/image_transport.h>
#include <cv_bridge/cv_bridge.h>
#include <sensor_msgs/image_encodings.h>

#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/core/core.hpp>

Best regards. Pedro Roque

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2016-04-27 22:34:31 -0500

Mykola gravatar image

ros-jade-opencv3 is a packaged version of OpenCV3 as the last one is still not included into main distro repositories. This ROS package does provide modules from the opencv_contrib repository (aruco is a contrib module) so you should be fine with it. As for the link problem, make shure that you link your executable with OpenCV libraries, you'll need something like

find_package(OpenCV REQUIRED)
# and later on
target_link_libraries(<your executable> ... ${OpenCV_LIBS})
edit flag offensive delete link more
Login/Signup to Answer

Question Tools

1 follower


Asked: 2016-04-27 06:14:10 -0500

Seen: 369 times

Last updated: Apr 27 '16