0

我正在使用谷歌地球引擎,我正在尝试使用另一个图像(波段)提取/过滤(剪辑)波段中的像素。我计算了 NDVI 并创建了一个阈值,以渲染 NDVI > 0.3 的图像,但我想提取可见 NIR 波段中的相应像素。
这是片段代码。

var s2 = ee.ImageCollection('COPERNICUS/S2');
var s2_filtered = s2.filterDate('2017-01-01', '2017-12-31')
                  .filterBounds(geometry) //custom Geometry

var calcNDVI = function(x){
  var ndvi4 = x.normalizedDifference(["B5", "B4"]).rename("ndvi")
  return x.addBands(ndvi)
}

var ndviCollection = s2_filtered.map(calcNDVI)
var maxNDVI = mosaic.select("ndvi");
var threshold = maxNDVI.gt(0.3)

我现在想使用阈值变量(图像)在“B”、“G”、“R”和“NIR”波段中剪辑相应的像素。显然,我被困在这里。请让我知道是否有一种方法可以使用 GEE 中的另一个波段过滤/剪辑一个波段的像素。该任务类似于在 QGIS 中使用 Clipper,如果这不起作用,这是我剩下的选项。

谢谢你的帮助!

4

1 回答 1

0

该变量threshold是一个掩码,因此您必须使用阈值掩码来掩盖马赛克中的像素,对吗?如果是这种情况,只需更新图像的掩码:

var masked = maxNDVI.updateMask(threshold)
于 2018-03-16T14:36:00.213 回答