I am working on ROS Indigo and I am trying to build a simple app that would show the image published by the Astra camera. I do this by subscribing to the following topic `/camera/rgb/image_raw`. But when running `catkin_make` I get the following error:
CMake Error at /home/turtlebot/catkin_ws/devel/share/image_transport/cmake/image_transportConfig.cmake:106 (message):
Project 'image_transport' specifies
'/home/turtlebot/catkin_ws/src/image_common/image_transport/include' as an
include dir, which is not found. It does neither exist as an absolute
directory nor in
'/home/turtlebot/catkin_ws/src/image_common/image_transport//home/turtlebot/catkin_ws/src/image_common/image_transport/include'.
Ask the maintainer 'Jack O'Quin , Vincent Rabaud
' to fix it.
Call Stack (most recent call first):
/opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:75 (find_package)
detect_green_object/CMakeLists.txt:3 (find_package)
Here is my code, CMakeLists.txt and package.xml
#include
#include
#include
#include
void imageCallback(const sensor_msgs::ImageConstPtr& msg)
{
try
{
cv::imshow("view", cv_bridge::toCvShare(msg, "bgr8")->image);
cv::waitKey(30);
}
catch (cv_bridge::Exception& e)
{
ROS_ERROR("Could not convert from '%s' to 'bgr8'.", msg->encoding.c_str());
}
}
int main(int argc, char **argv)
{
ros::init(argc, argv, "image_listener");
ros::NodeHandle nh;
cv::namedWindow("view");
cv::startWindowThread();
image_transport::ImageTransport it(nh);
image_transport::Subscriber sub = it.subscribe("/camera/rgb/image_raw", 1, imageCallback);
ros::spin();
cv::destroyWindow("view");
}
Here is my package.xml
detect_green_object 0.0.0 The detect_green_object package turtlebot TODO catkin cv_bridge roscpp rospy sensor_msgs std_msgs message_filters pluginlib rosconsole roslib image_transport tf cv_bridge roscpp rospy sensor_msgs std_msgs message_filters pluginlib rosconsole roslib image_transport tf
Here is my CMakeLists.txt
cmake_minimum_required(VERSION 2.8)
project( detect_green_object )
find_package(catkin REQUIRED
COMPONENTS
roscpp
cv_bridge
rospy
std_msgs
message_filters
pluginlib
rosconsole
roslib
sensor_msgs
image_transport
tf
OpenCV
)
find_package( Boost REQUIRED )
catkin_package(
LIBRARIES ${PROJECT_NAME}
DEPENDS roscpp rospy std_msgs cv_bridge message_filters pluginlib rosconsole roslib sensor_msgs image_transport tf
)
include_directories(
${catkin_INCLUDE_DIRS}
)
add_executable( detect_green_object detect_green_object.cpp )
target_link_libraries( detect_green_object ${OpenCV_LIBS} ${catkin_LIBRARIES} )
↧