Considere o exemplo de necessidade de calcular a mediana de uma série temporal de imagens
representada por um ImageCollection
. Para reduzir um ImageCollection
,
use imageCollection.reduce()
. Isso reduz a coleção de imagens a uma
imagem individual, conforme ilustrado na Figura 1. Especificamente, a saída é calculada
por pixel, de modo que cada pixel na saída é composto pelo valor mediano de todas as
imagens da coleção naquele local. Para receber outras estatísticas, como média, soma, variância, percentil arbitrário etc., o redutor apropriado precisa ser selecionado e aplicado. Consulte a guia Documentos no
Editor de código para conferir uma lista de todos os redutores
disponíveis no momento. Para estatísticas básicas, como mínimo, máximo, média etc.,
ImageCollection
tem métodos de atalho, como min()
, max()
, mean()
etc. Eles funcionam exatamente da mesma maneira
que a chamada reduce()
, exceto que os nomes das bandas resultantes não terão o
nome do redutor anexado.

Para um exemplo de redução de um ImageCollection
, considere uma coleção de imagens do Landsat 5, filtrada por caminho e linha. O código a seguir usa reduce()
para reduzir a coleção a um Image
. Aqui, um redutor de mediana é usado apenas
para fins ilustrativos:
Editor de código (JavaScript)
// Load an image collection, filtered so it's not too much data. var collection = ee.ImageCollection('LANDSAT/LT05/C02/T1') .filterDate('2008-01-01', '2008-12-31') .filter(ee.Filter.eq('WRS_PATH', 44)) .filter(ee.Filter.eq('WRS_ROW', 34)); // Compute the median in each band, each pixel. // Band names are B1_median, B2_median, etc. var median = collection.reduce(ee.Reducer.median()); // The output is an Image. Add it to the map. var vis_param = {bands: ['B4_median', 'B3_median', 'B2_median'], gamma: 1.6}; Map.setCenter(-122.3355, 37.7924, 9); Map.addLayer(median, vis_param);
import ee import geemap.core as geemap
Colab (Python)
# Load an image collection, filtered so it's not too much data. collection = ( ee.ImageCollection('LANDSAT/LT05/C02/T1') .filterDate('2008-01-01', '2008-12-31') .filter(ee.Filter.eq('WRS_PATH', 44)) .filter(ee.Filter.eq('WRS_ROW', 34)) ) # Compute the median in each band, each pixel. # Band names are B1_median, B2_median, etc. median = collection.reduce(ee.Reducer.median()) # The output is an Image. Add it to the map. vis_param = {'bands': ['B4_median', 'B3_median', 'B2_median'], 'gamma': 1.6} m = geemap.Map() m.set_center(-122.3355, 37.7924, 9) m.add_layer(median, vis_param) m
Isso retorna uma Image
de várias bandas, em que cada pixel é a mediana de todos
os pixels desmascarados na ImageCollection
nesse local. Especificamente,
o redutor foi repetido para cada banda das imagens de entrada, o que significa que a mediana
é calculada de forma independente em cada banda. Os nomes das bandas têm o nome do
redutor anexado: 'B1_median'
, 'B2_median'
etc.
A saída deve ser semelhante à Figura 2.
Para mais informações sobre como reduzir coleções de imagens, consulte a
seção de redução dos documentos do ImageCollection
. Em
particular, observe que as imagens produzidas pela redução de um ImageCollection
não têm projeção. Isso significa
que você precisa definir explicitamente a escala em todas as computações que envolvem a saída de
imagens computadas por uma redução de ImageCollection
.
