Skip to main content

Open source remote sensing dataset with benchmarks

Project description

CropHarvest

CropHarvest is an open source remote sensing dataset for agriculture with benchmarks. It collects data from a variety of agricultural land use datasets and remote sensing products.

The dataset consists of 90,480 datapoints, of which 30,899 (34.2%) have multiclass labels. All other datapoints only have binary crop / non-crop labels.

65,690 (73%) of these labels are paired with remote sensing and climatology data, specifically Sentinel-2, Sentinel-1, the SRTM Digital Elevation Model and ERA 5 climatology data.

21 datasets are aggregated into CropHarvest - these are documented here.

More details about CropHarvest and the benchmarks are available in this paper.

Pipeline

The code in this repository

  1. combines the constituent datasets into a single geoJSON file,
  2. exports the associated satellite data from Earth Engine,
  3. combines both datasets to create (X,y) training tuples and
  4. exposes those tuples via a Dataset object.

The pipeline through which this happens is shown below:

All blue boxes are associated with code in this repository. Anything green is data accessible via Zenodo. By default, the Zenodo data will get downloaded to the data folder - the data folder's Readme has more information about the exact structure of the data.

There are unique cases where you may need to use the EarthEngineExporter directly, these use cases are demonstrated in the demo_exporting_data.ipynb notebook.

Installation

Linux and MacOS users can install the latest version of CropHarvest with the following command:

pip install cropharvest

Windows users must install the CropHarvest within a conda environment to ensure all dependencies are installed correctly:

conda install 'fiona>=1.5' 'rasterio>=1.2.6'
pip install cropharvest

Getting started Open In Colab

See the demo.ipynb notebook for an example on how to download the data from Zenodo and train a random forest against this data.

For more examples of models trained against this dataset, see the benchmarks.

Contributing

If you would like to contribute a dataset, please see the contributing readme.

License

CropHarvest has a Creative Commons Attribution-ShareAlike 4.0 International license.

Citation

If you use CropHarvest in your research, please use the following citation:

@inproceedings{
    tseng2021cropharvest,
    title={CropHarvest: A global dataset for crop-type classification},
    author={Gabriel Tseng and Ivan Zvonkov and Catherine Lilian Nakalembe and Hannah Kerner},
    booktitle={Thirty-fifth Conference on Neural Information Processing Systems Datasets and Benchmarks Track (Round 2)},
    year={2021},
    url={https://openreview.net/forum?id=JtjzUXPEaCu}
}

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

cropharvest-0.5.0.tar.gz (801.6 kB view hashes)

Uploaded Source

Built Distribution

cropharvest-0.5.0-py3-none-any.whl (807.5 kB view hashes)

Uploaded Python 3

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