DOI: 10.5281/zenodo.12941231
title: ben-ge-800: BigEarthNet Extended with Geographical and Environmental Data

description: M. Mommert, N. Kesseli, J. Hanna, L. Scheibenreif, D. Borth, B. Demir, "ben-ge: Extending BigEarthNet with Geographical and Environmental Data", IEEE International Geoscience and Remote Sensing Symposium, Pasadena, USA, 2023.


ben-ge-800 is a small-scale multimodal dataset for Earth observation that is a subset of the ben-ge dataset (https://github.com/HSG-AIML/ben-ge), which in turn serves as an extension to the BigEarthNet dataset. ben-ge complements the Sentinel-1/2 data contained in BigEarthNet by providing additional data modalities:

* elevation data extracted from the Copernicus Digital Elevation Model GLO-30;* land-use/land-cover data extracted from ESA Worldcover;* climate zone information extracted from Beck et al. 2018;* environmental data concurrent with the Sentinel-1/2 observations from the ERA-5 global reanalysis;* a seasonal encoding.

ben-ge-800 contains 800 patches out of 590,326 patches in the full ben-ge dataset. These 800 patches were sampled in such a way that for each of the 8 most common ESA WorldCover land-use/land-cover classes (tree cover, shrubland, grassland, cropland, built-up, bare/sparse vegetation, permanent water bodies, herbaceous wetland), we sampled 1000 patches randomly and used the fractional coverage of this class as a weight in the sampling process. As a result, these classes are slightly more balanced in ben-ge-800 than in the full dataset.

Data Modalities and Products

Meta Data

Relevant meta data for the ben-ge-800 dataset are compiled in the file ben-ge-800_meta.csv. This file resides on the root level of this archive and contains the following data for each patch:* patch_id: the Sentinel-2 patch id, which plays a central role for cross-referencing different data modalities for individual patches;* patch_id_s1: the Sentinel-1 patch id for this specific patch;* timestamp_s2: the timestamp for the Sentinel-2 observation;* timestamp_s1: the timestamp for the Sentinel-1 observation;* season_s2: the seasonal encoding (see below) for the time of the Sentinel-2 observation;* season_s1: the seasonal encoding (see below) for the time of the Sentinel-1 observation;* lon: longitude (WGS-84) of the center of the patch [degrees];* lat: latitude (WGS-84) of the center of the patch [degrees];* climatezone: integer value indicating the climate zone based on Beck et al. 2018 (see below for details).

Digital Elevation Model (Copernicus DEM GLO-30)

DEM data are contained in the dem/ directory of this archive.

Topographic maps are generated based on the global Copernicus Digital Elevation Model (GLO-30) (https://spacedata.copernicus.eu/collections/copernicus-digital-elevation-model). Relevant GLO-30 map tiles from the 2021 data release were downloaded through AWS (https://registry.opendata.aws/copernicus-dem/), reprojected into the coordinate frame of the corresponding Sentinel-1/2 patches and interpolated with bilinear resampling to 10 m resolution on the ground. 

Elevation data are provided in a separate geotiff file for each patch. The naming convention for these files uses the Sentinel-2 patch_id to which we append _dem.tif. Each file contains a single band with 16-bit integer values that refer to the elevation of that pixel over sea level.

Land-use/Land-cover Data (ESA WorldCover)

Land-use/land-cover data are contained in the esaworldcover/ directory of this archive.

Land-use/land-cover map tiles matching the Sentinel-1/2 patches were extracted from ESA WorldCover (https://esa-worldcover.org). Relevant tiles were downloaded and reprojected into the coordinate frame of the corresponding Sentinel-1/2 patches. WorldCover data are available both as maps and as class fractions that are aggregated over each patch. 

Land-use/land-cover map data are provided in a separate geotiff file for each patch. The naming convention for these files uses the Sentinel-2 patch_id to which we append _esaworldcover.tif. Each file contains a single band with 8-bit integer values that map to land-use/land-cover definitions provided by the ESA WorldCover Product User Manual (https://esa-worldcover.s3.eu-central-1.amazonaws.com/v200/2021/docs/WorldCover_PUM_V2.0.pdf) (page 15).

The file ben-ge-800_esaworldcover.csv contains the fractions by which each of the different classes cover the corresponding patch. This product may be useful to generate single-label or multi-label targets for different classification setups.

Environmental Data (ERA-5)

Weather data are contained in the ben-ge-800_era-5.csv file.

Weather data at the time of observation (temperature at 2 m above the ground, relative humidity, wind vectors at 10 m above the ground) are extracted from the ERA-5 global reanalysis (https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-pressure-levels) for the pressure level at the mean elevation of the observed scene and the time of observation (separately queried for Sentinel-1/2 observations).

Environmental data are available in the file ben-ge-800_era-5.csv. For each patch, identified through the Sentinel-2 patch_id or the corresponding Sentinel-1 patch id patch_id_s1, the file contains the following parameters:* atmpressure_level: atmospheric pressure level at which parameters have been queried [mbar]* temperature_s2: temperature 2m above ground at the time of the Sentinel-2 observation [K]* temperature_s1: temperature 2m above ground at the time of the Sentinel-1 observation [K]* wind-u_s2:  eastward component of the wind, at a height of 10 meters above the surface of the Earth at the time of the Sentinel-2 observation [m/s]* wind-u_s1:  eastward component of the wind, at a height of 10 meters above the surface of the Earth at the time of the Sentinel-1 observation [m/s]* wind-v_s2: northward component of the wind, at a height of 10 meters above the surface of the Earth at the time of the Sentinel-2 observation [m/s]* wind-v_s1: northward component of the wind, at a height of 10 meters above the surface of the Earth at the time of the Sentinel-2 observation [m/s]* relhumidity_s2: relative humidity at the time of the Sentinel-2 observation [%]* relhumidity_s1: relative humidity at the time of the Sentinel-1 observation [%]

as extracted from the ERA-5 global reanalysis (https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-pressure-levels) for the patch location. Please see the corresponding documentation for details.

Seasonal Encoding

To capture the season at the time of observation, we apply a non-linear encoding that scale the date of the observation into the interval [0, 1], referring to [winter, summer] solstice. For any given date, we derive the fractional year and shift it by 9 days such that 21 June has the fractional year 0.5 and 22 December has the fractional year 0 or 1. To account for this ambiguity and the periodicity of the seasons, we modulate the fractional year with a sine function such that 21 June leads to a seasonal encoding of 1 and 22 December leads to a seasonal encoding of 0.

Seasonal encodings are provided by the column season in the ben-ge-800_meta.csv file. Season values cover the interval [0,1] as a continuous variable where 1 refers to summer solstice and 0 refers to winter solstice. 

Climate zone classification (Beck et al. 2018)

Patch-based climate zone classifications, based on the Köppen-Geiger scheme, were extracted from Beck et al. (2018) (https://www.nature.com/articles/sdata2018214), utilizing their present-day 1-km resolution map. Due to geographical focus of BigEarthNet on Europe, only 11 out of 27 different classes are present in this dataset. Please note that patches that are fully covered by surface water have no climate zone class assigned to them (class label equals zero in this case). Labels are encoded as discrete integer values that follow the schema introduced by Beck et al. 2018 in their legend.txt file that is included here: https://doi.org/10.6084/m9.figshare.6396959.

Climate zone classification labels are provided by the column climatezone in the ben-ge-800_meta.csv file. 

File and directory structure

This archive contains the following directory and file structure:

||---  README                       (this file)|---  ben-ge-800_meta.csv          (ben-ge-800 meta data)|---  ben-ge-800_era-5.csv         (ben-ge-800 environmental data)|---  ben-ge-800_esaworldcover.csv (patch-wise ben-ge-800 land-use/land-cover data)|---  dem/                         (digital elevation model data)|  |---  S2A_MSIL2A_20171208T093351_3_82_dem.tif|   ...|---  esaworldcover/               (land-use/land-cover data)|  |---  S2B_MSIL2A_20170914T93030_26_83_esaworldcover.tif|   ...|---  sentinel-1/                  (Sentinel-1 SAR data)|  |---  S1A_IW_GRDH_1SDV_20180219T063851_29UPV_70_43/|     |---  S1A_IW_GRDH_1SDV_20180219T063851_29UPV_70_43_labels_metadata.json  (BigEarthNet label file)|     |---  S1A_IW_GRDH_1SDV_20180219T063851_29UPV_70_43_VH.tif                (BigEarthNet/Sentinel-1 VH polarization data)|     |---  S1A_IW_GRDH_1SDV_20180219T063851_29UPV_70_43_VV.tif                (BigEarthNet/Sentinel-1 VV polarization data)|   ...|---  sentinel-2/                  (Sentinel-2 multispectral data)|  |---  S2B_MSIL2A_20170818T112109_31_83/|     |---  S2B_MSIL2A_20170818T112109_31_83_B01.tif    (BigEarthNet/Sentinel-2 Band 1 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B02.tif    (BigEarthNet/Sentinel-2 Band 2 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B03.tif    (BigEarthNet/Sentinel-2 Band 3 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B04.tif    (BigEarthNet/Sentinel-2 Band 4 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B05.tif    (BigEarthNet/Sentinel-2 Band 5 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B06.tif    (BigEarthNet/Sentinel-2 Band 6 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B07.tif    (BigEarthNet/Sentinel-2 Band 7 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B08.tif    (BigEarthNet/Sentinel-2 Band 8 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B09.tif    (BigEarthNet/Sentinel-2 Band 9 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B11.tif    (BigEarthNet/Sentinel-2 Band 11 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B12.tif    (BigEarthNet/Sentinel-2 Band 12 data)|     |---  S2B_MSIL2A_20170818T112109_31_83_B8A.tif    (BigEarthNet/Sentinel-2 Band 8A data)|     |---  S2B_MSIL2A_20170818T112109_31_83_labels_metadata.json    (BigEarthNet label file)|   ...

Once unpacked, ben-ge-800 requires 424 MB of space.

More Information

For more information, please refer to https://github.com/HSG-AIML/ben-ge.

Citing ben-ge-800

If you use data contained in this archive, please cite the following two papers:



M. Mommert, N. Kesseli, J. Hanna, L. Scheibenreif, D. Borth, B. Demir, "ben-ge: Extending BigEarthNet with Geographical and Environmental Data", IEEE International Geoscience and Remote Sensing Symposium, Pasadena, USA, 2023. 

G. Sumbul, A. d. Wall, T. Kreuziger, F. Marcelino, H. Costa, P. Benevides, M. Caetano, B. Demir, V. Markl, "BigEarthNet-MM: A Large Scale Multi-Modal Multi-Label Benchmark Archive for Remote Sensing Image Classification and Retrieval", IEEE Geoscience and Remote Sensing Magazine, 2021, doi: 10.1109/MGRS.2021.3089174.