diff --git a/CMakeLists.txt b/CMakeLists.txt index 2e2010fe34e247b123b48a79fd3066564ba11cea..2e8c3636c6d789fb87e3f6413bdab1100bef3a71 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,6 +13,7 @@ find_package(catkin REQUIRED COMPONENTS sensor_msgs wolf_ros_node cv_bridge + image_transport ) ## System dependencies are found with CMake's conventions diff --git a/include/subscriber_camera.h b/include/subscriber_camera.h index 663a51a11edfcc55c968868282b7eb706b494e9e..ef9af1e2d3cde2367fe12d0923ebf85312277068 100644 --- a/include/subscriber_camera.h +++ b/include/subscriber_camera.h @@ -57,7 +57,6 @@ class SubscriberCamera : public Subscriber { protected: SensorCameraPtr sensor_camera_; - public: // Constructor SubscriberCamera(const std::string& _unique_name, @@ -70,7 +69,5 @@ class SubscriberCamera : public Subscriber void callback(const sensor_msgs::ImageConstPtr& msg); }; -WOLF_REGISTER_SUBSCRIBER(SubscriberCamera); - } #endif diff --git a/src/subscriber_camera.cpp b/src/subscriber_camera.cpp index 412bfcd138a7545c75b63e51c2483ab8ef8468bf..89925f12a0c10f58d98324b009ae874cb237bba3 100644 --- a/src/subscriber_camera.cpp +++ b/src/subscriber_camera.cpp @@ -43,7 +43,7 @@ void SubscriberCamera::callback(const sensor_msgs::ImageConstPtr& msg) { updateLastHeader(msg->header); - cv::Mat cv_image = cv_bridge::toCvShare(msg, msg->encoding)->image; + cv::Mat cv_image = cv_bridge::toCvCopy(msg, msg->encoding)->image; CaptureImagePtr cap = std::make_shared<CaptureImage>(TimeStamp(msg->header.stamp.sec, msg->header.stamp.nsec), @@ -51,4 +51,7 @@ void SubscriberCamera::callback(const sensor_msgs::ImageConstPtr& msg) cv_image); sensor_ptr_->process(cap); } + +WOLF_REGISTER_SUBSCRIBER(SubscriberCamera); + }