首页 > 其他分享 >PCL 点云基础

PCL 点云基础

时间:2023-09-05 21:24:10浏览次数:36  
标签:PCL msgs 基础 类型 pcl 点云 sensor

PCL 点云基础:

 

一、概念
1、点云的结构公共字段
        PCL包含一个重要的数据结构,被设计成一个模板类,把点的类型当做模板类的参数。
        header:pcl::PCLHeader 记录了点云的获取时间
        points:std::vector<PointT,...>储存所有点的容器
        width:指定点云组织成图像时的宽度
        height:指定点云组成图像时的高度
        is_dense: 指定点云中是否有无效值
        sensor_origin_:是Eigen::Vector4f类型,传感器相对于原点平移所得的位姿
        sensor_orientation_:是Eigen::Quaternionf类型,定义传感器旋转所得的位姿
2、点云的类型
       PointT是pcl::PointCloud类的模板参数,定义点云的类型

 

       pcl::PointXYZ 位置 
       pcl::PointXYZI 位置+亮度 

       pcl::PointXYZRGBA 位置+颜色+透明度
       pcl::PointXYZRGB 位置+颜色
       pcl::Normal 表示曲面上给定点处的法线以及测量的曲率
       pcl::PointNormal 曲率信息+位置

3、ROS的PCL接口,定义不同的消息类型去处理点云的数据

 

      std_msgs::Header 不是真的消息类型,它包含发送的时间、序列号等

 

      sensor_msgs::PointCloud2 用来转换pcl::PointCloud类型

 

      pcl_msgs::PointIndices 储存点云的索引

 

      pcl_msgs::PolygonMesh 保存了描绘网格、定点和多边形

 

      pcl_msgs::Vertices 将一组定点的索引保存在数组中

 

      pcl_msgs::ModelCoefficients 储存一个模型的不同系数,如描述一个平面需要四个参数

 

用函数转换消息

 

     void fromPCL(const <PCL Type> &,<ROS Message type> &)

 

     void fromPCL(const pcl::PointCloud<T> &, sensor_msgs::PointCloud2 &)

 

原文链接:https://blog.csdn.net/HUASHUDEYANJING/article/details/123367811

标签:PCL,msgs,基础,类型,pcl,点云,sensor
From: https://www.cnblogs.com/Jack-Elvis/p/17680822.html

相关文章

  • 1 C++基础问题总结
    C++基础1C和C++有什么区别?C++是面向对象,C面向过程C++引入new/delete运算符,取代了C中的malloc/free库函数;C++有引用的概念,C没有C++有类的概念,C没有C++有函数重载,C没有2a和&a有什么区别?比如inta[10];int(*p)[10]=&aa是数组名,是数组首元素地址,+1表示地址值加上一......
  • 【C++STL基础入门】队列的基础使用
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档@TOC前言C++标准模板库(STL)提供了一系列强大的容器和算法,方便我们在编程中处理数据和实现各种功能。其中,queue(队列)是STL中的一个重要容器,用于按照先进先出(FIFO)的顺序处理元素。本文将介绍queue的基础使用方法,帮助读者初......
  • [编程基础] Python内置模块collections使用笔记
    collections是Python标准库中的一个内置模块,它提供了一些额外的数据结构类型,用于增强Python基础类型如列表(list)、元组(tuple)和字典(dict)等。以下是对collections模块中主要数据结构类的概述:namedtuple:命名元组,创建一个带有名称的tuple,并且可以通过名称访问元素。deque:双端队列,可......
  • Python文件的基础操作(2)
    Python文件的基础操作(2)二进制模式下读写操作练习控制文件内指针(光标)的移动文件的修改函数的介绍练习#小练习:编写拷贝工具 1.让用户输入被拷贝的文件路径(源文件路径)2.输入即将要拷贝的文件路径(目标文件路径)3.以读的模式打开源文件,以写的模式打开目标......
  • 【JAVA基础】基本数据类型
    Java数据类型简介Java语言中的数据类型分为两大类,分别是基本类型和引用类型。程序中需要处理许多数据,对于不同数据都有其对应的数据类型,其实就是在内存中开辟一个存储空间来存放数据,不同数据所开辟的内存大小也会不一样。Java基本数据类型Java基本类型共有八种,基本类型可以分为......
  • 让AI辅助您做数字营销-AI基础系列文章第22篇
    您的关注是对我最大的支持......
  • 1,mysql基础:mysql的安装,mysql的基本数据类型
    第一章安装1,windows安装https://dev.mysql.com/downloads/mysql/如果是msi的安装包,一步步安装就可以,如果是zip包,解压后需要设置在存在有bin文件夹的同目录新建一个my.ini文件加入一下代码:[mysqld]#设置3306端口port=3306#设置mysql的安装目录basedir=C:\ProgramFi......
  • 【matplotlib基础】--刻度
    Matplotlib中刻度是用于在绘图中表示数据大小的工具。刻度是坐标轴上的数字或标签,用于指示数据的大小或值,通常以整数或小数表示,具体取决于坐标轴的类型和限制。1.主次刻度默认的绘制时,坐标轴只有默认的主要刻度,如下所示:frommatplotlib.tickerimportMultipleLocatorx=......
  • HTML基础知识
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>Document</title><......
  • 入门篇-其之二-Java基础知识
    目录对第一个Java程序的思考外层结构——类内层结构——main方法输出语句注释单行注释多行注释文档注释文档注释常用标签使用javadoc命令生成网页风格的文档阿里巴巴Java开发手册关于文档注释的规范关键字标识符变量变量的概念定义并初始化变量使用变量的注意事项对第一个Java程......