PCL库的学习(慢更)

一、模块

I/O模块

1、PCD文件格式

     PCD header包含:VERSION、FIELDS、SIZE、TYPE、COUNT、WIDTH、HEIGHT、VIEWPOINT、POINTS、DATA几部分内容。

VERSION表示PCD文件的版本。

FIELDS点云维度/场的名称。

SIZE表示每个维度的大小(bytes)。

TYPE每个维度的数据存储类型。

COUNT每个维度拥有的元素的个数。

WIDTH和HEIGHT表示点云数据集的宽/长(元素个数),无序的点云表示其总点数。

VIEWPOINT用于构建不同坐标系之间的转换或者添加法向量等辅助功能,格式为平移(tx ty tz)+四元数(qw qx qy qz)

POINTS点云数据集总点数

DATA存储的具体数据

顺序:VIEWPOINT

 

2、读取点云 

    初始化点云

 pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>);

    点云数据读取

 pcl::io::loadPCDFile<pcl::PointXYZ> ("test_pcd.pcd", *cloud) 

------------------------------------------------------------------------------------

与ROS交互时使用的点云类型为pcl::PCLPointCloud2,此时更倾向于使用binary blobs来加载点云:

pcl::PCLPointCloud2 cloud_blob;
pcl::io::loadPCDFile ("test_pcd.pcd", cloud_blob);
pcl::fromPCLPointCloud2 (cloud_blob, *cloud);//从PCL2转换为PCL

----------------------------------------------------------------------------------------------------

读取效果

3.自己创建一个点云并保存为PCD文件(截取了几行关键的命令)

pcl::PointCloud<pcl::PointXYZ> cloud;#初始化
cloud.resize (cloud.width * cloud.height);#改变点云的大小
pcl::io::savePCDFileASCII ("test_pcd.pcd",<点云名称>);

Filtering 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值