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:
- 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.
- 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)
- 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 914c40078ea3fe931d904fe983fff2688e54b7af2fbc2240cd41c80c603c99b3 |
|
MD5 | d12220509ec47aaa5c0b4598a5cfbf64 |
|
BLAKE2b-256 | 61ef2de7b7631b1cdca6b141730ac455c514b920e2c850f8fdaf1286d1b5aad1 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10da1f6c68d8e108883d7ba96ef7d738786228ee4fc5c53b4706f921ee9a1ac8 |
|
MD5 | 9ee6ef2231d6191667b711b61441ecb1 |
|
BLAKE2b-256 | 9346a584f790ebffde5d9b4b2358d5ae472f2fd67d8e6ce4cda1ff143736edb7 |