Uma coleção de imagens se refere a um conjunto de imagens do Earth Engine. Por exemplo, a coleção de todas as imagens do Landsat 8 é um ee.ImageCollection
. Assim como a imagem SRTM com que você estava trabalhando, as coleções de imagens também têm um ID. Assim como com imagens únicas, é possível descobrir o ID de uma coleção de imagens pesquisando o catálogo de dados do Earth Engine no Editor de código e consultando a página de detalhes do conjunto de dados. Por exemplo, pesquise "landsat 8 toa" e clique no primeiro resultado, que deve corresponder ao conjunto de dados
USGS Landsat 8 Collection 1 Tier 1 TOA Reflectance.
Importe o conjunto de dados usando o botão Importar e renomeie como l8
ou copie o ID para o
construtor da coleção de imagens:
Editor de código (JavaScript)
var l8 = ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA');
Filtrar coleções de imagens
Vale a pena notar que essa coleção representa todas as cenas do Landsat 8 coletadas em todo o planeta. Muitas vezes, é útil extrair uma única imagem ou um subconjunto de imagens para testar algoritmos. Para limitar a coleta por tempo ou espaço, filtre os dados. Por exemplo, para filtrar a coleção e mostrar apenas imagens que cobrem um local específico, primeiro defina sua área de interesse com um ponto (ou linha ou polígono) usando as ferramentas de desenho de geometria. Panorame até a área de interesse, passe o cursor sobre Importações de geometria (se você já tiver uma ou mais geometrias definidas) e clique em +nova camada (se não tiver nenhuma importação, vá para a próxima etapa). Selecione a ferramenta de desenho de ponto () e crie um ponto na área de interesse. Nomeie a importação como
point
. Agora, filtre a coleção l8
para receber apenas as imagens que se cruzam com o ponto e adicione um segundo filtro para limitar a coleção apenas às imagens adquiridas em 2015:
Editor de código (JavaScript)
var spatialFiltered = l8.filterBounds(point); print('spatialFiltered', spatialFiltered); var temporalFiltered = spatialFiltered.filterDate('2015-01-01', '2015-12-31'); print('temporalFiltered', temporalFiltered);
Aqui, filterBounds()
e filterDate()
são métodos de atalho para o método mais geral filter()
em coleções de imagens, que usa um ee.Filter()
como argumento. Acesse a guia Documentos do Editor de
código para saber mais sobre esses métodos. O argumento para filterBounds()
é o ponto que você digitalizou, e os argumentos para filterDate()
são duas datas,
expressas como strings.
É possível print()
as coleções filtradas. Não é possível imprimir mais de 5.000 itens de uma só vez. Por exemplo, não é possível imprimir toda a coleção l8
. Depois de executar o método print()
, inspecione as coleções impressas no console. Quando você expande o
ImageCollection
usando o zippy
() e depois a lista de
features
, uma lista de imagens aparece. Cada uma delas também pode ser
expandida e inspecionada. Essa é uma maneira de descobrir o ID de uma imagem individual. Outra maneira mais programática de receber imagens individuais para análise é classificar a coleção para receber a imagem mais recente, mais antiga ou ideal em relação a alguma propriedade de metadados. Por exemplo, ao inspecionar os objetos de imagem nas coleções impressas, você pode ter observado uma propriedade de metadados chamada CLOUD_COVER
. Use essa propriedade para receber a imagem menos nublada de 2015 na sua área de interesse:
Editor de código (JavaScript)
// This will sort from least to most cloudy. var sorted = temporalFiltered.sort('CLOUD_COVER'); // Get the first (least cloudy) image. var scene = sorted.first();
Agora você já pode mostrar a imagem.
Digressão: exibição de imagens RGB
Quando uma imagem multibanda é adicionada a um mapa, o Earth Engine escolhe as três primeiras bandas da imagem e as mostra como vermelho, verde e azul por padrão, esticando-as de acordo com o tipo de dados, conforme descrito anteriormente. Normalmente, isso não funciona. Por exemplo, se você adicionar a imagem do Landsat (scene
no exemplo anterior) ao mapa, o resultado será insatisfatório:
Editor de código (JavaScript)
Map.centerObject(scene, 9); Map.addLayer(scene, {}, 'default RGB');
Primeiro, o mapa é centralizado na imagem na escala de zoom 9. Em seguida, a imagem é
mostrada com um objeto vazio ({}
) para o parâmetro visParams
(consulte a documentação Map.addLayer()
para mais detalhes). Como resultado, a imagem é mostrada com a visualização padrão: as três primeiras bandas são mapeadas para R, G e B, respectivamente, e esticadas para [0, 1], já que as bandas são do tipo de dados float
. Isso significa que a banda de aerossol costeiro ("B1") é renderizada em vermelho, a banda azul ("B2") é renderizada em verde, e a banda verde ("B3") é renderizada em azul. Para renderizar a imagem como um composto de cores verdadeiras, diga ao Earth Engine para usar as bandas do Landsat 8 "B4", "B3" e "B2" para R, G e B, respectivamente. Especifique quais intervalos usar com a propriedade bands
do objeto visParams
. Saiba mais sobre as bandas do Landsat nesta referência.
Você também precisa fornecer valores de min
e max
adequados para mostrar a refletância de alvos típicos da superfície da Terra. Embora as listas possam ser usadas para especificar valores diferentes para cada banda, aqui é suficiente especificar 0.3
como max
e usar o valor padrão zero para o parâmetro min
. Combinar os parâmetros de visualização em um objeto e mostrar:
Editor de código (JavaScript)
var visParams = {bands: ['B4', 'B3', 'B2'], max: 0.3}; Map.addLayer(scene, visParams, 'true-color composite');
O resultado será parecido com a Figura 5. Esse código atribui o objeto de parâmetros de visualização a uma variável para possível uso futuro. Como você vai descobrir em breve, esse objeto será útil ao visualizar coleções de imagens.

Tente visualizar diferentes bandas. Outra combinação favorita é "B5", "B4" e "B3", chamada de composição de falsa cor. Outros composições interessantes de falsa cor são descritas aqui.
Como o Earth Engine foi projetado para fazer análises em grande escala, você não precisa trabalhar com apenas uma cena. Agora é hora de mostrar uma coleção inteira como um composto RGB.
Mostrar coleções de imagens
Adicionar uma coleção de imagens a um mapa é semelhante a adicionar uma imagem a um mapa. Por exemplo, usando imagens de 2016 na coleção l8
e o objeto visParams
definido anteriormente,
Editor de código (JavaScript)
var l8 = ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA'); var landsat2016 = l8.filterDate('2016-01-01', '2016-12-31'); Map.addLayer(landsat2016, visParams, 'l8 collection');
Agora você pode diminuir o zoom e ver um mosaico contínuo onde as imagens do Landsat são coletadas (ou seja, sobre a terra). Além disso, ao usar a guia Inspector e clicar na imagem, você vai encontrar uma lista de valores de pixel (ou um gráfico) na seção Pixels e uma lista de objetos de imagem na seção Objects do inspetor.
Se você diminuiu o zoom o suficiente, provavelmente notou algumas nuvens no mosaico. Quando você adiciona um ImageCollection
ao mapa, ele é mostrado como um valor recente composto, ou seja, apenas os pixels mais recentes são exibidos (como chamar mosaic()
na coleção). Por isso, é possível notar descontinuidades entre percursos adquiridos em momentos diferentes. É por isso que muitas áreas podem parecer nubladas. Na próxima página, saiba como
mudar a forma como as imagens são combinadas para se livrar dessas nuvens irritantes.