Skip to main content

A collection of common tools to interact with the BigEarthNet dataset.

Project description

Common BigEarthNet Tools

A personal collection of common BigEarthNet functions

This library provides a collection of high-level tools to better work with the BigEarthNet dataset.

ben_common tries to accomplish three goals:

  1. Collect most relevant constants into a single place to reduce the time spent looking for these, like:
    • The 19 or 43 class nomenclature strings
    • URL
    • Band statistics (mean/variance) as integer and float
    • Channel names
    • etc.
  2. Provide parsing functions to convert the metadata json files to a geopandas GeoDataFrame's.
    • Allow for easy top-level statistical analysis of the data in a familiar pandas-style
    • Provide functions to enrich GeoDataFrames with often required BigEarthNet metadata (like the season or country of the patch)
  3. Simplify the building procedure by providing a command line interface with reproducible results

Deep Learning

One of the main purposes of the dataset is to allow deep learning researchers and practictioners to easily train their model on multi-spectral satellite data. In that regard, there is a general recommendation to drop patches that are covered by seasonal snow or clouds. Also, the novel 19-class nomenclature should be preferred over the original 43-class nomenclature. As a result of these recommendations, some patches have to be excluded from the original raw BigEarthNet dataset that is provided at BigEarthNet. This is especially important for higher-level statistical analysis.

To simplify the procedure of pre-converting the json metadata files, the library provides a single command that will generate a recommended GeoDataFrame with extra metadata (country/season data of each patch), while dropping all patches that are not recommended for deep learning research.

To generate such a GeoDataFrame and store it as an parquet file, use:

python -m bigearthnet_common.gdf_builder build-recommended-parquet

If you want to simply read the raw json files and convert those to a GeoDataFrame file, without dropping any patches or adding any metadata, use:

python -m bigearthnet_common.gdf_builder build-raw-ben-parquet

Local Installation

Use just to install the package or run steps from justfile directly. Requires mamba (highly recommended) or poetry to be installed.

Local Documentation

{% include note.html content='Building and serving the documentation requires Docker to be installed!' %} After creating the ben_common_env environment, simply run

docker-compose up

Or with just:

just docs

After running the command, the documentation server will be available at

To review the source code, please take a look at the corresponding ipynb notebook from the nbs folder. These notebooks include extensive documentation, visualizations, and tests. The automatically generated Python files are available in the bigearthnet_common module.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bigearthnet_common-0.1.0.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

bigearthnet_common-0.1.0-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

Details for the file bigearthnet_common-0.1.0.tar.gz.

File metadata

  • Download URL: bigearthnet_common-0.1.0.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.12 CPython/3.7.12 Linux/5.11.0-1022-azure

File hashes

Hashes for bigearthnet_common-0.1.0.tar.gz
Algorithm Hash digest
SHA256 914c40078ea3fe931d904fe983fff2688e54b7af2fbc2240cd41c80c603c99b3
MD5 d12220509ec47aaa5c0b4598a5cfbf64
BLAKE2b-256 61ef2de7b7631b1cdca6b141730ac455c514b920e2c850f8fdaf1286d1b5aad1

See more details on using hashes here.

File details

Details for the file bigearthnet_common-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: bigearthnet_common-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 24.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.12 CPython/3.7.12 Linux/5.11.0-1022-azure

File hashes

Hashes for bigearthnet_common-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 10da1f6c68d8e108883d7ba96ef7d738786228ee4fc5c53b4706f921ee9a1ac8
MD5 9ee6ef2231d6191667b711b61441ecb1
BLAKE2b-256 9346a584f790ebffde5d9b4b2358d5ae472f2fd67d8e6ce4cda1ff143736edb7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page