我正在将一个在球坐标网格上采样的信号映射到柱面坐标网格上。很明显,这两种网格都是不均匀的。两个网格的大小都为256 X 864(行 X 列)。
因此我尝试了以下方法:
这里,
因此我尝试了以下方法:
f = interp2d(x, y, z, kind='cubic')
zz= f(xx, yy)
这里,
x, y = meshgrid(spherical_x, spherical_y)
xx, yy = meshgrid(cylindrical_x, cylindrical_y)
当我运行interp2D时,出现了错误信息,提示:spherical_x、spherical_y、cylindrical_x 和 cylindrical_y
在一维方向上都不均匀。
File "C:\Users\MyComputer\AppData\Local\Continuum\anaconda3\lib\site-packages\scipy\interpolate\_fitpack_impl.py", line 48, in _intc_overflow
raise OverflowError(msg)
OverflowError: Too many data points to interpolate
所以,我在想用Python/NumPy/SciPy如何处理这个非均匀的二维插值?我知道有一个rectbivariatespline
,但似乎原始数据必须在一个均匀网格上。谢谢。