0

我有来自 MODIS 仪器的 geotiff 格式的地理参考 RGB 卫星图像。使用 cartopy 在地图上绘制并保留 RGB 颜色的正确方法是什么?

我猜的主要障碍是图像的投影,即 Cassini-Soldner:

import numpy as np
from osgeo import gdal, osr

ds = gdal.Open('modis_201303261252_rgb.tif')

print(ds.GetGeoTransform())
(-1669791.8857914428, 250.0, 0.0, 1669792.327327792, 0.0, -250.0)

proj = ds.GetProjection()

inproj = osr.SpatialReference()
inproj.ImportFromWkt(proj)
print(inproj)

PROJCS["unnamed",
    GEOGCS["unnamed ellipse",
        DATUM["unknown",
            SPHEROID["unnamed",6378137,0]],
        PRIMEM["Greenwich",0],
        UNIT["degree",0.0174532925199433]],
    PROJECTION["Cassini_Soldner"],
    PARAMETER["latitude_of_origin",72],
    PARAMETER["central_meridian",-4],
    PARAMETER["false_easting",0],
    PARAMETER["false_northing",0],
    UNIT["metre",1,
        AUTHORITY["EPSG","9001"]]]

我尝试按照此示例https://ocefpaf.github.io/python4oceanographers/blog/2015/03/02/geotiff/ 并使用 cartopy 定义 EPSG 代码的投影。所以我用谷歌搜索了 Cassini-Soldner EPSG 代码 (9806),但 cartopyccrs.epsg()无法识别它。

我想使用plt.imshow()方法,但是我有点困惑在创建轴时使用什么作为投影关键字以及transform=imshow.

4

1 回答 1

0

(我会将其添加为评论,但我需要 50 个代表。)

出于兴趣,您是如何通过卡西尼投影 MODIS RGB 来的?

另一种方法是使用我提出的 Cartopy 拉取请求,它允许将时间维度与 GeoAxes.add_wmts() 一起使用,以便您可以将 MODIS RGB 图像切片从 NASA GIBS 直接拉入 Cartopy GeoAxes :https ://github.com/SciTools/cartopy/pull/788

编辑:此功能在 v0.15 中

于 2016-09-21T09:35:58.613 回答