首页 > 解决方案 > PCL:仅使用一个坐标,如何找到一个点或所有可能点的剩余两个坐标?

问题描述

假设我有一个点云,我只知道一个点的一个坐标。例如,使用pcl::getMinMax3D()方法,我有 3 个最小值和 3 个最大值。

但是,问题是最小 X、Y 或 Z 值不一定对应于同一点!这些值很可能对应于三个不同的点。基本上,该方法返回最小(和最大值)值,而不是一个点。

因此,对任何坐标使用一个最小值或最大值,我想找到剩余的两个坐标,即最终是一个有效点或多个点。如何使用PCL(点云库)来做到这一点?

标签: c++computer-visionpoint-cloud-librarypoint-clouds

解决方案


只需使用 STL 算法:

auto point = std::min_element(cloud.begin(), cloud.end(), [](auto& p1, auto& p2) {return p1.x < p2.x; });

推荐阅读