gpt4 book ai didi

python - 在二维网格上使用 numpy/scipy 进行插值

转载 作者:行者123 更新时间:2023-11-30 22:18:01 26 4
gpt4 key购买 nike

我在二维图像网格上有两个数据点,并且这两个点处的某些感兴趣量的值是已知的。

例如:

让我们考虑一下x=(2,2)这一点。然后考虑 4 网格邻域,我们将点 x_1=(1,2)、x_2=(2,3)、x_3=(3,2)、x_4=(2,1) 作为邻域x。假设这些点处某个感兴趣数量的值为 y=5、y_1=7、y_2=8、y_3= 10、y_4 = 3。通过插值,我想在子像素值处找到 y,例如 (2.7, 2.3)。上述问题可以用 numpy 数组表示,如下所示。

x = [(2,2), (1,2), (2,3), (3,2), (2,1)]
y = [5,7,8,10,3]

如何使用 numpy/scipy 插值来做到这一点?我找不到处理它的具体例子。

最佳答案

方法griddata这里就足够了。默认情况下,它执行分段线性插值,这在您的示例中似乎是最合适的方法。

from scipy.interpolate import griddata
x = [(2,2), (1,2), (2,3), (3,2), (2,1)]
y = [5,7,8,10,3]
evaluate_at = [(2.7, 2.3)] # could be an array of points
result = griddata(x, y, evaluate_at)

返回数组([9.4])

关于python - 在二维网格上使用 numpy/scipy 进行插值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49477822/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com