ESA WorldCereal 10 m v100

ESA/WorldCereal/2021/MODELS/v100
Dataset Availability
2020-01-01T00:00:00Z–2021-12-31T23:59:59Z
Dataset Provider
Earth Engine Snippet
ee.ImageCollection("ESA/WorldCereal/2021/MODELS/v100")
Tags
agriculture copernicus crop esa global landcover landsat sentinel1-derived sentinel2-derived

Description

The European Space Agency (ESA) WorldCereal 10 m 2021 product suite consists of global-scale annual and seasonal crop maps and their related confidence. They were generated as part of the ESA-WorldCereal project. More information on the content of these products and the methodology used to generate them is described in [1].

This collection contains up to 106 agro-ecological zone (AEZ) images for each product which were all processed with respect to their own regional seasonality and should be considered as independent products. These seasons are described in the list below and were developed in [2] as part of the project. Note that cereals as described by WorldCereal include wheat, barley, and rye, which belong to the Triticeae tribe.

WorldCereal seasons description:

  • tc-annual: a one-year cycle being defined in an AEZ by the end of the last considered growing season
  • tc-wintercereals: the main cereals season defined in an AEZ
  • tc-springcereals: optional springcereals season, only defined in certain AEZ
  • tc-maize-main: the main maize season defined in an AEZ
  • tc-maize-second: optional second maize season, only defined in certain AEZ

The available products in this collection are:

  • temporarycrops
  • maize
  • wintercereals
  • springcereals
  • irrigation

Each product (image) has a binary classification (0 or 100) and a confidence (0-100) band. Note that AEZs for which no irrigation product is available were not processed because of the unavailability of thermal Landsat data.

The collection should be filtered using one or more of the following image properties:

  • aez_id, holding the ID of the AEZ to which the image belongs
  • product, describing the WorldCereal product name of the image
  • season, describing the season for which the image is valid.

References:

WorldCereal datasets:

Bands

Resolution
10 meters

Bands

Name Min Max Description
classification 0 100

Classification: 0 or 100

confidence 0 100

Confidence, 0 to 100

Image Properties

Image Properties

Name Type Description
aez_id INT

ID of the agro-ecological zone (AEZ) to which the product belongs.

product STRING

WorldCereal product name.

season STRING

Season for which the product is valid.

Terms of Use

Terms of Use

CC-BY-4.0

Citations

Citations:
  • Van Tricht, K., Degerickx, J., Gilliams, S., Zanaga, D., Battude, M., Grosu, A., Brombacher, J., Lesiv, M., Bayas, J. C. L., Karanam, S., Fritz, S., Becker-Reshef, I., Franch, B., Mollà-Bononad, B., Boogaard, H., Pratihast, A. K., and Szantoi, Z.: WorldCereal: a dynamic open-source system for global-scale, seasonal, and reproducible crop and irrigation mapping, Earth Syst. Sci. Data Discuss. [preprint], doi:10.5194/essd-2023-184, in review, 2023.,

DOIs

Explore with Earth Engine

Code Editor (JavaScript)

var dataset = ee.ImageCollection('ESA/WorldCereal/2021/MODELS/v100')

// Set satellite background
Map.setOptions('SATELLITE');

// Typically we'd want to mask the "other" class (value 0)
// in the images
function mask_other(img) {
  return img.updateMask(img.neq(0))
}

// Apply the mask_other function to the collection
dataset = dataset.map(mask_other);

/*--------------------------------------------------
Basic example for a global mosaic of temporary crops
--------------------------------------------------*/

// Get a global mosaic for all agro-ecological zone (AEZ) of temporary crops
var temporarycrops = dataset.filter('product == "temporarycrops"').mosaic();

// Visualization specifics
var visualization_class = {
  bands: ["classification"],
  max: 100,
  palette: ["ff0000"]
};

var visualization_conf = {
  bands: ['confidence'],
  min: [0],
  max: [100],
  palette: ['be0000','fff816','069711'],
};

// Show global classification mosaic
Map.centerObject(temporarycrops);
Map.addLayer(temporarycrops, visualization_class, 'Temporary crops');

// By default don't show confidence layer
Map.addLayer(
    temporarycrops, visualization_conf, 'Temporary crops confidence', false);

/*--------------------------------------------------
Advanced example for tc-maize-main season products
in a specific AEZ
--------------------------------------------------*/

// Filter on AEZ and season
var tc_maize_main_46172 = dataset.filter(
  ee.Filter.eq('season', 'tc-maize-main')
  ).filter(ee.Filter.eq('aez_id', 46172));

// Get the different products
var maize = tc_maize_main_46172.filter('product == "maize"');
var irrigation = tc_maize_main_46172.filter('product == "irrigation"');

// Visualization specifics
var visualization_maize = {
  bands: ["classification"],
  max: 100,
  palette: ["#ebc334"]
};

var visualization_irrigation = {
  bands: ["classification"],
  max: 100,
  palette: ["#2d79eb"]
};

// Show maize and irrigation classification
Map.addLayer(maize, visualization_maize, 'Maize');
Map.addLayer(irrigation, visualization_irrigation, 'Active irrigation');

// Uncomment the line below to zoom to a region
// where maize, other crops and active irrigation are visible
// Map.setCenter(-0.9911, 43.5017, 12)
Open in Code Editor