Sentinel Hub's cloud detector for Sentinel-2 imagery

classification, cloud-detector, python-library, sentinel-2, sentinel-hub
pip install s2cloudless==1.4.0


Package version Supported Python versions Build status Overall downloads Last month downloads

Sentinel Hub's cloud detector for Sentinel-2 imagery

The s2cloudless Python package provides automated cloud detection in Sentinel-2 imagery. The classification is based on a single-scene pixel-based cloud detector developed by Sentinel Hub's research team and is described in more details in this blog.


The package requires a Python version >= 3.5. The package is available on the PyPI package manager and can be installed with

$ pip install s2cloudless

To install the package manually, clone the repository and

$ python build
$ python install

One of s2cloudless dependecies is lightgbm package. If having problems during installation please check LightGBM installation guide.

Before installing s2cloudless on Windows it is recommended to install package shapely from Unofficial Windows wheels repository

Input: Sentinel-2 scenes

The input to cloud detector are Sentinel-2 images. In particular, the cloud detector requires the following 10 Sentinel-2 band reflectances: B01, B02, B04, B05, B08, B8A, B09, B10, B11, B12, which are obtained from raw reflectance value in the following way: B_i/10000.

You don't need to worry about any of this, if you're doing classification of scenes obtained using Sentinel Hub's WMS or WCS services (i.e. using ours Python library sentinelhub-py).


Jupyter notebook on how to use the cloud detector to produce cloud mask or cloud probability map can be found in the examples folder.


Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.