前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >#GEE代码实例教程详解:Sentinel-2数据的NDWI和NDTI分析

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

作者头像
Twcat_tree
发布2024-07-10 07:50:34
1590
发布2024-07-10 07:50:34
举报
文章被收录于专栏:二猫の家

简介

本篇博客将介绍如何使用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在不同领域的应用。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-07-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 背景知识
    • Sentinel-2数据集
      • NDWI
        • NDTI
        • 完整代码
        • 代码详解
          • 1. 定义研究区域
            • 2. 加载Sentinel-2数据集
              • 3. 添加假彩色图层
                • 4. 计算NDWI
                  • 5. 打印NDWI直方图
                    • 6. 设置NDWI阈值
                      • 7. 计算NDTI
                        • 8. 导出NDTI图像
                        • 结论
                        • 进一步探索
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档