当前位置:   article > 正文

#GEE代码实例教程详解:Sentinel-2数据的NDWI和NDTI分析_归一化温差ndti指数

归一化温差ndti指数

简介

本篇博客将介绍如何使用Google Earth Engine (GEE) 对Sentinel-2数据进行归一化差异水体指数(NDWI)和归一化差异植被指数(NDTI)的分析。这些指数有助于识别水体和植被覆盖情况。

背景知识

Sentinel-2数据集

Sentinel-2是由欧洲空间局(ESA)提供的高分辨率光学卫星数据,广泛应用于植被监测、土地覆盖分类和环境变化分析。

NDWI

归一化差异水体指数(NDWI)是一种用于识别水体的遥感指数。

NDTI

归一化差异植被指数(NDTI)是一种用于增强植被特征的遥感指数,通常用于植被覆盖度分析。

完整代码

// 定义研究区域的坐标点
var cor = [
  [经度1, 纬度1],
  [经度2, 纬度2],
  [经度3, 纬度3],
  [经度4, 纬度4]
  // 请替换为具体的坐标点
];

// 创建多边形区域
var roi = ee.Geometry.Polygon(cor);

// 将地图中心设置为研究区域
Map.centerObject(roi);

// 加载Sentinel-2数据集
var sen = ee.ImageCollection("COPERNICUS/S2_SR_HARMONIZED")
  .select(['B2', 'B3', 'B4', 'B8'])
  .filterDate('2023', '2024')
  .filterBounds(roi)
  .filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 10))
  .median().multiply(0.0001);

// 添加假彩色图层
Map.addLayer(sen.clip(roi),
  {bands:['B8', 'B4', 'B3']}, 'false color composite', false);

// 计算NDWI
var ndwi = sen.normalizedDifference(['B3', 'B8']).rename('ndwi');
Map.addLayer(ndwi.clip(roi), [], 'ndwi', false);

// 打印NDWI直方图
print(
  ui.Chart.image.histogram(ndwi, roi, 100)
);

// 设置NDWI阈值
var thr = ndwi.gt(0.1);
Map.addLayer(thr.clip(roi), [], 'ndwi threshold', false);

// 更新掩膜
var sen_mask = sen.updateMask(thr);

// 添加掩膜后的Sentinel-2图层
Map.addLayer(sen_mask.clip(roi), [], 'sen_mask', false);

// 计算NDTI
var ndti = sen_mask.normalizedDifference(['B4', 'B3']).rename('ndti');
Map.addLayer(ndti.clip(roi), {
  palette: ['blue', 'green', 'yellow', 'orange', 'red']
}, 'ndti', false);

// 导出NDTI图像
Export.image.toDrive({
  image: ndti.clip(roi),
  description: 'sen2_ndti',
  region: roi,
  scale: 10,
  crs: ndti.getInfo().crs,
  maxPixels: 1e13,
  folder: 'test'
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62

代码详解

1. 定义研究区域

创建多边形区域roi,用于限定分析的地理范围,并设置地图中心。

2. 加载Sentinel-2数据集

加载Sentinel-2数据集,选择特定波段,筛选日期,地理范围和云层覆盖。

3. 添加假彩色图层

使用Sentinel-2数据的特定波段创建假彩色图层,以更好地识别不同地表特征。

4. 计算NDWI

计算归一化差异水体指数,以识别水体。

5. 打印NDWI直方图

打印NDWI的直方图,以了解NDWI值的分布。

6. 设置NDWI阈值

设置阈值以识别水体区域,并更新掩膜。

7. 计算NDTI

计算归一化差异植被指数,以识别植被覆盖度。

8. 导出NDTI图像

将NDTI图像导出到Google Drive。

结论

本教程展示了如何使用GEE对Sentinel-2数据进行NDWI和NDTI的计算和分析。这些指数有助于了解水体和植被覆盖度的空间分布。

进一步探索

GEE提供了多种工具和方法来进行水体和植被分析。在后续的教程中,我们将继续探索GEE在不同领域的应用。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/936308
推荐阅读
相关标签
  

闽ICP备14008679号