点云PCD文件格式及其在点云库中的应用
PCD数据格式的优势;
1.存储和处理有序点云数据集的能力
2.二进制数据类型是把数据下载和存储到磁盘最快的方法
3.储存不同的数据类型
4.特征描述子n维直方图-——对于3D识别和计算机视觉应用十分重要。
PCD版本类型
在点云库(pcl)1.0版本发布之前,PCD文件格式有不同的修订号。用PCD_Vx来编号(such as : PCD_V5、PCD_V7),代表PCD文件中的0.x版本号。例如:PCD_V7指的是PCD文件格式是0.7版本。
文件头格式
每一个PCD文件都包含一个文件头,它是确定和声明文件中存储的点云数据的某种特性。PCD头文件必须用ASCII码来编码。PCD文件中指定的每一个文件头字段以及ASCII点数据都用一个新行(\n)分开,从PCD_V7开始,PCD头文件包含以下字段。
如何查看PCD文件
选择需要查看的PCD文件,右键打开方式,选择记事本打开。
VERSION: 指的是PCD文件版本
FIELDS: 指的是指定一个点可以有的每一个维度和字段的名字。例如:
FIELDS x y z rgba:指的是点云中的三维数据和颜色信息//XYZ+RGB( a 表示的应该是透明度)
SIZE:用字节数指定每一个维度的大小。
TYPE:用一个字符指定每一个维度的类型
I表示有符号类型int8(char)、int16(short)、int32(int);
U表示无符号类型uint8(unsigned char)、uint16(unsigned short)和uint32(unsigned int)。
F表示浮点类型
COUNT:指定每一个维度包含的元素数目。例如:x这个数据通常有一个元素,但是像VFH这样的特征描述子就有308个。实际上这是在给每一个点引入n维直方图描述的方法,把它们当做一个单个的连续存储块。如果没有COUNT,默认情况下,所有维度的数目均被设置为1。
WIDTH:用点的数量表示表示点云数据集的宽度。根据有序点云还是无序点云,对WIDTH作出了俩种解释。
注:有序点云数据集,意味着点云是类似于图像(或者矩阵的结构),数据分为行和列
HEIGHT:用点的数目表示点云数据集的高度
有序点云实例:
WIDTH = 40 // 改点云为有序点云,有40行和80列
HEIGHT = 80 //该数据集中共有4080 = 3200 个点
无序点云实例:
WIDTH =273484
HEIGHT = 1 // 有WIDTHHEIGHT个点的无序点云数据集
POINTS: 指的是点云中点的总数
DATA:指的是指定点云数的数据类型,从PCD_V7(也就是0.7版本以后),支持俩种数据类型:ASCII和二进制。
如果点云数据以ASCII形式,每一个点占据一个新行