在3D空间中找到python numpy.ndarray的最近邻居

时间:2019-01-09 16:42:07

标签: python python-3.x numpy nearest-neighbor numpy-ndarray

我有一个3d点的numpy.ndarray,即它的np.shape是(4350,3),而第二个3d点的numpy.ndarray是np.shape(10510,3)。 现在,我试图找到合适的python-package,以尽快计算第二个数组中的点中第二个数组中最近的邻居。

我在这里找到了一个非常类似的问题:find the k nearest neighbours of a point in 3d space with python numpy 但我不明白如何使用解决方案解决我的问题。

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

这是KDTree的方式:

from scipy.spatial import KDTree

data= np.random.rand(10510,3)
sample= np.random.rand(4350,3)
kdtree=KDTree(data)

然后dist,points=kdtree.query(sample,2)将在大约一秒钟的时间内为4350名候选人提供2个最佳邻居。