Извлечение (отсечение) в Google Earth Engine

Я работаю с 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. Задача аналогична использованию Clipper в QGIS, с опциями, которые мне оставлены, если это не сработает.

Спасибо за вашу помощь!

1 ответ

Решение

Переменная threshold такое маска, поэтому вы должны замаскировать пиксели в мозаике, используя пороговую маску, верно? Если это так, просто обновите маску изображения:

var masked = maxNDVI.updateMask(threshold)
Другие вопросы по тегам