A collection of common tools to interact with the BigEarthNet dataset.
Project description
Common BigEarthNet Tools
A personal collection of common tools to interact with the BigEarthNet dataset.
This library provides a collection of high-level tools to better work with the BigEarthNet dataset.
ben_common
tries to accomplish three goals:
- Collect the 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 practitioners to train their model on multi-spectral satellite data easily. 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:
gdf_builder build-recommended-parquet
(available after installing package) orpython -m bigearthnet_common.gdf_builder build-recommended-parquet
If you want to read the raw json files and convert those to a GeoDataFrame file, without dropping any patches or adding any metadata, use:
gdf_builder build-raw-ben-parquet
(available after installing package) orpython -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, 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 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.1.tar.gz
.
File metadata
- Download URL: bigearthnet_common-0.1.1.tar.gz
- Upload date:
- Size: 19.3 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 | aa28edc4a90d06c9b082041bd9a9e87a79092923775435fe3d4195cf0e5ac261 |
|
MD5 | 33f3fc257dacf660152a02025cfc926e |
|
BLAKE2b-256 | 0888d3bc4929870831f689f8e0477a1c9826fd8d0c2fb38214079acf324a14bd |
File details
Details for the file bigearthnet_common-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: bigearthnet_common-0.1.1-py3-none-any.whl
- Upload date:
- Size: 24.4 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 | 868e419068c966a28164212b39157cd4f7f82b1efacd658a206ee94dcbfd7d45 |
|
MD5 | ea52466c0a502086a6e63917bfe1fc5a |
|
BLAKE2b-256 | 2816cc688fb22fa448b654c22cd57c266a920b21a30d73c20b920c3ed366276d |