【发布时间】:2011-08-15 17:10:06
【问题描述】:
我有 2048x2048 网格的不规则数据zi = f(xi, yi),它们本质上是三组独立的 2048 个实数值。我需要将其平滑地插值(可能是双三次样条)到 wi = f(ui, vi) 的常规网格中,其中 ui 和 vi 是从 0 到 2047 的整数值。
我尝试过 griddata,它似乎在小于 1000x1000 的图像上运行良好,但是当你达到 1500x1500 时就会爆炸(显然 Delaunay Mesh 的内存 qhull 错误)。我看过一些ndimage 函数,即geometric_transform、RectBivariateSpline 和map_coordinates,但它们似乎都将正则化数据作为输入。我可能会遗漏一些东西,但也可能实施错误!
我正在尝试使用 Python/SciPy 来完成我使用 tformarray 和 makeresampler 一直在做的这个 Matlab 脚本。关于我可以使用什么函数来处理这个大型数据集的任何建议?谢谢!
【问题讨论】:
-
我会看看这个问题:stackoverflow.com/questions/1972172/…我之前成功使用过 Shepard 插值,它可能对你有用。
标签: python numpy grid scipy interpolation