相关疑难解决方法(0)

在不规则网格上插值

所以,我有三个numpy数组,它们在网格上存储纬度,经度和一些属性值 - 也就是说,我有LAT(y,x),LON(y,x),并说温度T(y,x) ),对于x和y的某些限制.网格不一定是规则的 - 事实上,它是三极的.

然后我想将这些属性(温度)值插值到一堆不同的纬度/经度点(存储为lat1(t),lon1(t),大约10,000吨......),这些点不落在实际网格点上.我已经尝试了matplotlib.mlab.griddata,但这需要太长时间(毕竟它并不是为我正在做的事情设计的).我也试过scipy.interpolate.interp2d,但是我得到了一个MemoryError(我的网格大约是400x400).

有没有任何光滑的,最好快速的方式这样做?我不禁想到答案显而易见......谢谢!!

python interpolation numpy scipy

22
推荐指数
2
解决办法
2万
查看次数

填补numpy数组中的空白

我只想用最简单的术语插入3D数据集.线性插值,最近邻,所有这些就足够了(这是从一些算法开始,所以不需要准确的估计).

在新的scipy版本中,像griddata这样的东西会很有用,但是目前我只有scipy 0.8.所以我有一个"立方体"(data[:,:,:],(NixNjxNk))数组,以及一个相同大小的标志(flags[:,:,:,],TrueFalse)数组.我想插入数据元素的数据,其中flag的对应元素为False,例如使用数据中最近的有效数据点,或者"close by"点的某种线性组合.

数据集中至少有两个维度可能存在较大的间隙.除了使用kdtrees或类似编码完整的最近邻算法之外,我无法真正找到通用的N维最近邻插值器.

python interpolation numpy matplotlib scipy

12
推荐指数
2
解决办法
6767
查看次数

如何在图像中填充"洞"?

我有星系的照片.这些图像上有一些不需要的数据(如星星或飞机条纹)被屏蔽掉了.我不仅希望用一些平均值填充遮罩区域,而是根据周围数据对它们进行插值.我如何在python中做到这一点?

我们在SciPy.interpolate包中尝试了各种函数:RectBivariateSpline,interp2d,splrep/splev,map_coordinates,但它们似乎都在寻找现有像素之间的新像素,我们无法让它们填充数据中的任意"漏洞" .

python interpolation mask image-processing astronomy

7
推荐指数
1
解决办法
3871
查看次数