Skip to content

leftfield-geospatial/geedim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tests codecov PyPI version conda-forge docs License

Geedim

Geedim provides a Python API and command line toolkit for exporting and cloud masking Google Earth Engine (GEE) imagery. Images and Image collections can be exported to:

  • GeoTIFF file
  • NumPy array
  • Xarray Dataset / DataArray
  • Google Cloud platforms

And cloud masking is supported on:

Installation

To install from PyPI:

pip install geedim

To install from conda-forge:

conda install -c conda-forge geedim

To support exporting to Xarray, use pip install geedim[xarray] or conda install -c conda-forge geedim xarray instead.

A registered Google Cloud project is required for access to Earth Engine. Once installation and registration is done, Earth Engine should be authenticated:

earthengine authenticate

Examples

API

Geedim provides access to its functionality through the gd accessor on the ee.Image and ee.ImageCollection GEE classes. This example exports a 6 month cloud-free composite of Sentinel-2 surface reflectance imagery to a GeoTIFF file:

import ee

# import geedim to enable accessors
import geedim  # noqa: F401

ee.Initialize()

# filter collection based on cloud-free portion etc.
region = ee.Geometry.Rectangle(24.35, -33.75, 24.45, -33.65)
coll = ee.ImageCollection('COPERNICUS/S2_SR_HARMONIZED')
filt_coll = coll.gd.filter(
    '2021-10-01', '2022-04-01', region=region, cloudless_portion=60
)

# print image properties
print(filt_coll.gd.schemaTable)
print(filt_coll.gd.propertiesTable)

# create a cloud-free composite & download
comp_im = filt_coll.gd.composite('median')
prep_im = comp_im.gd.prepareForExport(
    crs='EPSG:3857', region=region, scale=10, dtype='uint16'
)
prep_im.gd.toGeoTIFF('s2_comp.tif')

Command line interface

Much of the API functionality can also be accessed on the command line with geedim and its sub-commands. This repeats the API example, exporting a 6-month cloud-free composite of Sentinel-2 surface reflectance imagery to a GeoTIFF file:

geedim search -c COPERNICUS/S2_SR_HARMONIZED -s 2024-10-01 -e 2025-04-01 -b 24.35 -33.75 24.45 -33.65 -cp 60 composite -cm median download -c EPSG:3857 -r - -s 10 -dt uint16

Documentation

Documentation is hosted at geedim.readthedocs.io.

License

This project is licensed under the terms of the Apache-2.0 License.

Credits

Sponsor this project

 

Packages

No packages published

Languages