Visão geral da imagem

Como mencionado no documento Primeiros passos, os dados rasterizados são representados como objetos Image no Earth Engine. As imagens são compostas por uma ou mais bandas, e cada banda tem o próprio nome, tipo de dados, escala, máscara e projeção. Cada imagem tem metadados armazenados como um conjunto de propriedades.

Construtor ee.Image

As imagens podem ser carregadas colando um código do recurso do Earth Engine no construtor ee.Image. Encontre os IDs de imagem no Data Catalog. Por exemplo, para um modelo de elevação digital (NASADEM):

Editor de código (JavaScript)

var loadedImage = ee.Image('NASA/NASADEM_HGT/001');

Configuração do Python

Consulte a página Ambiente Python (em inglês) para informações sobre a API Python e como usar geemap para desenvolvimento interativo.

import ee
import geemap.core as geemap

Colab (Python)

loaded_image = ee.Image('NASA/NASADEM_HGT/001')

Encontrar uma imagem usando a ferramenta de pesquisa do Editor de código é equivalente. Quando você importa o recurso, o código de construção da imagem é escrito para você na seção de importações do Editor de Código. Você também pode usar um código do recurso pessoal como argumento para o construtor ee.Image.

Receber um ee.Image de um ee.ImageCollection

A maneira padrão de extrair uma imagem de uma coleção é filtrar a coleção, com filtros em ordem decrescente de especificidade. Por exemplo, para extrair uma imagem do conjunto de reflectância de superfície do Sentinel-2:

Editor de código (JavaScript)

var first = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
                .filterBounds(ee.Geometry.Point(-70.48, 43.3631))
                .filterDate('2019-01-01', '2019-12-31')
                .sort('CLOUDY_PIXEL_PERCENTAGE')
                .first();
Map.centerObject(first, 11);
Map.addLayer(first, {bands: ['B4', 'B3', 'B2'], min: 0, max: 2000}, 'first');

Configuração do Python

Consulte a página Ambiente Python (em inglês) para informações sobre a API Python e como usar geemap para desenvolvimento interativo.

import ee
import geemap.core as geemap

Colab (Python)

first = (
    ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
    .filterBounds(ee.Geometry.Point(-70.48, 43.3631))
    .filterDate('2019-01-01', '2019-12-31')
    .sort('CLOUDY_PIXEL_PERCENTAGE')
    .first()
)

# Define a map centered on southern Maine.
m = geemap.Map(center=[43.7516, -70.8155], zoom=11)

# Add the image layer to the map and display it.
m.add_layer(
    first, {'bands': ['B4', 'B3', 'B2'], 'min': 0, 'max': 2000}, 'first'
)
display(m)

A classificação é feita depois dos filtros. Evite classificar toda a coleção.

Imagens de GeoTIFFs otimizados para a nuvem

Use ee.Image.loadGeoTIFF() para carregar imagens de GeoTIFFs otimizados para nuvem (COGs) no Google Cloud Storage. O bucket precisa estar em um local compatível. Por exemplo, o conjunto de dados público do Landsat hospedado no Google Cloud contém este GeoTIFF, que corresponde à banda 5 de uma cena do Landsat 8. É possível carregar essa imagem do Cloud Storage usando ee.Image.loadGeoTIFF():

Editor de código (JavaScript)

var uri = 'gs://gcp-public-data-landsat/LC08/01/001/002/' +
    'LC08_L1GT_001002_20160817_20170322_01_T2/' +
    'LC08_L1GT_001002_20160817_20170322_01_T2_B5.TIF';
var cloudImage = ee.Image.loadGeoTIFF(uri);
print(cloudImage);

Configuração do Python

Consulte a página Ambiente Python (em inglês) para informações sobre a API Python e como usar geemap para desenvolvimento interativo.

import ee
import geemap.core as geemap

Colab (Python)

uri = (
    'gs://gcp-public-data-landsat/LC08/01/001/002/'
    + 'LC08_L1GT_001002_20160817_20170322_01_T2/'
    + 'LC08_L1GT_001002_20160817_20170322_01_T2_B5.TIF'
)
cloud_image = ee.Image.loadGeoTIFF(uri)
display(cloud_image)

Se você quiser recarregar um GeoTIFF otimizado para nuvem que foi exportado do Earth Engine para o Cloud Storage, defina cloudOptimized como true ao fazer a exportação.

Observação sobre desempenho: para um desempenho ideal, recomendamos registrar seus COGs como recursos em vez de carregá-los diretamente com ee.Image.loadGeoTIFF(). Consulte a visão geral do GeoTIFF otimizado para nuvem (COG, na sigla em inglês) para detalhes e comparação.

Imagens de matrizes Zarr v2

Use ee.Image.loadZarrV2Array() para carregar uma imagem de uma matriz Zarr v2 no Google Cloud Storage. Por exemplo, o conjunto de dados público ERA5 hospedado no Google Cloud contém esta matriz Zarr v2, que corresponde aos metros de água que evaporaram da superfície da Terra. É possível carregar essa matriz do Cloud Storage usando ee.Image.loadZarrV2Array():

Editor de código (JavaScript)

var timeStart = 1000000;
var timeEnd = 1000010;
var zarrV2ArrayImage = ee.Image.loadZarrV2Array({
  uri:
      'gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3/evaporation/.zarray',
  proj: 'EPSG:4326',
  starts: [timeStart],
  ends: [timeEnd]
});
print(zarrV2ArrayImage);
Map.addLayer(zarrV2ArrayImage, {min: -0.0001, max: 0.00005}, 'Evaporation');

Configuração do Python

Consulte a página Ambiente Python (em inglês) para informações sobre a API Python e como usar geemap para desenvolvimento interativo.

import ee
import geemap.core as geemap

Colab (Python)

time_start = 1000000
time_end = 1000010
zarr_v2_array_image = ee.Image.loadZarrV2Array(
    uri='gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3/evaporation/.zarray',
    proj='EPSG:4326',
    starts=[time_start],
    ends=[time_end],
)

display(zarr_v2_array_image)

m.add_layer(
    zarr_v2_array_image, {'min': -0.0001, 'max': 0.00005}, 'Evaporation'
)
m

Imagens constantes

Além de carregar imagens por ID, também é possível criar imagens com base em constantes, listas ou outros objetos adequados do Earth Engine. Veja a seguir métodos para criar imagens, receber subconjuntos de bandas e manipular bandas:

Editor de código (JavaScript)

// Create a constant image.
var image1 = ee.Image(1);
print(image1);

// Concatenate two images into one multi-band image.
var image2 = ee.Image(2);
var image3 = ee.Image.cat([image1, image2]);
print(image3);

// Create a multi-band image from a list of constants.
var multiband = ee.Image([1, 2, 3]);
print(multiband);

// Select and (optionally) rename bands.
var renamed = multiband.select(
    ['constant', 'constant_1', 'constant_2'], // old names
    ['band1', 'band2', 'band3']               // new names
);
print(renamed);

// Add bands to an image.
var image4 = image3.addBands(ee.Image(42));
print(image4);

Configuração do Python

Consulte a página Ambiente Python (em inglês) para informações sobre a API Python e como usar geemap para desenvolvimento interativo.

import ee
import geemap.core as geemap

Colab (Python)

# Create a constant image.
image_1 = ee.Image(1)
display(image_1)

# Concatenate two images into one multi-band image.
image_2 = ee.Image(2)
image_3 = ee.Image.cat([image_1, image_2])
display(image_3)

# Create a multi-band image from a list of constants.
multiband = ee.Image([1, 2, 3])
display(multiband)

# Select and (optionally) rename bands.
renamed = multiband.select(
    ['constant', 'constant_1', 'constant_2'],  # old names
    ['band1', 'band2', 'band3'],  # new names
)
display(renamed)

# Add bands to an image.
image_4 = image_3.addBands(ee.Image(42))
display(image_4)