GEE计算NDVI并让水体显示为零的JS代码
时间: 2024-02-16 16:03:45 浏览: 115
水面模拟的代码
以下是计算 NDVI 并将水体显示为零的 Google Earth Engine(GEE)的 JavaScript 代码:
```
// 选择需要处理的图像集合
var collection = ee.ImageCollection('LANDSAT/LC08/C01/T1_SR')
.filterDate('2019-01-01', '2019-12-31')
.filterBounds(geometry);
// 定义函数来计算 NDVI
function addNDVI(image) {
var ndvi = image.normalizedDifference(['B5', 'B4']).rename('NDVI');
return image.addBands(ndvi);
}
// 应用 NDVI 函数到图像集合
var withNDVI = collection.map(addNDVI);
// 定义阈值来将水体显示为零
var waterThreshold = 0.1;
// 创建水体蒙版
var waterMask = withNDVI.select('NDVI').lt(waterThreshold);
// 将水体蒙版应用到 NDVI 图像上
var maskedNDVI = withNDVI.updateMask(waterMask.not());
// 可视化 NDVI 图像
Map.centerObject(geometry);
Map.addLayer(maskedNDVI.select('NDVI'), {min: -1, max: 1, palette: ['blue', 'white', 'green']}, 'NDVI masked');
```
在上面的代码中,首先选择了需要处理的图像集合,并定义了一个函数来计算 NDVI。然后将 NDVI 函数应用到图像集合中,并根据阈值创建了水体蒙版。最后将水体蒙版应用到 NDVI 图像上并进行可视化。
阅读全文