MODTRAN 大气校正(高精度大气辐射传输模拟)、NDVI + 植被覆盖度计算(比辐射率核心步骤)的详细 IDL 代码,以及 ENVI 中 MODTRAN 调用的实操要点.docxVIP

  • 0
  • 0
  • 约5.77千字
  • 约 5页
  • 2026-01-05 发布于山西
  • 举报

MODTRAN 大气校正(高精度大气辐射传输模拟)、NDVI + 植被覆盖度计算(比辐射率核心步骤)的详细 IDL 代码,以及 ENVI 中 MODTRAN 调用的实操要点.docx

MODTRAN大气校正(高精度大气辐射传输模拟)、NDVI+植被覆盖度计算(比辐射率核心步骤)的详细IDL代码,以及ENVI中MODTRAN调用的实操要点

一、IDL补充代码(高精度反演核心模块)

1.NDVI计算+植被覆盖度(Fv)+比辐射率(ε)完整代码

idl

;=====================1.读取MODIS可见光/近红外波段(NDVI计算)=====================

file_mod02=MOD021KM.A2025001.0000.061.2025002020558.hdf;替换为你的数据路径

hdf_id=HDF_OPEN(file_mod02,/READ)

;提取Band1(红波段,0.62~0.67μm)和Band2(近红外,0.841~0.876μm)的DN值

data_b1=HDFSD_GETDATA(hdf_id,EV_1KM_Reflective,0,0);Band1索引0

data_b2=HDFSD_GETDATA(hdf_id,EV_1KM_Reflective,0,1);Band2索引1

;提取反射波段定标系数(反射率定标:DN→表观反射率)

gain_b1=HDFATTR_GET(hdf_id,EV_1KM_Reflective,gain,0)

offset_b1=HDFATTR_GET(hdf_id,EV_1KM_Reflective,offset,0)

gain_b2=HDFATTR_GET(hdf_id,EV_1KM_Reflective,gain,1)

offset_b2=HDFATTR_GET(hdf_id,EV_1KM_Reflective,offset,1)

HDF_CLOSE,hdf_id

;定标为表观反射率(反射波段定标公式与热红外不同)

rho_b1=data_b1*gain_b1+offset_b1

rho_b2=data_b2*gain_b2+offset_b2

;=====================2.计算NDVI=====================

;避免分母为0,设置阈值

ndvi=(rho_b2-rho_b1)/(rho_b2+rho_b1+1e-8)

;掩膜异常值(NDVI范围[-1,1])

ndvi[ndviLT-1]=!VALUES.F_NAN

ndvi[ndviGT1]=!VALUES.F_NAN

;=====================3.计算植被覆盖度Fv=====================

ndvi_min=0.05;裸土NDVI阈值(经验值)

ndvi_max=0.7;全植被NDVI阈值(经验值)

fv=(ndvi-ndvi_min)/(ndvi_max-ndvi_min+1e-8)

;修正Fv范围(0~1)

fv[fvLT0]=0.0

fv[fvGT1]=1.0

fv[WHERE(FINITE(fv)EQ0)]=0.0;NaN值设为0(裸土)

;=====================4.计算Band31的地表比辐射率ε=====================

eps_v=0.986;植被比辐射率(经验值,Band31)

eps_s=0.975;裸土比辐射率(经验值,Band31)

d_eps=0.001;混合像元修正项(经验值)

eps_31=fv*eps_v+(1-fv)*eps_s+d_eps

;掩膜水体(水体ε≈0.995,单独赋值)

;水体判定:NDVI0且热红外亮温T31273.15(可结合前期计算的T31)

;先读取T31亮温(参考前文代码)

load,T31.sav;假设已保存T31亮温数据

water_mask=(ndviLT0)AND(T31GT273.15)

eps_31[water_mask]=0.995

;保存比辐射率结果

ENVI_WRITE_ENVI_FILE,eps_31,$

FILENAME=MODIS_eps31.dat,$

INTERLEAVE=0,$

MAP_INFO=ENVI_GET_MAP_INFO(FILE=file_mod02),$

DESCRIPTION=MODISBand31地表比辐射率

PRINT,比辐射率计算完成!范

文档评论(0)

1亿VIP精品文档

相关文档