ubuntu20.04+opencv4.5.5

ubuntu20.04+opencv4.5.5,第1张

ubuntu20.04+opencv4.5.5

环境:
ubuntu20.04
opencv4.5.5
ros: noetic

参考链接:
在ROS中使用OpenCV进行简单的图像处理
ROS中使用opencv
第一个链接注释比较多,第二个链接是搞定的,成功的界面是这样的:

读取opencv的程序:

#include 
#include 
#include 
#include 
#include 
#include 
#include 
 
static const char WINDOW[] = "Image window";
static void help()
{
    printf("nThis program demonstrates converting OpenCV Image to ROS Image messages  n"
        );
 
}
 
int main(int argc, char** argv)
{
  help();
  ros::init(argc, argv, "image_converter");
 
  //Reading an image from the file
  cv::Mat cv_image = cv::imread("/home/qiao/1.png");
  if(cv_image.empty() )
    {
        ROS_ERROR("Read the picture failed!");
        return -1;
    }
 
  //Convert OpenCV image to ROS message
  ros::NodeHandle node;
  image_transport::ImageTransport transport(node);
  image_transport::Publisher image_pub; 
  image_pub=transport.advertise("OutImage", 1);
  ros::Time time=ros::Time::now(); 
 
  cv_bridge::CvImage cvi;
  cvi.header.stamp = time;
  cvi.header.frame_id = "image";
  cvi.encoding = "bgr8";
  cvi.image = cv_image;
 
  sensor_msgs::Image im;
  cvi.toImageMsg(im);
  image_pub.publish(im);
  ROS_INFO("Converted Successfully!");
 
  //Show the image
  cv::namedWindow(WINDOW);
  cv::imshow(WINDOW,cv_image);
  cv::waitKey(0);
 
  ros::spin();
  return 0;
}

后面还需要编译:

mkdir -p 工作区/src
cd 工作区/src
catkin_init_workspace
catkin_create_pkg 工作区 sensor_msgs cv_bridge roscpp std_msgs image_transport
find_package(OpenCV REQUIRED)


include_directories(include ${OpenCV_INCLUDE_DIRS})
include_directories(include ${catkin_INCLUDE_DIRS})
 
add_executable(工作区_node src/工作区_node.cpp)
target_link_libraries(工作区_node ${catkin_LIBRARIES} ${OpenCV_LIBRARIES})
add_dependencies(工作区_node 工作区_gencpp)


cd 工作区
catkin_make

然后就是运行:

roscore
source devel/setup.bash
rosrun 工作区 cpp文件的名字

至此能正确显示图像,流程也是没有问题的。

不过有几个问题我没理清楚:

    opencv是我编译好的4.5.5么,还是ROS自带的?收端怎么收的?
    等我整明白了来还愿!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5714055.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存