【问题标题】:Fill empty space with PCL用 PCL 填充空白空间
【发布时间】:2018-03-22 07:34:43
【问题描述】:

我正在尝试使用 PCL 在“非地面”对象周围创建边界框并测量其尺寸。

我的管道如下所示:

获取XYZ云点→通过→体素网格→统计 轮廓去除→欧几里得聚类→惯性矩 估计 → 一些用于获取长度、宽度和高度的简单数学。

但我遇到了问题:

如您所见,地面和物体之间有一个“空白”空间,因为没有关于“内部”点的信息。这就是为什么我不能在我的对象周围创建适当的 AABB。

所以,我的问题是:我如何“重建”这个表面以在我的对象周围创建适当的 AABB?就像它站在地面上而不是飞行?我是 PCL 的新手,可能是我遗漏了一些琐碎的事情吗?

【问题讨论】:

    标签: computer-vision point-cloud-library image-preprocessing


    【解决方案1】:

    假设您的对象始终位于平坦的地面上,我建议您通过以下方式解决问题。首先,找出地平面的系数。其次,将对象点投影到该平面上以获得对象的“足迹”。最后,扩展您的边界框以包含投影点。

    PCL 中提供了您需要的算法。对于平面拟合,请查看this 教程。对于点投影,请使用以下 sn-p:

    pcl::ProjectInliers<pcl::PointXYZ> proj;
    proj.setModelType (pcl::SACMODEL_PLANE);
    proj.setInputCloud (cloud_object);
    proj.setModelCoefficients (plane_coefficients);
    proj.filter (*cloud_projected);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-12
      • 1970-01-01
      相关资源
      最近更新 更多