bigearthnet

  • Description:

The BigEarthNet is a new large-scale Sentinel-2 benchmark archive, consisting of 590,326 Sentinel-2 image patches. The image patch size on the ground is 1.2 x 1.2 km with variable image size depending on the channel resolution. This is a multi-label dataset with 43 imbalanced labels.

To construct the BigEarthNet, 125 Sentinel-2 tiles acquired between June 2017 and May 2018 over the 10 countries (Austria, Belgium, Finland, Ireland, Kosovo, Lithuania, Luxembourg, Portugal, Serbia, Switzerland) of Europe were initially selected. All the tiles were atmospherically corrected by the Sentinel-2 Level 2A product generation and formatting tool (sen2cor). Then, they were divided into 590,326 non-overlapping image patches. Each image patch was annotated by the multiple land-cover classes (i.e., multi-labels) that were provided from the CORINE Land Cover database of the year 2018 (CLC 2018).

Bands and pixel resolution in meters:

  • B01: Coastal aerosol; 60m
  • B02: Blue; 10m
  • B03: Green; 10m
  • B04: Red; 10m
  • B05: Vegetation red edge; 20m
  • B06: Vegetation red edge; 20m
  • B07: Vegetation red edge; 20m
  • B08: NIR; 10m
  • B09: Water vapor; 60m
  • B11: SWIR; 20m
  • B12: SWIR; 20m
  • B8A: Narrow NIR; 20m

License: Community Data License Agreement - Permissive, Version 1.0.

URL: http://bigearth.net/

Split Examples
'train' 590,326
  • Citation:
@article{Sumbul2019BigEarthNetAL,
  title={BigEarthNet: A Large-Scale Benchmark Archive For Remote Sensing Image Understanding},
  author={Gencer Sumbul and Marcela Charfuelan and Beg{"u}m Demir and Volker Markl},
  journal={CoRR},
  year={2019},
  volume={abs/1902.06148}
}

bigearthnet/rgb (default config)

  • Config description: Sentinel-2 RGB channels

  • Features:

FeaturesDict({
    'filename': Text(shape=(), dtype=tf.string),
    'image': Image(shape=(120, 120, 3), dtype=tf.uint8),
    'labels': Sequence(ClassLabel(shape=(), dtype=tf.int64, num_classes=43)),
    'metadata': FeaturesDict({
        'acquisition_date': Text(shape=(), dtype=tf.string),
        'coordinates': FeaturesDict({
            'lrx': tf.int64,
            'lry': tf.int64,
            'ulx': tf.int64,
            'uly': tf.int64,
        }),
        'projection': Text(shape=(), dtype=tf.string),
        'tile_source': Text(shape=(), dtype=tf.string),
    }),
})

Visualization

bigearthnet/all

  • Config description: 13 Sentinel-2 channels

  • Features:

FeaturesDict({
    'B01': Tensor(shape=(20, 20), dtype=tf.float32),
    'B02': Tensor(shape=(120, 120), dtype=tf.float32),
    'B03': Tensor(shape=(120, 120), dtype=tf.float32),
    'B04': Tensor(shape=(120, 120), dtype=tf.float32),
    'B05': Tensor(shape=(60, 60), dtype=tf.float32),
    'B06': Tensor(shape=(60, 60), dtype=tf.float32),
    'B07': Tensor(shape=(60, 60), dtype=tf.float32),
    'B08': Tensor(shape=(120, 120), dtype=tf.float32),
    'B09': Tensor(shape=(20, 20), dtype=tf.float32),
    'B11': Tensor(shape=(60, 60), dtype=tf.float32),
    'B12': Tensor(shape=(60, 60), dtype=tf.float32),
    'B8A': Tensor(shape=(60, 60), dtype=tf.float32),
    'filename': Text(shape=(), dtype=tf.string),
    'labels': Sequence(ClassLabel(shape=(), dtype=tf.int64, num_classes=43)),
    'metadata': FeaturesDict({
        'acquisition_date': Text(shape=(), dtype=tf.string),
        'coordinates': FeaturesDict({
            'lrx': tf.int64,
            'lry': tf.int64,
            'ulx': tf.int64,
            'uly': tf.int64,
        }),
        'projection': Text(shape=(), dtype=tf.string),
        'tile_source': Text(shape=(), dtype=tf.string),
    }),
})