PCL中可用的PointT类型:

PointXYZ——成员变量:float x,y,z;

PointXYZ是使用最常见的一个点数据类型,因为他之包含三维XYZ坐标信息,这三个浮点数附加一个浮点数来满足存储对齐,可以通过points[i].data[0]或points[i].x访问点X的坐标值

union
{
float data[];
struct
{
float x;
float y;
float z;
};
};

PointXYZI——成员变量:float x,y,z,intensity

PointXYZI是一个简单的X Y Z坐标加intensity的point类型,是一个单独的结构体,并且满足存储对齐,由于point的大部分操作会把data[4]元素设置成0或1(用于变换),

不能让intensity与XYZ在同一个结构体中,如果这样的话其内容将会被覆盖,例如:两个点的点积会把第四个元素设置为0,否则点积没有意义,

union{
float data[4];
struct
{
float x;
float y;
float z;
};
};
union{
struct{
float intensity;
};
float data_c[4];
};

PointXYZRGBA——成员变量:float x,y,z;uint32_t  rgba  除了RGBA信息被包含在一个整型变量中,其他的和PointXYZI类似

union{
float data[];
struct
{
float x;
float y;
float z;
};
};
union{
struct{
float rgba;
};
float data_c[];
};

PointXYZRGB——float x,y,z,rgb   除了RGB信息被包含在一个浮点数据变量中,其他的和 PointXYZRGBA

union{
float data[];
struct
{
float x;
float y;
float z;
};
};
union{
struct{
float rgb;
};
float data_c[];
};

PointXY——成员变量:float x,y        简单的二维x-y结构代码

struct{
float x;
float y;
};

InterestPoint——成员变量:float x,y,z,strength除了strength表示关键点的强度测量值,其他的和PointXYZI

union{
float data[];
struct
{
float x;
float y;
float z;
};
};
union{
struct{
float strength;
};
float data_c[];
};

Normal——成员变量:float normal[3],curvature;

另一个常用的数据类型,Normal结构体表示给定点所在样本曲面上的法线方向,以及对应曲率的测量值,例如访问法向量的第一个坐标可以通过points[i].data_n[0]或者points[i].normal[0]或者points[i]

union{
float data_n[]
float normal[];
struct
{
float normal_x;
float normal_y;
float normal_z;
};
};
union{
struct{
float curvature;
};
float data_c[];
};

PointNormal——成员变量:float x,y,z;   float normal[3] ,curvature ;  PointNormal是存储XYZ数据的point结构体,并且包括了采样点的法线和曲率

union{
float data[];
struct
{
float x;
float y;
float z;
};
}; union{
float data_n[]
float normal[];
struct
{
float normal_x;
float normal_y;
float normal_z;
};
};
union{
struct{
float curvature;
};
float data_c[];
};

未完待续***************************************88888888888

备注:关于点云库PCL的学习,可以扫描二维码关注公众号,有兴趣的可以直接在公众号回复与我交流,相互学习,

PCL中可用的PointT类型的更多相关文章

  1. PCL中有哪些可用的PointT类型(2)

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=267 PointXY-float x, y; 简单的二维x-y point结 ...

  2. PCL中有哪些可用的PointT类型(1)

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=266 为了涵盖能想到的所有可能的情况,PCL中定义了大量的point类型.下 ...

  3. PCL中有哪些可用的PointT类型(4)

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=269 PointWithViewpoint - float x, y, z, ...

  4. PCL中有哪些可用的PointT类型(3)

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=268 PointXYZRGBNormal - float x, y, z, ...

  5. PCL中有哪些可用的PointT类型(5)

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=270 Narf36 - float x, y, z, roll, pitch ...

  6. kd-tree理论以及在PCL 中的代码的实现

    (小技巧记录:博客园编辑的网页界面变小了使用Ctrl  ++来变大网页字体) 通过雷达,激光扫描,立体摄像机等三维测量设备获取的点云数据,具有数据量大,分布不均匀等特点,作为三维领域中一个重要的数据来 ...

  7. PCL中IO模块和类的介绍

    I/O模块中共有21个类 (1)class pcl::FIleReader:定义了PCD文件的读取接口,主要用作其他读取类的父类   pcl::FileReader有pcl::PCDReader和pc ...

  8. 如何在模板类中使用这些point类型?

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=271 由于PCL模块较多,并且是一个模板库,在一个源文件里包含很多PCL算法 ...

  9. 基于传统方法点云分割以及PCL中分割模块

      之前在微信公众号中更新了以下几个章节 1,如何学习PCL以及一些基础的知识 2,PCL中IO口以及common模块的介绍 3,PCL中常用的两种数据结构KDtree以及Octree树的介绍    ...

随机推荐

  1. python3 装饰器应用举例

    [引子] python 中的装饰器是oop(面向对象编程)设计模式.之装饰器模式的一个应用.由于有语法糖衣的缘故.所以写起来也更加方便 [从一个比较经典的应用场景来讲解装饰器] 有过一定编程经历的工程 ...

  2. JS两日期相减

    JS两日期相减,主要用到下面两个方法 dateObject.setFullYear(year,month,day) 方法 stringObject.split(separator) 方法 functi ...

  3. Atitit spring 3.0 3.1 3.2 4.0 4.3 5.0 新特性

    Atitit spring 3.0 3.1 3.2 4.0 4.3 5.0 新特性 Spring3.0的新特性及其分析 - 我的人生不甘于平庸! - ITeye技术网站.html Spring3.0带 ...

  4. Atitit vue.js 把ajax数据 绑定到form表单

    Atitit vue.js 把ajax数据 绑定到form表单 1.1. 使用场景:主要应用在编辑与提交场合..1 1.2. 绑定数据到form控件,可以使用jquery,不过vue.js更加简单1 ...

  5. Ultraedit使用小技巧

    4. 编辑文件如何加入时间戳 ?F7 快捷键即可.你试试看? 5. 为何拷贝(Copy)/粘贴(Paste)功能不能用了?不怕大家笑话,我有几次使用 UltraEdit的过程中发现拷贝与粘贴的内容是不 ...

  6. [na]wireshark排查打印机问题

    抓包工具排除故障 前言:上网慢,可能是内网堵了.装上wireshark,可抓到广播包,多播包,以及发给自己的包.如果想抓lan内其他人之间的通信包,那就要在sw上做端口镜像. 1.背景 调试打印机的人 ...

  7. 通过纯代码方式发布WCF服务

    网络上搜索WCF服务,一般是寄宿在IIS,通过WebConfig方式配服务地址,接口类型等信息,但是对于我这样的懒人,目前项目在开发阶段,实在不愿意每次添加新服务就更新配置文件,于是使用了反射来加载服 ...

  8. python-计算数据的相关性

    先解释下什么叫数据的相关性: 计算两个数组的平均值,如果两个数组中的两个值都大于平均值或者都小于平均值,则得到true. 如果一个大于平均值一个小于平均值,则得到false.最后计算true和fals ...

  9. 每日英语:How to Save Detroit

    Detroit is beautiful-though you probably have to be a child of the industrial Midwest, like me, to s ...

  10. Android下基于SDL的YUV渲染

    实战篇 本文主要参考我之前整理的文章windows下使用SDL进行YUV渲染. 相对于之前写的位图渲染部分(http://www.cnblogs.com/tocy/p/android-sdl-bitm ...