首先,这不是 EUMETSAT 图像。您的图像显示澳大利亚,地球同步 EUMETSAT 卫星位于(大约)(0°N,0°E)和(0°N,41.5°E)上方,用于零度服务 (ZDS) 和印度洋数据覆盖 (IODC) ) 服务,分别。两种观点都看不到澳大利亚。您的卫星图像可能来自日本气象厅 (JMA) 运营的多功能运输卫星 (MTSAT)成像仪,直到 2015 年被 HIMAWARI 取代。
要从 Meteosat SEVIRI、MTSAT、HIMAWARI AHI 或任何其他地球观测成像仪获取图像中像素的地理位置,您还可以考虑使用satpy库读取数据:
from satpy import Scene
from glob import glob
filenames = glob('/path/to/your/files/*') # for SEVIRI, can be HRIT, Native, or NetCDF
sc = Scene(filenames=filenames)
sc.load(["IR_108"], upper_right_corner="NE")
print(sc["IR_108"].attrs["area"].get_lonlat_from_array_coordinates(1000, 2000))
这使:
(-24.259016114751823, -3.9842388279769465)
对于地球静止图像,这不是最快的方法,因为答案是不变的,所以您不需要实际读取数据。但是,使用经过良好测试和广泛使用的库可以降低您出错的风险。至少,它可以作为参考。请记住,对于许多卫星成像仪,不同的通道具有不同的空间分辨率,因此答案可能取决于通道。1 级数据也可以存储为先南后北,这样简单的阅读和显示就会在图像的上部显示南部而在下部显示北部,这与映射约定相反。因此,值得验证您的结果是否准确。