我试图通过使用以下代码执行插值:
import scipy as scimport scipy.interpolate as spiimport numpy as npdef interpolate_data(img,lat,lon):p_x,p_y = sc.mgrID[-1:1:lat.shape[0]*1j,-1:1:lon.shape[1]*1j] n_x,n_y = sc.mgrID[-1:1:img.shape[0]*1j,-1:1:img.shape[1]*1j] n_lat = spi.grIDdata((p_x.ravel(),p_y.ravel()),lat.ravel(),(n_x,n_y),method='linear') n_lon = spi.grIDdata((p_x.ravel(),lon.ravel(),method='linear')print "n_lat:",n_lat.shapeprint "n_lon:",n_lon.shapeprint "img:",img.shapereturn n_lat,n_lon
但如果我以这种方式进行插值,我将得到不正确的数据.
在我的情况下,卫星将拍摄9次地球.在曲线A和曲线B之间是卫星在第一次拍摄中拍摄的区域.在曲线C和曲线D之间是卫星在第二次拍摄中所占的面积. E和F是重叠的区域.
如果我使用上面的代码进行插值,我会将重叠区域计算两次并给出错误的数据.所以我想问一下是否有办法只计算一次这些重叠区域.谢谢.
如果我使用上面的代码进行插值,我会将重叠区域计算两次并给出错误的数据.所以我想问一下是否有办法只计算一次这些重叠区域.谢谢.
解决方法 如果您的图像附有地理范围数据(例如GeoTIFF文件),您可以考虑使用 GDAL library,此库是用C/C++编写的,但也有一个 python package.它可以使用许多不同的格式,并具有几种不同的图像处理方法,用于图像变形和变换.
总结以上是内存溢出为你收集整理的python – 重叠区域的卫星图像插值全部内容,希望文章能够帮你解决python – 重叠区域的卫星图像插值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)