Skip to main content

DOI PyPI version License: GPL v3 Python

GEE ACOLITE

Atmospheric correction for Sentinel-2 imagery on Google Earth Engine using the ACOLITE Dark Spectrum Fitting (DSF) method.

Description

gee_acolite adapts the ACOLITE atmospheric correction to Google Earth Engine workflows. A single global AOT is estimated per image using ACOLITE LUTs (client-side), while all pixel operations run server-side on GEE.

Key features:

  • Dark Spectrum Fitting: darkest pixel, percentile, or intercept methods
  • AOT Estimation: single fixed AOT per image via LUT interpolation
  • Atmospheric Correction: full LUT-based surface reflectance retrieval
  • Water Quality Products: SPM, turbidity, chlorophyll-a, Rrs, bathymetry indices
  • Cloud & Water Masking: integration with Sentinel-2 Cloud Probability

Installation

pip install gee_acolite

ACOLITE

gee_acolite requires ACOLITE for LUT loading and atmospheric calculations. ACOLITE is not on PyPI — download it from its official repository and add it to your Python path:

import sys
sys.path.append('/path/to/acolite')

import acolite as ac
from gee_acolite import ACOLITE

Quickstart

import sys
sys.path.append('/path/to/acolite')

import ee
import acolite as ac
from gee_acolite import ACOLITE
from gee_acolite.utils.search import search

ee.Initialize(project='your-cloud-project-id')

roi = ee.Geometry.Rectangle([-0.40, 39.27, -0.28, 39.38])
images = search(roi, '2023-06-01', '2023-06-30', tile='30SYJ')

settings = {
    's2_target_res': 10,
    'dsf_spectrum_option': 'darkest',
    'l2w_parameters': ['spm_nechad2016', 'chl_oc3', 'pSDB_green'],
}

ac_gee = ACOLITE(ac, settings)
corrected, final_settings = ac_gee.correct(images)

Requirements

  • Python ≥ 3.11
  • earthengine-api ≥ 0.1.350
  • numpy ≥ 1.20.0
  • scipy ≥ 1.7.0
  • netcdf4 ≥ 1.7.0
  • ACOLITE (separate installation)

Documentation

Full documentation including API reference, examples, and architecture diagrams is available at: https://aouei.github.io/gee_acolite

Water Quality Products

Product Description
spm_nechad2016 Suspended particulate matter — 665 nm (Nechad 2016)
spm_nechad2016_704 SPM — 704 nm
spm_nechad2016_740 SPM — 740 nm
tur_nechad2016 Turbidity — 665 nm (Nechad 2016)
chl_oc2 Chlorophyll-a OC2
chl_oc3 Chlorophyll-a OC3
chl_re_mishra Chlorophyll-a NDCI (Mishra)
pSDB_green Pseudo satellite-derived bathymetry — green
pSDB_red Pseudo satellite-derived bathymetry — red
Rrs_B* Remote sensing reflectance (all 13 bands)

Contributing

Contributions are welcome! Please fork the repository, create a feature branch, and submit a pull request.

License

GNU General Public License v3.0 — see LICENSE for details.

Citation

If you use this package in your research, please cite:

@software{heredia_sergio_2026_gee_acolite,
  author    = {Heredia, Sergio},
  title     = {gee\_acolite},
  year      = {2026},
  version   = {1.0.1},
  publisher = {Zenodo},
  doi       = {10.5281/zenodo.18367865},
  url       = {https://doi.org/10.5281/zenodo.18367865}
}

And the original ACOLITE paper:

@article{vanhellemont2019,
  author  = {Vanhellemont, Quinten and Ruddick, Kevin},
  title   = {Adaptation of the dark spectrum fitting atmospheric correction for aquatic applications of the Landsat and Sentinel-2 archives},
  journal = {Remote Sensing of Environment},
  volume  = {225},
  pages   = {175--192},
  year    = {2019},
  doi     = {10.1016/j.rse.2019.03.010}
}

Acknowledgments

This package is based on the ACOLITE software developed by RBINS (Royal Belgian Institute of Natural Sciences).

This software was developed at the Institute of Marine Sciences of Andalusia (ICMAN-CSIC), Spanish National Research Council (CSIC), Puerto Real, Spain.

Contact

Metadata

Release files for gee-acolite 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gee-acolite 1.2.1
File Size Uploaded Provenance
gee_acolite-1.2.1.tar.gz 24.7 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for gee-acolite 1.2.1
File Interpreter ABI Platform
gee_acolite-1.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 50.3 kB

Release files / gee_acolite-1.2.1.tar.gz

Download URL gee_acolite-1.2.1.tar.gz
Size 24.7 kB
Tags Source
SHA-256 checksum
How to use checksums
aad640045f722ea96d5ffc3694dba2444ab25e71d55d684b5a097d8b3a3d7c39
BLAKE2b-256 checksum
How to use checksums
788540bdf144541c914716a5c3f7817ec06043bffc7b4c4bc5955fc8901ef3de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / gee_acolite-1.2.1-py3-none-any.whl

Download URL gee_acolite-1.2.1-py3-none-any.whl
Size 25.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c3072299415a6ec9f93f90cc03fda86e6c12ee39b16883fa41a3d68798fdea16
BLAKE2b-256 checksum
How to use checksums
ad5dbc4c0fc9bedeb46ff3bdc50c2ca0680acf83f0d43a39243dbdb5feee92a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Security for gee-acolite 1.2.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for gee_acolite-1.2.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page