我正试着把投影转换成车牌。
我用Satpy加载netcdf。
from satpy import Scene
from glob import glob
goes17 = glob('./samplefile/*')
goes17_scene = Scene(reader="abi_l1b", filenames=goes17)然后,我想重采样它板carree使用https://satpy.readthedocs.io/en/stable/resample.html#create-custom-area-definition,但没有样例代码。
发布于 2022-02-22 01:39:14
这些文档肯定可以改进(我不是抱怨,我是作者之一)。首先,它应该指向pyresample中有关如何制作自定义AreaDefinition的文档:
https://pyresample.readthedocs.io/en/latest/geometry_utils.html
对于您希望重采样到一个平面carree (等长线)投影的情况,您可以尝试这样的方法:
from pyresample import create_area_def
area_def = create_area_def("my_area_def", "+proj=eqc +datum=WGS84", resolution=2000)这将形成一个DynamicAreaDefinition,它是一个没有定义所有参数的AreaDefinition。例如,这个区域没有范围/界限。我确实把它定义为每像素有2km的分辨率。我们可以将这个动态区域定义提供给Satpy,它将用ABI数据中的地理位置“冻结”它。因此,您的代码将如下所示:
from satpy import Scene
from glob import glob
from pyresample import create_area_def
area_def = create_area_def("my_area_def", "+proj=eqc +datum=WGS84", resolution=2000)
goes17 = glob('./samplefile/*')
goes17_scene = Scene(reader="abi_l1b", filenames=goes17)
goes17_scene.load(['C13'])
new_scn = goes17_scene.resample(area_def)
# save to geotiffs
new_scn.save_datasets()注意,如果您在调用create_area_def时知道了区域的确切界限,那么您可以创建一个完全限定的AreaDefinition,而当重采样时(因为Satpy不需要计算动态区域的边界),这样的效果会更好。
https://stackoverflow.com/questions/71201417
复制相似问题