使用 PCL OctreePointCloudVoxelCentroid 栅格化点云

Posted

技术标签:

【中文标题】使用 PCL OctreePointCloudVoxelCentroid 栅格化点云【英文标题】:Rasterize pointcloud with PCL OctreePointCloudVoxelCentroid 【发布时间】:2021-06-11 12:10:28 【问题描述】:

我尝试通过 PCL::OctreePointCloudVoxelCentroid 栅格化 X-0-Z 点云,以便之后在点云上使用一些图像处理算法。但输出不是我所期望的。如果至少一个点在一个盒子里,我想要轴对齐八叉树中每个盒子的质心。八叉树的边界框应该很好定义。 对于测试,我使用 4 个点: (-1.8000000 1 -1.8000000) (-1.4000000 1 -1.4000000) (-0.5000000 1 0.4000000) (0.4000000 1 1.8000000)

我使用的代码:

pcl::octree::OctreePointCloudVoxelCentroid<pcl::PointXYZ> octree (1.0f);
octree.defineBoundingBox(-2.0,-1.5,-2.0,2.0,2.5,2.0);
octree.setInputCloud (fourpoints);
octree.addPointsFromInputCloud ();

黑色:原点;红色:算法输出;绿色:想要​​的点。 算法输出:坐标(-1.6 1 -1.6)(-0.5 1 0.4)(0.4 1 1.8)

【问题讨论】:

【参考方案1】:

OctreePointCloudOccupancy 而不是 OctreePointCloudVoxelCentroid 解决了我的问题。

【讨论】:

以上是关于使用 PCL OctreePointCloudVoxelCentroid 栅格化点云的主要内容,如果未能解决你的问题,请参考以下文章

pcl总结

在 pcl 中使用“addpointcloud”时出错

PCL的PCL语言

当我们使用 gs 命令将 ps 转换为 pcl 文件时如何减小 PCL 文件大小

PCL学习笔记:环境安装

PCL学习笔记:环境安装