GEEer成长日记十九:使用Landsat 8影像计算水体指数NDWI、MNDWI并下载到本地
目录
一、NDWI和MNDWI计算公式介绍
1、NDWI(归一化差异水体指数)
2、MNDWI(改进的归一化差异水体指数)
二、使用Landsat8影像计算NDWI和MNDWI
1、获取Landsat8影像
2、计算NDWI
3、计算MNDWI
三、结果导出
1、导出NDWI
2、导出MNDWI
一、NDWI和MNDWI计算公式介绍
1、NDWI(归一化差异水体指数)
公式:NDWI = (GREEN-NIR)/(GREEN+NIR)
式中: GREEN为绿光波段; NIR为近红外波段。NDWI主要利用了在近红外波段水体强吸收几乎没有反射而植被反射率很强的特点,通过抑制植被和突出水体用来提取影像中的水体信息,效果较好。但是由于NDWI只考虑了植被因素,忽略了建筑物和土壤这2个重要的地物,通过NDWI提取水体信息时由于绿光波段的反射率远远高于近红外波段,所以提取结果往往混淆有土壤和建筑物信息。用NDWI提取城市水体时会有较多建筑物阴影的水体,效果较差。
2、MNDWI(改进的归一化差异水体指数)
公式:MNDWI=(GREEN-SWIR)/(GREEN+SWIR)
式中:GREEN为绿光波段; SWIR为短波红外波段。建筑物等阴影在绿光和近红外波段的波谱特征与水体相似,当采用短波红外波段替换近红外波段时,可以使计算出的水体与建筑物指数的反差明显增强,大大降低了二者的混淆程度,从而有利于城镇中水体信息的准确提取。
二、使用Landsat8影像计算NDWI和MNDWI
1、获取Landsat8影像
var roi = table; //table 为自己上传的矢量边界
//筛选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 rgbVis = {min: 0.0,max: 3000,bands: ['B4', 'B3', 'B2'],
};Map.addLayer(l8_image, rgbVis, 'l8_image');
Map.centerObject(roi,9)
2、计算NDWI
Landsat8影像中:B3表示GREEN波段,B5表示NIR波段。
var ndwi = l8_image.normalizedDifference(['B3','B5']).float().rename('l8_NDWI');
var visParams1 = {min: 0, max: 1, palette: ['0000FF', 'FF0000']};
Map.addLayer(ndwi, visParams1, "l8_NDWI");
3、计算MNDWI
Landsat8影像中:B3表示GREEN波段,B6表示SWIR波段。
var mndwi = l8_image.normalizedDifference(['B3','B6']).float().rename('l8_MNDWI');
var visParams2 = {min: 0, max: 1, palette: ['0000FF', 'FF0000']};
Map.addLayer(ndwi, visParams2, "l8_MNDWI");
三、结果导出
1、导出NDWI
Export.image.toDrive({image: ndwi,description: 'l8_NDWI',crs: "EPSG:4326",scale: 30,region: roi,maxPixels: 1e13,folder: 'l8_NDWI'
});
2、导出MNDWI
Export.image.toDrive({image: mndwi,description: 'l8_MNDWI',crs: "EPSG:4326",scale: 30,region: roi,maxPixels: 1e13,folder: 'l8_MNDWI'
});
更多GEE教程可关注GZH:”GEEer成长日记“,有讨论群哦,一起学习!
GEEer成长日记十九:使用Landsat 8影像计算水体指数NDWI、MNDWI并下载到本地相关推荐
- GEEer成长日记二十:使用Sentinel 2影像计算水体指数NDWI、MNDWI并下载到本地
一.NDWI和MNDWI计算公式介绍 NDWI(归一化差异水体指数) NDWI = (GREEN-NIR)/(GREEN+NIR) 式中: GREEN为绿光波段: NIR为近红外波段.NDWI主要利用 ...
- GEEer成长日记十二:Modis_LST地表温度产品时间序列分析
更多精彩内容请关注微信公众号:GEEer成长日记 今天我们介绍Modis_LST产品MODIS/006/MOD11A1,这款产品目前来说使用率很高,而且有每日数据,经过很多校正得到的. 之后我们将介绍 ...
- GEEer成长日记九:Worldpop100m分辨率人口数据可视化及批量下载
最近看到好多小伙伴在找Worldpop人口数据.小编之前去看的时候,全国的影像一张就4G左右,太大了.不过小编已经为大家搜集好了全国的数据,关注微信公众号:GEEer成长日记.即可获取. 今天我们主要 ...
- GEEer成长日记十三:Landsat_SR计算地表温度时间序列
更多精彩内容请关注微信公众号:GEEer成长日记 上期我们介绍了Modis_LST产品MODIS/006/MOD11A1的时间序列,因为这款产品是官方已经经过各种矫正和处理的产品,精度较高,且范围广, ...
- GEEer成长日记二十一:Sentinel-2影像计算多种指数
欢迎关注公众号:GEEer成长日记 本次计算Sentinel-2影像计算几种常用指数的方法: var s2 = ee.ImageCollection("COPERNICUS/S2_SR&qu ...
- GEEer成长日记一:GEE账号注册详细步骤
写在最前面:非常开心能以这样的方式与各位同仁一起交流学习.作为GIS和RS的学生或从业者,GEE(Google Earth Engine)的出现无疑为我们的工作学习带来了很大的便利.短时间聚集了庞大的 ...
- GEEer成长日记八:Landsat8_SR计算NDVI逐年时序变化,并通过影像判断城市扩张
前几期我们挨个介绍了Modis.Landsat.Sentinel-2产品和数据在逐日和逐月时间序列方面的研究.还介绍了Whittaker Smoother在时间序列研究的应用.本期我们将介绍年尺度的时 ...
- GEEer成长日记十七:在Google Earth Engine(GEE)中批量下载MODIS NDVI数据
所使用数据集为:MOD13Q1.006 Terra Vegetation Indices 16-Day Global 250m 需注意的是,要得到真实的NDVI,需要乘以0.0001 完整代码如下: ...
- GEEer成长日记五:Sentinel-2计算NDVI并逐月时间序列分析
前几期我们介绍了MODIS和LANDSAT8遥感影像的MDVI时间序列,其他数据也与此类似,大家根据实际情况修改即可.本期我们介绍Sentinel-2 Level-2A数据在时间序列方面的研究. ...
最新文章
- SpringBoot学习之启动方式
- python 执行ping命令_Python黑科技:在家远程遥控公司电脑,python+微信一键连接!...
- 关于php语言的使用!
- 指针和数组的区别是什么?
- 【若依(ruoyi)】启动时,卡死在:Using existing EHCache named [loginRecordCache]
- 对象空指针_可选和对象:空指针救星!
- Corporate Action Guidelines Terms
- 在Linux上安装字体
- 在禁用uac_从Windows命令行启用或禁用UAC
- java十二星座 (快来测试你是什么星座吧)
- elementUI的 tree搜索过滤,可识别拼音,且不区分大小写
- pdf提取其中一页或几页的方法
- Nginx基础应用配置小结 - 运维笔记
- USB插座外壳接地的处理和emi,esd考虑
- laravel视图 compact 循环遍历,if判断
- Python函数设计与使用
- python get方法列表参数_python中requests库get方法带参数请求
- Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspectivewith Transformers
- 缺芯导致全球汽车减产超一千万辆
- Nginx 配置 SSL 证书 + HTTPS 站点小记