(五)Landat_5 TM 遥感影像计算NDVI、MNDWI、NDBI以及地表温度反演

本文介绍了通过多波段遥感图像计算植被覆盖指数NDVI、归一化水体指数MNDWI和归一化建筑指数NDBI的过程,以及地表温度的反演方法。这些指数用于环境监测,如植被健康、水体分布和城市热岛效应分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

流程概况图

在这里插入图片描述

一、植被覆盖指数(NDVI)

所谓植被指数,就是利用多波段遥感图像的可见光波段以及近红外波段相组合,形成能够反映突出植被分布状况和强度的指数。植被指数的求解方法不唯一,定义的植被指数已经多达50多种。通过红波段以及近红外波段,可以有效的消除大气对植被指数的影响。
公式:
NDVI=(band4-band3)/(band4+band3)=(NIR-RED)/(NIR+RED)

%计算植被覆盖指数NDVI
NIR=double(image{4});
RED=double(image{3});
NDVI=(NIR-RED)./(NIR+RED);
imshow(NDVI);
c_map=zeros(100,3);
c_map(1:12,:)=repmat([0.5,0.25,0],12,1);
c_map(13:24,:)=repmat([0.35,0.25,0],12,1);
c_map(25:36,:)=repmat([0.1,0.25,0],12,1);
c_map(37:48,:)=repmat([0,0.2,0],12,1);
c_map(49:61,:)=repmat([0,0.4,0],13,1);
c_map(62:74,:)=repmat([0,0.65,0],13,1);
c_map(75:87,:)=repmat([0,0.8,0],13,1);
c_map(88:100,:)=repmat([0.5,1,0],13,1);
colormap(c_map);
colorbar;
title('植被指数---NDVI((NIR-RED) / (NIR+RED))');

在这里插入图片描述

二、归一化水体指数(MNDWI)

该归一化水体指数MNDWI是通过NDWI修改之后以增强开放水域要素,通过绿波段和中红外波段相组合,从而使整幅图的水域均衡显示。我之前正在做实验时,用到另外两个归一化水体,一个提取不充分,另一个冗余度太高,只有此归一化指数,在提取显示方面具有均衡性的特点。
公式:
MNDWI=(band2-band3)/(band2+band3)=(GREEN-MIR)/(GREEN+MIR)

在这里插入图片描述

%计算水体归一化指数NDWI
GREEN=double(image{2});
MIR=double(image{5});
MNDWI=(GREEN-MIR)./(GREEN+MIR);
MNDWI=adapthisteq(MNDWI.*100);
imshow(MNDWI);
title('归一化水体指数---MNDWI((GREEN-MIR)/(GREEN+MIR))');

三、归一化建筑指数

归一化建筑指数是利用近红外和中红外波段结合,从而突出显示建筑区域,NDBI图像颜色越深,代表值越大,表明建筑用地比例越高,建筑密度越高,通过目视解译,不断调整NDBI阈值,直到找到合适的阈值,提取建设用地,调整阈值后获得不透水面分布 。
公式:
NDBI=(band5-band4)/(band5+band4)=(MIR-NIR)/(MIR+NIR)

在这里插入图片描述

%计算归一化建筑指数
NDBI=(MIR-NIR)./(MIR+NIR);
NDBI=adapthisteq(NDBI.*100);
imshow(NDBI);
title('归一化建筑指数---NDBI((MIR-NIR)/(MIR+NIR))');

四、地表温度反演

地表温度反演不同于其他指数那样,直接利用波段进行结合计算得到,在反演地表温度之前,需要先计算植被覆盖率、地表比辐射率、黑体辐射亮度等值,我计算的这片区域,温度基本都在26~28摄氏度之间,高温主要聚集在城市裸地区域,低温主要聚集在河流植被区域。
公式:
T=(K2/ ln(K1/Dt)+1)-273
K1和K2的值可以在头文件中获取:
在这里插入图片描述
在计算Dt时,大气在热红外的透过率、大气向下辐射亮度、大气向上辐射亮度需要去官网进行查询。
在这里插入图片描述

%>>>>>>>>>>>>>>>>>>>>>>>>>>计算植被覆盖率PV>>>>>>>>>>>>>>
w1=NDVI;
w1(w1<0.03)=0;
w1(w1>0.35)=1;

w2=w1;
w2(w2==1)=0;
PV=w1+w2.*((NDVI-0.03)/(0.35-0.03));
%>>>>>>>>>>>>>>>>>>>>>>>>>计算地表比辐射率x>>>>>>>>>>>>>>
x=0.004.*PV+0.986;
%>>>>>>>>>>>>>>>>>>>>>>>>>计算黑体辐射亮度>>>>>>>>>>>>>>>
ca=0.74;%大气在热红外的透过率
cb=3.45;%大气向下辐射亮度
cc=2.07;%大气向上辐射亮度
b2=double(fs_image{6});%热红外波段的辐射标定值
Dt=(b2-cc-ca.*(1-x).*cb)./(ca.*x);
%>>>>>>>>>>>>>>>>>>>>>>>>>>>计算地表温度>>>>>>>>>>>>>>>>>>>
K1=table2array(head_data(173,"L1_METADATA_FILE"));
K2=table2array(head_data(174,"L1_METADATA_FILE"));
T=K2./log((K1./Dt)+1)-273;
%剔除异常值
T(T>40)=0;
%为了方便出图,上面的T为真实地表温度值
TT=(T-27).*0.1;
imshow(TT);
colormap("hot")
title('地表温度反演值---(K2/ln(K1./DT)+1)-273');
### MNDWI指数的定义与计算方法 #### 定义 MNDWI(Modified Normalized Difference Water Index,修正归一化差异水体指数)是由徐涵秋提出的改进版水体指数[^2]。它通过对传统NDWI公式的调整,增强了区分水体与其他地物的能力,尤其是在抑制高建筑物阴影方面表现更优。 #### 计算方法 MNDWI的具体计算公式如下: \[ \text{MNDWI} = \frac{\text{(Green - SWIR)}}{\text{(Green + SWIR)}} \] 其中: - Green 表示绿光波段反射率; - SWIR 表示短波红外波段反射率; 对于 Sentinel-2 数据而言,具体波段对应关系为: - 绿光波段(Green):B3 波段; - 短波红外波段(SWIR):B11 波段; 在遥感软件 ENVI 中,可以通过“波段代数”工具实现上述计算过程。只需按照指定波段输入对应的反射率数据并执行公式即可完成 MNDWI计算[^1]。 ```python def calculate_mndwi(green_band, swir_band): """ Calculate the Modified Normalized Difference Water Index (MNDWI). Parameters: green_band : numpy.ndarray The reflectance values of the green band. swir_band : numpy.ndarray The reflectance values of the shortwave infrared band. Returns: mndwi_index : numpy.ndarray Calculated MNDWI index array. """ numerator = green_band.astype(float) - swir_band.astype(float) denominator = green_band.astype(float) + swir_band.astype(float) with np.errstate(divide='ignore', invalid='ignore'): mndwi_index = np.where(denominator != 0, numerator / denominator, np.nan) return mndwi_index ``` 此 Python 函数可用于批量处理影像中的绿光和短波红外波段来生成 MNDWI 图像。 #### 特点 利用 MNDWI 进行分析时,建筑物的 MNDWI 值会显著降低,从而有效减少高楼阴影干扰。然而,这一指标仍无法完全消除冰雪覆盖区或山体阴影带来的影响。 #### 应用场景 当研究区域内存在较多高层建筑或其他可能引起强烈阴影的地物时,推荐优先选用 MNDWI 来提取水体信息。其对河流等地表水资源具有较高的敏感度,能更好地突出水域范围[^3]。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

楠楠星球

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值