Dynamic World V1

GOOGLE/DYNAMICWORLD/V1
Disponibilidad de los conjuntos de datos
2015-06-27T00:00:00Z–2025-03-09T03:20:17Z
Proveedor de conjuntos de datos
Fragmento de Earth Engine
ee.ImageCollection("GOOGLE/DYNAMICWORLD/V1")

Dynamic World es un conjunto de datos de cobertura y uso del suelo (LULC) de 10 m en tiempo casi real (NRT) que incluye probabilidades de clase y la información de la etiqueta para nueve clases.

Las predicciones de Dynamic World están disponibles para la colección L1C de Sentinel-2 desde el 27/06/2015 hasta la fecha. La frecuencia de revisita de Sentinel-2 es de entre 2 y 5 días, según la latitud. Las predicciones de Dynamic World se generan para las imágenes L1C de Sentinel-2 con CLOUDY_PIXEL_PERCENTAGE <= 35%. Las predicciones se enmascaran para quitar las nubes y las sombras de las nubes con una combinación de la probabilidad de nubes de S2, el índice de desplazamiento de nubes y la transformación de distancia direccional.

Las imágenes de la colección Dynamic World tienen nombres que coinciden con los nombres de los recursos L1C de Sentinel-2 individuales de los que se derivaron, p. ej.:

ee.Image('COPERNICUS/S2/20160711T084022_20160711T084751_T35PKT')

tiene una imagen de Dynamic World coincidente con el nombre ee.Image('GOOGLE/DYNAMICWORLD/V1/20160711T084022_20160711T084751_T35PKT').

Todas las bandas de probabilidad, excepto la banda "etiqueta", suman 1 en conjunto.

Para obtener más información sobre el conjunto de datos de Dynamic World y ver ejemplos de cómo generar compuestos, calcular estadísticas regionales y trabajar con las series temporales, consulta la serie de instructivos Introducción a Dynamic World.

Dado que las estimaciones de clases de Dynamic World se derivan de imágenes individuales con un contexto espacial de una ventana móvil pequeña, las "probabilidades" de las 10 principales para las coberturas terrestres previstas que se definen en parte por la cobertura a lo largo del tiempo, como los cultivos, pueden ser comparativamente bajas en ausencia de características distintivas obvias. Las superficies de alta reflectancia en climas áridos, la arena, los reflejos del sol, etcétera, también pueden presentar este fenómeno.

Para seleccionar solo los píxeles que pertenecen con seguridad a una clase de mundo dinámico, se recomienda enmascarar los resultados de mundo dinámico aplicando un umbral a la "probabilidad" estimada de la predicción Top-1.

Tamaño de píxel
10 metros

Bandas

Nombre Mín. Máx. Descripción
water 0 1

Probabilidad estimada de cobertura total por agua

trees 0 1

Probabilidad estimada de cobertura completa por árboles

grass 0 1

Probabilidad estimada de cobertura completa de hierba

flooded_vegetation 0 1

Probabilidad estimada de cobertura completa por vegetación inundada

crops 0 1

Probabilidad estimada de cobertura completa por cultivos

shrub_and_scrub 0 1

Probabilidad estimada de cobertura completa por arbustos y matorrales

built 0 1

Probabilidad estimada de cobertura completa por construcción

bare 0 1

Probabilidad estimada de cobertura completa por bare

snow_and_ice 0 1

Probabilidad estimada de cobertura completa de nieve y hielo

label 0 8

Índice de la banda con la probabilidad estimada más alta

Tabla de clases de etiquetas

Valor Color Descripción
0 #419bdf agua
1 #397d49 árboles
2 #88b053 césped
3 #7a87c6 flooded_vegetation
4 #e49635 cultivos
5 #dfc35a shrub_and_scrub
6 #c4281b construido
7 #a59b8f desnudo
8 #b39fe1 snow_and_ice

Propiedades de la imagen

Nombre Tipo Descripción
dynamicworld_algorithm_version STRING

Es la cadena de versión que identifica de forma inequívoca el modelo de mundo dinámico y el proceso de inferencia que se usó para producir la imagen.

qa_algorithm_version STRING

Es la cadena de versión que identifica de forma única el proceso de enmascaramiento de nubes que se usó para producir la imagen.

Condiciones de Uso

Este conjunto de datos tiene la licencia CC-BY 4.0 y requiere la siguiente atribución: "Google produce este conjunto de datos para el proyecto Dynamic World en asociación con National Geographic Society y World Resources Institute".

Contiene datos modificados de Copernicus Sentinel [2015-presente]. Consulta el Aviso Legal de Datos de Sentinel.

Citas:
  • Brown, C.F., Brumby, S.P., Guzder-Williams, B. et al. Dynamic World, Near real-time global 10 m land use land cover mapping. Sci Data 9, 251 (2022). doi:10.1038/s41597-022-01307-4

Explora con Earth Engine

// Construct a collection of corresponding Dynamic World and Sentinel-2 for
// inspection. Filter by region and date.
var START = ee.Date('2021-04-02');
var END = START.advance(1, 'day');

var colFilter = ee.Filter.and(
    ee.Filter.bounds(ee.Geometry.Point(20.6729, 52.4305)),
    ee.Filter.date(START, END));

var dwCol = ee.ImageCollection('GOOGLE/DYNAMICWORLD/V1').filter(colFilter);
var s2Col = ee.ImageCollection('COPERNICUS/S2_HARMONIZED');

// Link DW and S2 source images.
var linkedCol = dwCol.linkCollection(s2Col, s2Col.first().bandNames());

// Get example DW image with linked S2 image.
var linkedImg = ee.Image(linkedCol.first());

// Create a visualization that blends DW class label with probability.
// Define list pairs of DW LULC label and color.
var CLASS_NAMES = [
    'water', 'trees', 'grass', 'flooded_vegetation', 'crops',
    'shrub_and_scrub', 'built', 'bare', 'snow_and_ice'];

var VIS_PALETTE = [
    '419bdf', '397d49', '88b053', '7a87c6', 'e49635', 'dfc35a', 'c4281b',
    'a59b8f', 'b39fe1'];

// Create an RGB image of the label (most likely class) on [0, 1].
var dwRgb = linkedImg
    .select('label')
    .visualize({min: 0, max: 8, palette: VIS_PALETTE})
    .divide(255);

// Get the most likely class probability.
var top1Prob = linkedImg.select(CLASS_NAMES).reduce(ee.Reducer.max());

// Create a hillshade of the most likely class probability on [0, 1];
var top1ProbHillshade =
    ee.Terrain.hillshade(top1Prob.multiply(100))
    .divide(255);

// Combine the RGB image with the hillshade.
var dwRgbHillshade = dwRgb.multiply(top1ProbHillshade);

// Display the Dynamic World visualization with the source Sentinel-2 image.
Map.setCenter(20.6729, 52.4305, 12);
Map.addLayer(
    linkedImg, {min: 0, max: 3000, bands: ['B4', 'B3', 'B2']}, 'Sentinel-2 L1C');
Map.addLayer(
    dwRgbHillshade, {min: 0, max: 0.65}, 'Dynamic World V1 - label hillshade');

Consulta la página Entorno de Python para obtener información sobre la API de Python y el uso de geemap para el desarrollo interactivo.

import ee
import geemap.core as geemap
# Construct a collection of corresponding Dynamic World and Sentinel-2 for
# inspection. Filter by region and date.
START = ee.Date('2021-04-02')
END = START.advance(1, 'day')

col_filter = ee.Filter.And(
    ee.Filter.bounds(ee.Geometry.Point(20.6729, 52.4305)),
    ee.Filter.date(START, END),
)

dw_col = ee.ImageCollection('GOOGLE/DYNAMICWORLD/V1').filter(col_filter)
s2_col = ee.ImageCollection('COPERNICUS/S2_HARMONIZED');

# Link DW and S2 source images.
linked_col = dw_col.linkCollection(s2_col, s2_col.first().bandNames());

# Get example DW image with linked S2 image.
linked_image = ee.Image(linked_col.first())

# Create a visualization that blends DW class label with probability.
# Define list pairs of DW LULC label and color.
CLASS_NAMES = [
    'water',
    'trees',
    'grass',
    'flooded_vegetation',
    'crops',
    'shrub_and_scrub',
    'built',
    'bare',
    'snow_and_ice',
]

VIS_PALETTE = [
    '419bdf',
    '397d49',
    '88b053',
    '7a87c6',
    'e49635',
    'dfc35a',
    'c4281b',
    'a59b8f',
    'b39fe1',
]

# Create an RGB image of the label (most likely class) on [0, 1].
dw_rgb = (
    linked_image.select('label')
    .visualize(min=0, max=8, palette=VIS_PALETTE)
    .divide(255)
)

# Get the most likely class probability.
top1_prob = linked_image.select(CLASS_NAMES).reduce(ee.Reducer.max())

# Create a hillshade of the most likely class probability on [0, 1]
top1_prob_hillshade = ee.Terrain.hillshade(top1_prob.multiply(100)).divide(255)

# Combine the RGB image with the hillshade.
dw_rgb_hillshade = dw_rgb.multiply(top1_prob_hillshade)

# Display the Dynamic World visualization with the source Sentinel-2 image.
m = geemap.Map()
m.set_center(20.6729, 52.4305, 12)
m.add_layer(
    linked_image,
    {'min': 0, 'max': 3000, 'bands': ['B4', 'B3', 'B2']},
    'Sentinel-2 L1C',
)
m.add_layer(
    dw_rgb_hillshade,
    {'min': 0, 'max': 0.65},
    'Dynamic World V1 - label hillshade',
)
m
Abrir en el editor de código