我们常说的MODIS数据,其实并不是指卫星的名字。
MODIS(Moderate-resolution imaging spectroradiometer)中分辨率成像光谱仪,是一种传感器,常搭载于Auqa(下午)和Terra(上午)卫星。两颗星相互配合每1-2天可重复观测整个地球表面,得到36个波段的观测数据,这些数据有助于我们深入理解全球陆地、海洋和低层大气内的动态变化过程。
下载地址:https://ladsweb.modaps.eosdis.nasa.gov/
下载方法:https://blog.csdn.net/NingAnMe/article/details/102967743?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-11.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-11.nonecase
1.MODIS的各种数据产品
MODIS标准数据产品根据内容不同分为0级、1级数据产品,在1B级数据产品之后,划分2-4级数据产品,包括:陆地标准数据产品、大气标准数据产品和海洋标准数据产品等三种主要标准数据产品类型,总计分解为44种标准数据产品类型。
其中常用的有L1B产品、MOD09等产品。
摘自https://www.cnblogs.com/lanzi/archive/2009/07/02/1515202.html
LlA数据是对L0数据中的CCSDS包进行解包所还原出来的扫描数据及其他相关数据的集合
LlB数据是对LlA数据进行定位处理之后所生成,提供了辐射定标系数,可以通过MCTK工具进行辐射定标转换为radiance/reflectance(表观反射率),radiance后续可以通过FLAASH大气校正生成地表反射率数据文件。
L2~L4是对LlB数据进行各种应用处理之后所生成的特定应用数据产品
MOD01:即 MODIS1A数据产品。1A级处理程序,把2个小时的0级文件重新组织成一系列基本处理单元,及数据块(Granules),每个数据块包含大约5分钟的MODIS数据。因为MODIS镜面的一次扫描需要1.4771秒,所以在5分钟内1B级产品文件典型的有203次完全扫描,有时候完全扫描204次。每天5分钟集合的扫描文件有288个。地理位置代码计算地面单个象元的坐标,以及有关MODIS的太阳和月亮的位置信息。在GDAAC的操作中,1A级和地理位置代码使用产品生成程序(PGE01)。同时,它们将输入的MODIS数据放到1B级软件中
MOD02:即 MODIS1B数据产品。
MOD03:即 MODIS数据地理定位文件。MODIS Geolocation(MOD03) 数据产品包含有:MODIS每个1km EV(Earth View)中心的经纬度,每个1km EV太阳/卫星的方位,每个1km EV EOS陆地/海洋的阈值,每条扫描太阳和月亮相对于MODIS的位置,充分的仪器参数信息以支持特定波段和亚像元级定位。格式描述分为4个部分:全局元数据、处理和几何参数、扫描数据、组(Vgroups)
MOD04-08,35为大气产品,9-17,33,40,43,44为陆地产品,18-32,36-39,42为海洋产品
MOD04:大气2、3级标准数据产品,内容为气溶胶产品,Lambert投影空间分辨率1公里,地理坐标30秒空间分辨率,每日数据为2级数据产品,每旬、每月数据合成为3级数据产品。
MOD05:可降水量。2级大气产品。
MOD06:大气2、3级标准数据产品,内容为云产品,Lambert投影空间分辨率1公里,地理坐标30秒空间分辨率,每日数据为2级数据产品,每旬、每月数据合成为3级数据产品。
MOD07:大气2、3级标准数据产品,内容为大气剖面数据,Lambert投影空间分辨率1公里,地理坐标30秒空间分辨率,每日数据为2级数据产品,每旬、每月数据合成为3级数据产品。
MOD08:大气3级标准数据产品,内容为栅格大气产品,1公里空间分辨率。每日、每旬、每月合成数据。
MOD09:陆地2级标准数据产品,内容为表面反射;空间分辨率250m;白天每日数据。
MOD10:陆地2、3级标准数据产品,内容为雪覆盖,每日数据为2级数据,空间分辨率500米,旬、月数据合成为3级数据,空间分辨率500米。
归一化雪被指数:归一化雪被指数是观测冰雪定量指标,
NDSI=(Ref0.555um- Ref1.640um)/( Ref0.555um Ref1.640um)* Ref0.555um、Ref1.640um为入瞳反射率位于陆地且同时满足以下条件的像元,可以定义为“陆地冰雪”,简称“冰雪”:
NDSI=(RefMODIS4- RefMODIS6) / (RefMODIS4 RefMODIS6)>0.4;RefMODIS2 > 0.11;
MOD11:陆地2、3级标准数据产品,内容为地表温度和辐射率,Lambert投影,空间分辨率1公里,地理坐标为30秒,每日数据为2级数据,每旬、每月数据合成为3级数据。
MOD12:陆地3级标准数据产品,内容为土地覆盖/土地覆盖变化,1km,1/4º,季节的,生物地球化学循环,土地覆盖变化,3级数据产品。
MOD13:陆地2级标准数据产品,内容为栅格的归一化植被指数和增强型植被指数(NDVI/EVI),空间分辨率250m。
MOD14:陆地2级标准数据产品,内容为热异常-火灾和生物量燃烧,空间分辨率1km,确定火灾发生的位置、火灾等级以及暗火与燃烧比。
MOD15:陆地3级标准数据产品,内容为叶面积指数和光合有效辐射,空间分辨率1km,每天的及旬、月合成产品。
MOD16:陆地4级标准数据产品,内容为蒸腾作用,空间分辨率1km,旬、月合成产品。
MOD17:陆地4级标准数据产品,内容为植被产品,NPP,空间分辨率为250米,1公里,旬、月度频率。
MOD18:海洋2、3级标准数据产品,内容为标准的水面辐射,全球洋面,空间分辨率1km,日、旬、月,海洋叶绿素。
MOD19:海洋2、3级标准数据产品,内容为色素浓度,全球洋面,空间分辨率1km,日、旬、月度数据。
MOD20:海洋2、3级标准数据产品,内容为叶绿素荧光性,全球洋面,空间分辨率1km,叶绿素水平大于2.0mg/m3,日、旬、月度数据。
MOD21:海洋2级标准数据产品,内容为叶绿素-色素浓度,空间分辨率1km,日、旬、月度数据。
MOD22:海洋2、3级标准数据产品,内容为光合可利用辐射(PAR),全球洋面,1km,日、旬、月度数据。
MOD23:海洋3级标准数据产品,内容为悬浮物浓度。
MOD24:海洋3级标准数据产品,内容为有机质浓度。
MOD25:海洋2、3级标准数据产品,内容为球石浓度,全球洋面,空间分辨率1km、20km,日、旬、月度数据。
MOD26:海洋3级标准数据产品,内容为海洋水衰减系数。
MOD27:海洋2、3级标准数据产品,内容为海洋初级生产力,全球洋面,空间分辨率1km,日、旬、月度数据。
MOD28:海洋2、3级标准数据产品,内容为海面温度,全球洋面,空间分辨率1km,每天的,每周的/昼夜的,能量和水平衡,气候变化模型。
MOD29:海洋2级标准数据产品,内容为海冰覆盖,海洋,1公里分辨率,日、旬数据。
MOD30:(未定)
MOD31:海洋2、3级标准数据产品,内容为藻红蛋白浓度, 1公里分辨率,日、旬、月度数据。
MOD32:海洋2级标准数据产品,内容为处理框架和匹配的数据库,1公里分辨率,日、旬、月度数据,用于海洋叶绿素、海洋生产力计算。
MOD33:陆地3级标准数据产品,内容为雪覆盖,空间分辨率500米,日、旬、月度数据。
MOD34:(未定)
MOD35:大气2级标准数据产品,内容为云掩膜,空间分辨率为250m和1公里,日数据。
MOD36:海洋3级标准数据产品,内容为总吸收系数,空间分辨率为1公里,日、旬、月度数据
MOD37:海洋2、3级标准数据产品,内容为海洋气溶胶特性,空间分辨率1km,日、旬、月度数据。
MOD38:(未定)
MOD39:海洋2、3级标准数据产品,内容为纯水势,空间分辨率1km,日、旬、月度数据。
MOD40:陆地3级标准数据产品,内容为栅格的热异常,空间分辨率1公里,日、旬、月度数据。
MOD41:(未定)
MOD42:海洋3级标准数据产品,内容为海冰覆盖,空间分辨率1公里,日、旬、月度数据。
MOD43:陆地3级标准数据产品,内容为表面反射,BRDF/Albedo参数,空间分辨率1公里,日、旬、月度数据。
MOD44:陆地3级标准数据产品,内容为植被覆盖转换,250m,季度、年度,判定植被覆盖转换的发生和类型。
2. MCTK介绍
MCTK工具(https://github.com/dawhite/MCTK)。处理MODIS数据可以用很多方法,其中比较常用的有MRT/MCTK/RSD,这里着重介绍MCTK及其部分使用方法。MCTK是一款ENVI插件,对于不同的MODIS数据,兼容了40+种MODIS数据的处理方法,这里着重介绍L1B级、MOD09产品的处理。
处理教程:http://blog.sina.com.cn/s/blog_764b1e9d0102wu29.html
Fig1 L1B级产品处理
Fig2 MOD09
如图,对于L1B级产品,通常选择第二种输出类型,设置经纬度坐标系,背景值大小,并将数据输出为radiance类型(辐射定标),以方便下一步的FLAASH大气校正。而MOD09产品,是地表反射率产品,设置坐标系和背景值后选择产品即可输出。
3.GDAL读取
MODIS数据是HDF数据文件,即分层数据格式。这是一个大的数据集,分成若干个子数据集,每个子数据集都有各自的波段和地理变换信息。
通常用ds.GetSubDatasets()获取所有子数据集,然后可以用gdal.Open(subdatasets[i][0])打开第i个子数据集(第一个[0]指第一个子数据集tuple,第二个[0]指元组的第一个元素(名称)),然后再ds.GetRasterBand()来读取指定波段。这里subdatasets[0]获取了元组tuple,但是要想打开数据集,必须获取当前数据集的名字,因此读取第一个元素[0][0],即名称,从而打开数据集。
Fig3 HDF数据格式
from osgeo import gdal import numpy as np filename = r\'D:\Tablefile\MOD09.A2020131.0205.006.2020133014313.hdf\' ds = gdal.Open(filename) #打开大数据集 ds_list = ds.GetSubDatasets() #读取所有子数据集 print(ds_list[0]) #显示第一个子数据集tuple内容 ds = gdal.Open(ds_list[4][0]) #第一个index[4]是子数据集tuple,其中index[0]是数据名称,打开数据集需要名称 band = ds.GetRasterBand(1) #第一个子数据集只有一个band arr = band.ReadAsArray() print(ds.GetGeoTransform()) print(arr)
(\'HDF4_EOS:EOS_SWATH:"D:\\Tablefile\\MOD09.A2020131.0205.006.2020133014313.hdf":"MODIS SWATH TYPE L2":"1km Atmospheric Optical Depth Band 1"\', \'[2030x1354] 1km Atmospheric Optical Depth Band 1 MODIS SWATH TYPE L2 (16-bit integer)\') (0.0, 1.0, 0.0, 0.0, 0.0, 1.0) [[216 215 204 ... 336 335 333] [225 211 210 ... 337 335 334] [214 207 200 ... 337 336 335] ... [402 403 403 ... 13 11 10] [402 402 403 ... 15 12 12] [402 402 403 ... 17 15 15]]
好了,本次MODIS数据就总结到这里。