GEE开发之Landsat8计算MNDWI和数据分析


前言:上一篇博客介绍了landsat8计算NDWI以及数据的获取,这次介绍MNDWI(改进的归一化差异水体指数)。


1 MNDWI(改进的归一化差异水体指数)

  • 公式:MNDWI=(GREEN-SWIR)/(GREEN+SWIR)
  • 式中:GREEN为绿光波段; SWIR为短波红外波段。建筑物等阴影在绿光和近红外波段的波谱特征与水体相似,当采用短波红外波段替换近红外波段时,可以使计算出的水体与建筑物指数的反差明显增强,大大降低了二者的混淆程度,从而有利于城镇中水体信息的准确提取。

2 获取MNDWI图像和数据

代码如下(以鹿邑县为例)

var roi = ee.FeatureCollection('users/www1573979951/luyixian');
Map.centerObject(roi,7);
//筛选Landsat8影像
var l8_image = ee.ImageCollection('LANDSAT/LC08/C01/T1_SR').filterBounds(roi).filterDate('2020-01-01', '2020-12-31').filter(ee.Filter.lte('CLOUD_COVER',10)).median().clip(roi);
var mndwi = l8_image.normalizedDifference(['B3','B6']).float().rename('l8_MNDWI'); 
var visParams2 = {min: 0, max: 1, palette: ['0000FF', 'FF0000']};
Map.addLayer(mndwi, visParams2, "l8_MNDWI");
Export.image.toDrive({
  image: mndwi,
  description: 'l8_MNDWI',
  crs: "EPSG:4326",
  scale: 30,
  region: roi,
  maxPixels: 1e13,
  folder: 'l8_MNDWI'
});

在这里插入图片描述
在这里插入图片描述

### 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]。 ---
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

等待着冬天的风

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

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

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

打赏作者

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

抵扣说明:

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

余额充值