- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个描述空间曲线的 numpy 数组,它们在一个点上相交,我想在两个数组中为该交点找到最近的值,我有这段代码可以正常工作,但它会慢很多点数。
from scipy import spatial
def nearest(arr0, arr1):
ptos = []
j = 0
for i in arr0:
distance, index = spatial.KDTree(arr1).query(i)
ptos.append([distance, index, j])
j += 1
ptos.sort()
return (arr1[ptos[0][1]].tolist(), ptos[0][1], ptos[0][2])
结果将是 (<point coordinates>,<position in arr1>,<position in arr0>)
最佳答案
您的代码做了很多您不需要的事情。首先,您要在每个循环中重建 KDtree,这是一种浪费。此外,query
采用点数组,因此无需编写自己的循环。 Ptos 是一种奇怪的数据结构,您不需要它(也不需要对其进行排序)。尝试这样的事情。
from scipy import spatial
def nearest(arr0, arr1):
tree = spatial.KDTree(arr1)
distance, arr1_index = tree.query(arr0)
best_arr0 = distance.argmin()
best_arr1 = arr1_index[best_arr0]
two_closest_points = (arr0[best_arr0], arr1[best_arr1])
return two_closest_points, best_arr1, best_arr0
如果仍然不够快,您需要更详细地描述您的问题,并确定是否有另一种搜索算法更适合您的问题。
关于python找到两个numpy数组的交点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36020959/
我创建了一个函数来计算两条线段的交点。 不幸的是,如果其中一个段是垂直的,下面的代码将不起作用 public static Point intersection(Segment s1, Seg
我有一个由中心 (x,y,z)、半径和方向矢量定义的圆,该矢量指定圆的朝向。我需要测试这样的圆是否与轴对齐的边界框相交。为了澄清,通过相交,我的意思是如果圆圈描述的区域内的任何点在边界框内,那么就构成
虽然我认为这是一个基本问题,但我似乎无法找到如何在 R 中计算: 2 个或多个正态分布(拟合在直方图上)的交点(我需要 x 值),例如具有以下参数: d=data.frame(mod=c(1,2),m
我看过几个关于找到两个 OBB 之间的交点的线程。我仍然不明白如何找到最小穿透轴。我需要找到最小穿透轴,我相信它在 David Eberly 的论文中也被称为最后一个分离轴,以确定我应该使用表格的哪一
我想使用 intersection()通过 key 或filter()在 Spark 。 但是我真的不知道怎么用intersection()按键。 所以我尝试使用filter() ,但它不起作用。 示
我正在画一个circle在canvas上。我想知道,给定 circle 的半径和原点 x/y ,在什么时候 circle与 canvas 相交(如果有的话)边缘。 这肯定是一个几何问题,但这部分似乎太
我正在尝试计算任意数量平面的最顶部交点,但没有任何乐趣!我正在使用 actionscript,但只需要找到一个我可以实现的算法。 问题: 考虑 3 个垂直轴。 用户为每个三角形/平面输入 3 个点,使
我是一名优秀的程序员,十分优秀!