ROS自学笔记二十七:导航中相机消息

深度相机相关消息有:sensor_msgs/Image、sensor_msgs/CompressedImage、sensor_msgs/PointCloud2

sensor_msgs/Image 对应的一般的图像数据,sensor_msgs/CompressedImage 对应压缩后的图像数据,sensor_msgs/PointCloud2 对应的是点云数据(带有深度信息的图像数据)。

sensor_msgs/Image:

sensor_msgs/Image 用于表示图像数据,通常是从相机或其他图像传感器中获取的。这个消息包括图像的像素数据、编码格式、时间戳等信息。

以下是 sensor_msgs/Image 消息的字段:

header:消息头,包括时间戳和坐标系信息。

height:图像的高度(像素数)。

width:图像的宽度(像素数)。

encoding:图像数据的编码格式,通常是像素的颜色表示方式(例如,'rgb8' 表示红绿蓝8位色彩编码)。

is_bigendian:图像数据的字节序,通常是小端序(False)。

step:图像的行步长(bytes per row),通常等于图像宽度乘以像素深度(如RGB图像的3)。

data:图像的像素数据,以一维数组的形式存储,通常使用字节数组来表示图像的像素值

复制代码
std_msgs/Header header
  uint32 seq
  time stamp
  string frame_id
uint32 height #高度
uint32 width  #宽度
string encoding #编码格式:RGB、YUV等
uint8 is_bigendian #图像大小端存储模式
uint32 step #一行图像数据的字节数,作为步进参数
uint8[] data #图像数据,长度等于 step * height

sensor_msgs/CompressedImage:

sensor_msgs/CompressedImage 用于表示经过压缩的图像数据。这个消息包括压缩后的图像数据、编码格式和时间戳等信息。

以下是 sensor_msgs/CompressedImage 消息的字段:

header:消息头,包括时间戳和坐标系信息。

format:图像数据的编码格式(例如JPEG、PNG等)。

data:经过压缩的图像数据,以字节数组的形式存储。

复制代码
std_msgs/Header header
  uint32 seq
  time stamp
  string frame_id
string format #压缩编码格式(jpeg、png、bmp)
uint8[] data #压缩后的数据

sensor_msgs/PointCloud2:

sensor_msgs/PointCloud2 用于表示点云数据,这些数据通常由激光雷达或深度相机等传感器采集。这个消息包括点云的位置信息、颜色信息、时间戳等。

以下是 sensor_msgs/PointCloud2 消息的字段:

header:消息头,包括时间戳和坐标系信息。

height:点云数据的高度,通常为1,表示点云是一个单行数据。

width:点云数据的宽度,表示点的数量。

fields:描述每个点包含的数据字段的规范,包括名称、偏移、数据类型等。

is_bigendian:点云数据的字节序,通常是小端序(False)。

point_step:每个点的字节数。

row_step:如果点云数据存储方式为按行存储,这个字段描述每一行的字节数;通常等于 point_step * width。

data:点云数据的字节数组,包括所有点的坐标和属性数据。

复制代码
std_msgs/Header header
  uint32 seq
  time stamp
  string frame_id
uint32 height #高度
uint32 width  #宽度
sensor_msgs/PointField[] fields #每个点的数据类型
  uint8 INT8=1
  uint8 UINT8=2
  uint8 INT16=3
  uint8 UINT16=4
  uint8 INT32=5
  uint8 UINT32=6
  uint8 FLOAT32=7
  uint8 FLOAT64=8
  string name
  uint32 offset
  uint8 datatype
  uint32 count
bool is_bigendian #图像大小端存储模式
uint32 point_step #单点的数据字节步长
uint32 row_step   #一行数据的字节步长
uint8[] data      #存储点云的数组,总长度为 row_step * height
bool is_dense     #是否有无效点
相关推荐
xian_wwq1 小时前
【学习笔记】Milvus 如何完成一次向量相似度检索,Milvus 索引到底应该怎么选?-15
笔记·学习·milvus
wujiuhsu4 小时前
图片里的简体中文怎么翻译成繁体?商品图、详情页和海报批量转换方法
经验分享·笔记
moonsims6 小时前
面向高危现场作业空间安全智能节点AiBrainBox-S:多模态空间融合、动态风险区、身份-视觉轨迹关联、设备级实时安全推理
人工智能·数码相机·无人机
keyipatience7 小时前
JS学习笔记(2)数组,函数,作用域,对象
前端·javascript·笔记·学习·html
你想知道什么?8 小时前
词向量总结-学习笔记
人工智能·笔记·学习
He BianGu8 小时前
【笔记】WPF中RenderOptions类的详细功能
笔记·wpf
用AI来创业吧8 小时前
网站建设公司哪家好:报价差 3 倍,差在哪四项成本上(选型笔记)
笔记·性能优化·软件工程·安全威胁分析
福大大架构师每日一题9 小时前
ComfyUI v0.40.0发布:资产系统、原生 LoRA 堆栈、Qwen 3.5、3D 输出、相机节点与多项合作节点全面更新
数码相机·3d
一支蜉蝣9 小时前
Day25 XD安全笔记 安全开发-PHP 应用&文件管理模块&包含&上传&遍历&写入&删除&下载&安全
笔记·网络安全·php
Awh-10 小时前
ARM 裸机开发 DAY10 学习笔记
arm开发·笔记·学习