#GEE代码实例教程详解:Sentinel-2数据的NDWI和NDTI分析

2024-07-10 07:50:34 浏览数 (1)

简介

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

背景知识

Sentinel-2数据集

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

NDWI

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

NDTI

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

完整代码

代码语言:javascript复制
// 定义研究区域的坐标点
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. 定义研究区域

创建多边形区域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在不同领域的应用。

0 人点赞