PyPi distribution

The package requires Python version >=3.7 . It can be installed with:

pip install eo-learn

In order to avoid heavy package dependencies it is possible to install each subpackage separately:

pip install eo-learn-core
pip install eo-learn-coregistration
pip install eo-learn-features
pip install eo-learn-geometry
pip install eo-learn-io
pip install eo-learn-mask
pip install eo-learn-ml-tools
pip install eo-learn-visualization

Before installing eo-learn on Linux it is recommended to install the following system libraries:

sudo apt-get install gcc libgdal-dev graphviz proj-bin libproj-dev libspatialindex-dev

Before installing eo-learn on Windows it is recommended to install the following packages from Unofficial Windows wheels repository:


One of dependencies of eo-learn-mask subpackage is lightgbm package. On Windows it requires 64 bit Python distribution. If having problems during installation please check LightGBM installation guide.

Some subpackages contain extension modules under extra subfolder. Those modules typically require additional package dependencies which don’t get installed by default.

Conda Forge distribution

The package requires a Python environment >=3.7.

Thanks to the maintainers of the conda forge feedstock (@benhuff, @dcunn, @mwilson8, @oblute, @rluria14), eo-learn can be installed using conda-forge as follows:

conda config --add channels conda-forge

conda install eo-learn

In order to avoid heavy package dependencies it is possible to install each subpackage separately:

conda install eo-learn-core
conda install eo-learn-coregistration
conda install eo-learn-features
conda install eo-learn-geometry
conda install eo-learn-io
conda install eo-learn-mask
conda install eo-learn-ml-tools
conda install eo-learn-visualization

Run with Docker

A docker image with the latest released version of eo-learn is available at Docker Hub. It provides a full installation of eo-learn together with a Jupyter notebook environment. You can pull and run it with:

docker pull sentinelhub/eolearn:latest
docker run -p 8888:8888 sentinelhub/eolearn:latest

An extended version of the latest image additionally contains all example notebooks and data to get you started with eo-learn. Run it with:

docker pull sentinelhub/eolearn:latest-examples
docker run -p 8888:8888 sentinelhub/eolearn:latest-examples

Both docker images can also be built manually from GitHub repository:

docker build -f docker/eolearn.dockerfile . --tag=sentinelhub/eolearn:latest
docker build -f docker/eolearn-examples.dockerfile . --tag=sentinelhub/eolearn:latest-examples