我正在寻找3D中最近邻搜索的实现。
我目前正在使用scipy.spatial。问题是我需要经常更新树/索引,看起来像这个实现,每次我需要更新它时都会重建树,导致执行时间非常长。
我正在尝试解决的任务如下:对于大量3D点,将彼此太接近的点联合起来(比指定的间隙值更接近)。
我目前通过循环遍历点列表来解决这个问题,如果它没有任何太近的邻居,则为索引添加一个新点,并在找到一个邻居的坐标时为该点分配。 / p>
我很感激任何其他快速解决方案。
答案 0 :(得分:1)
对于快速最近邻搜索,我可以推荐flann(http://www.cs.ubc.ca/~mariusm/index.php/FLANN/FLANN)。对于pointclouds,我会尝试PCL(http://pointclouds.org/)。两者都有python绑定。
一个想法是使用PCL对点进行聚类并将聚类联合起来。 (segmentation.html“> HTTP://docs.pointclouds.org/trunk/group_segmentation.html)