我正在使用Google earth Engine,我正尝试使用另一个图像(波段)提取/过滤(剪辑)一个波段中的像素。我计算了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,如果这不起作用,我将留下的选项。
感谢您的帮助!
答案 0 :(得分:0)
变量threshold
是一个蒙版,所以你必须使用阈值蒙版掩盖马赛克中的像素,对吧?如果是这种情况,只需更新图像的掩码:
var masked = maxNDVI.updateMask(threshold)