如果用ros的 image_transport::Publisher 发布图片的话则,ros会自动添加一个 image/compressed的topic,将原始图像编码,编码方式可以设置为png\jpeg.
有时候我们获取到的图片就是编码之后的数据,这个时候如果将解码转成 cv::Mat 再pub的话 性能开销比较大,并且数据损失更大. 所以我们可以直接pub compressed.
注意 我们使用的并不是 compressed_publisher

 #include <>ros::init(argc, argv, "nodename");ros::NodeHandle nh;ros::Publisher pub = nh.advertise<sensor_msgs::CompressedImage>("node/image/compressed", 100);sensor_msgs::CompressedImage jpeg_img;jpeg_img.format = "jpeg";jpeg_img.header.stamp.sec = times;jpeg_img.header.stamp.nsec = timeu*1000;jpeg_img.header.seq = kSeq++;// pimage :pointer to jpeg image buffer// image_pos : buffer sizestd::vector<unsigned char> jpeg_buffer(pimage, pimage+image_pos);jpeg_img.data.swap(jpeg_buffer);pub.publish(jpeg_img);

ROS直接pub compressed image.相关推荐

  1. ROS image_transport使用笔记

    简介 image_transport应该总被用在image订阅和发布上.它为低带宽压缩格式(compressed formats)image传输提供透明支持.例如:为JPEG/PNG压缩和视频流提供单 ...

  2. 基于ROS的语音控制机器人(一):基本功能的实现

    文章目录 目录 文章目录 前言 一.ubuntu16.04和树莓派安装ROS-kinetic 二.树莓派和PC机之间的ros通信 1.修改环境变量 2.数据通信 三.科大讯飞sdk下载 四.树莓派和S ...

  3. ROS的一些基础的知识,自用

    零散小知识 先参考这个博客. 再参考这个博客总结的知识点 查看当前所以发布的话题名 rostopic list //让ros一直调用回调函数,ros::spin如下的代码无效函数 ros::spin( ...

  4. ROS系统——部署OpenVINO版Nanodet超轻量目标检测器

    目录 0 背景 本人的实测效果: 1 环境搭建 2 先熟悉OpenVINO版nanodet的流程 3  在ROS里部署openvino版nanodet的流程 4 源码 4.1 main.cpp内容 4 ...

  5. ROS系统中实现点云聚类(realsense数据源)

    本文主要介绍ROS系统中如何订阅并解码realsense点云数据,并对点云进行稀疏.去噪.聚类. 环境配置见<ROS系统中从零开始部署YoloV4目标检测算法(3种方式)> 需要安装的第三 ...

  6. ROS之自定义msg

    一. 配置步骤,建立文件过程参考古月居的书,修改xml文件和CMakeList文件参考下面链接.注意不使用  <run_depend>message_runtime</run_dep ...

  7. ROS与Arduino学习(三)订阅与发布

    ROS与Arduino学习(三)订阅与发布 Tutorial Level:HelloWorld Next Tutorial:用ROS的Cmake编译程序 本节介绍如何在arduino中发布与订阅消息. ...

  8. ros机器人导航设置原点,目标点

    之前利用movebase导航定位都是通过rviz用鼠标指来指去,实验时非常方便,但实际应用总不能也人工指来指去吧,这怎么体现智能呢 启动导航后,用以前使用的rviz设设置目标点来获取map坐标系下的位 ...

  9. ROS在类中发布和接受消息(自定义消息)

    一开始建立pkg: mkdir -p ~/catkin_ws/src cd ~/catkin_ws/ catkin_make cd ~/catkin_ws/src catkin_create_pkg ...

最新文章

  1. HTML5 canvas绘制雪花飘落
  2. 利用github-pages建立个人博客
  3. mro python_用python实现MRO算法
  4. php 标点符号反转,PHP删除标点符号(无破折号)
  5. HTML渲染过程详解
  6. 一开机就提示脱机工作_「华为手机维修自学教程」华为手机的开机触发电路 华为维修技巧...
  7. ipconfig和ping 命令的各种参数
  8. Linux字符串转换函数汇总
  9. 搞清字符集和字符编码
  10. 数据分析之处理丢失数据
  11. Android 事件拦截分发
  12. linux wrf软件安装,wrf安装
  13. 占空比可调的分频电路实现
  14. 将Jetson XavierNX的Ubuntu系统迁移至到nvme固态硬盘上
  15. PhysX官方手册翻译(Dynamics)
  16. 一个公众号可以绑定几个小程序_微信开放平台可以绑定几个小程序和公众号?...
  17. 基于java+SpringBoot+HTML+Mysql旅游网站设计与实现
  18. C语言逻辑语句问题集锦
  19. 这就是我英语 来自http://www.uuseenews.com.cn/
  20. 魏小亮:如何选择硅谷的IT公司

热门文章

  1. 阿里云+宝塔+狂雨小说CMS:搭建小说网站
  2. 苹果ipad有哪几款_苹果iPad必备的几款iOS黑科技APP,好用到不想卸载,提高生产力!...
  3. IOS开发语言Swift入门连载---类型转换
  4. android windowmanager 动画,Android WindowManager及其动画问题
  5. python的time模块
  6. C语言读取和写入txt文本
  7. 语音信号处理-1-----语音信号预处理
  8. invalidateProperties
  9. 不会踩雷的耳机有哪些?音质好的蓝牙耳机推荐
  10. 3 赫斯曼网管软件industry hivision申请序列号