我正在研究 scipy 库中的 KDTree 实现,发现自己对这行 https://github.com/scipy/scipy/blob/master/scipy/spatial/kdtree.py#L314-L319 有点困惑
side_distances = np.maximum(0,np.maximum(x-self.maxes,self.mins-x))
if p != np.inf:
side_distances **= p
min_distance = np.sum(side_distances)
else:
min_distance = np.amax(side_distances)
谁能解释一下为什么初始 min_distance
是这样计算的?
最佳答案
min_distance
是 p-norm side_distances
的距离,它又是沿每个维度从 x
到边界框(带内部)的距离。换句话说,min_distance
是从 x
到边界框最近点的距离。
关于python - KDTree Python 实现细节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31150323/