如何使用Python获取EUMETSAT图像中像素的纬度和经度?

6
我是一名有帮助的助手,可以翻译以下关于IT技术的内容。这段内容包含了3712x3712像素的欧气象卫星静止图像,需要获取每个像素的纬度和经度。您可以使用pyproj来实现此目的,例如:
sat = pyproj.Proj('+proj=geos +lon_0 +h=035785831.0 +x_0=0 +y_0=0')

但是获取像素的经纬度坐标(使用sat(x,y,inverse=True),其中xy是图像中的像素坐标)显然是不可能的,因为投影不知道我的图像的尺寸(3712x3712)。

我错过了什么?


我不熟悉pyproj,但这是否需要基于某些已知位置对地球进行“时钟校准”,即确定澳大利亚相对于图片的位置?pyproj是否已经实现了这一点?还是你只是指一个圆形的相对纬度和经度? - Paul Seeb
1
你需要多准确?如果你可以容忍几公里的误差,你可以将地球近似为一个球体,进行一些简单的几何计算,完全不用考虑pyproj(我不知道pyproj是什么,但我可以帮助你进行几何计算)。 - Neil Forrester
对于图像,它必须是3712/2,对于Meteosat卫星来说,它是(0,0),因为它位于赤道上方和格林威治本初子午线上,据我所知。 - AME
2
很容易就可以确定你的假设——卫星在0度经线上方是错误的,因为澳大利亚是可见的 :-o 请再试一次。 - DisappointedByUnaccountableMod
这不是一张欧洲气象卫星图像。 - gerrit
显示剩余4条评论
2个回答

2
我认为您正在使用正确的投影库和设置。
欧洲气象卫星组织网站(此处)报告了典型的像素分辨率(每公里像素数),约为3公里每像素。
您可以通过在子午线上进行经纬度转换到x,y,并将其除以像素计数来检查它(-81度,81度是最大范围,请参阅欧洲气象卫星组织网站http://www.eumetsat.int/的参考资料)。
import pyproj
sat = pyproj.Proj('+proj=geos +lon_0 +h=035785831.0 +x_0=0 +y_0=0')
x,y =  sat( 81.299, 0, radians = False, errcheck = True)
print (x * 2.0 / 3712.0 ) / 1000.0

将为您提供一个值为2.927,该值符合eumetsat提供的信息。
接下来,您可以通过定义地图上一组众所周知的点(例如沿海特征),确定它们的x/y位置并在线查找它们的纬度/经度坐标来进一步校准。您可以尝试一系列像素分辨率,并检查哪个最适合,或使用更复杂的程序。
分辨率可能取决于您距赤道的距离,参见这里。因此,您可能需要在多个纬度上使用上述程序。

0
首先,这不是一张欧洲气象卫星图像。您的图像显示的是澳大利亚,而静止轨道的欧洲气象卫星分别位于(大约)(0°N,0°E)和(0°N,41.5°E)用于零度服务(ZDS)和印度洋数据覆盖(IODC)服务。两个视角都看不到澳大利亚。您的卫星图像可能来自由日本气象厅(JMA)运营的多功能运输卫星(MTSAT)成像仪,在2015年被向日葵取代。
要获取来自Meteosat SEVIRI、MTSAT、HIMAWARI AHI或任何其他地球观测成像仪的图像像素的地理位置,您还可以考虑使用库读取数据。
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数据也可能存储在南部在北部之前的方式,这样一个天真的读取和显示会将南部显示在图像的上部,将北部显示在下部,与映射约定相反。因此,值得验证您的结果是否准确。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接