ros中调用opencv绘图测试

环境安装

代码

cpp 复制代码
#include <ros/ros.h>
#include <stdio.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>
 
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/hjb/test_ros/src/opencv_test/pictures/1.png");
  // if(cv_image.empty() )
  //   {
  //       ROS_ERROR("Read the picture failed!");
  //       return -1;
  //   }
  cv::Mat cv_image(600, 800, CV_8UC3, cv::Scalar(255, 255, 255)); // 创建一个300x300像素的画布
 
  //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::circle(cv_image, cv::Point(0, 0), 100, cv::Scalar(0, 0, 255), -1);
  cv::imshow(WINDOW,cv_image);
  cv::waitKey(0);

 
  ros::spin();
  return 0;
}
相关推荐
pen-ai1 分钟前
【优化方法】最小二乘:从误差平方到线性与非线性拟合
人工智能·算法·机器学习
宸津-代码粉碎机9 分钟前
Spring AI 高危CVE漏洞深度复盘|生产禁跑版本汇总+临时防御+修复方案
java·大数据·人工智能·python·spring
不要生病了16 分钟前
MinD-Vis:用稀疏掩码预训练和双条件扩散从 fMRI 重建视觉图像
人工智能·计算机视觉·脑机接口
天远API18 分钟前
零信任架构实战:基于天远全能消金报告构建自动化消费分期网关
运维·人工智能·架构·自动化
weifont21 分钟前
已为你安排相关自动化工具,请查收
人工智能
luckystar513~21 分钟前
每日AI资讯(2026-09-13)
人工智能·ai·ai资讯·每日资讯
syounger25 分钟前
SAP认证走过30年:考试开始允许使用AI,证书价值正在被重新定义
人工智能
YOLO数据集集合40 分钟前
洪水场景建筑与植被检测数据集 | 洪水检测 建筑识别 植被监测 灾情评估 目标检测9073期
人工智能·目标检测·机器学习·计算机视觉·目标跟踪·无人机视角·灾害救援
人工智能AI技术43 分钟前
AI Agent 接入MCP:不用重复造轮子,外部工具一键接入
人工智能
词却1 小时前
OpenCV学习:dlib 人脸检测
人工智能·opencv·学习