EASE-GRID投影的产品文件(nc/hdf)转Tiff

由于最近用到的很多产品都是EASE-GIRD投影,转tif废了很大的功夫,写个文章来记录一下。

一、产品

AMSR2 产品、GlobSnow 产品、FY-3B等

二、EASE-GRID投影

关于这个投影的官方具体介绍可以看这里!

gEASE Grids Map Projection & Grid Definitions | National Snow and Ice Data Center (nsidc.org)

三、转Tiff

先看代码【python】

cols = 721
rows = 721
# 设置影像的显示范围
geo = (-9036842.76, 25067.53, 0, 9036842.76, 0, -25067.53)
# 构造projection
src_srs = osr.SpatialReference()
src_srs.ImportFromEPSG(3408)  # 定义输出的坐标系为NSIDC_EASE_Grid_North"AUTHORITY["EPSG","3408"]
src_srs_wkt = src_srs.ExportToWkt()   # 给新建图层赋予投影信息
#需要写入TIFF的数据
dayarray = fp['SWE_NorthernDaily_D'][:]
#输出文件名
out_file =os.path.join(output_dir, hdf_file[42:-18] + "fy.tif")

ap.env.overwriteOutput = 1  # 输出文件夹里面已经有内容的,就覆盖掉
ap.CheckOutExtension("Spatial")
#转tif
write_tiff(out_file, geo, src_srs_wkt, rows, cols, dayarray)

由上段代码可知,要想转Tiff,需要行列号、geo(地理范围)、投影、数据这些信息。

(1)以GlobSnow为例

先用matlab查看数据信息

 

得到行列号、地理范围、投影信息

 之后就可以输入代码转tiff啦

(2)如果用Matlab查看数据信息,没有地理范围,也没有写确定的投影坐标,那么,可以查看投影官方信息,根据行列号和分辨率大小确定投影和地理范围,具体如下:

 例如确定分辨率为25km,根据行列号721×721,可以确定投影为NSIDC_EASE_Grid_North["EPSG","3408"],还有地理范围。

就可以输入代码转Tiff啦!

注意:这里只能是半球产品才能参考该网站所给的地理范围,如果是某个小于半球尺度的区域,需要想其他办法确定地理范围。

参考文献:

https://blog.csdn.net/weixin_38953602/article/details/101158084​​​​​​​

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值