Skip to content

simonbesnard1/icesat2db

Repository files navigation

icesat2db Logo

icesat2DB: A toolbox for Ice, Cloud, and land Elevation Satellite 2 (ICESat-2) ATL08 data

Pipelines Code coverage Docs Available on PyPI Python Versions PyPI Downloads Code style: black License: EUPL-1.2 DOI

icesat2DB is an open-source Python package designed to streamline the processing, analysis, and management of ICESat-2 ATL08 data. This toolbox enables efficient and flexible data querying and management of large ICESat-2 datasets stored with TileDB, a high-performance, multi-dimensional array database.

icesat2DB integrates key functionalities such as structured data querying, multi-dimensional data processing, and metadata management. With built-in support for parallel engines (e.g. Dask), the toolbox ensures scalability for large datasets, allowing efficient parallel processing on local machines or clusters.

Key Features of icesat2DB

  • TileDB-Based Storage: ICESat-2 data is stored and managed in TileDB arrays, providing efficient, scalable, multi-dimensional data storage, enabling fast and flexible access to large volumes of data.
  • Flexible Data Querying: Easily query ICESat-2 data across spatial, temporal, and variable dimensions. Access data within bounding boxes, or retrieve the nearest shots to a specific location, using intuitive filtering options for precision.
  • Parallel Processing: Process large ICESat-2 datasets in parallel, enabling concurrent downloading, processing, and TileDB insertion of ICESat-2 products. The number of concurrent processes can be easily controlled based on available system resources.
  • Metadata-Driven: Maintain and manage metadata for each dataset, ensuring that important contextual information like units, descriptions, and source details are stored and accessible.
  • Geospatial Data Management: Integrate seamlessly with TileDB to enable spatial queries, transformations, and geospatial analyses.

Why icesat2DB?

icesat2DB simplifies and automates the workflow for ICESat-2 data processing, making it easier to retrieve, filter, and analyze complex datasets in an efficient, scalable manner. Whether you're investigating biomass distribution, monitoring forest dynamics, or conducting large-scale ecological studies, icesat2DB supports users with tools to handle and analyze large ICESat-2 datasets with ease.

Installation

Install the latest release from PyPI:

pip install icesat2db

Or install from source:

git clone https://github.com/simonbesnard1/icesat2db.git
cd icesat2db
pip install -e .

For optional dependencies (visualization, I/O, etc.):

pip install "icesat2db[viz]"   # matplotlib, cartopy, plotly, ...
pip install "icesat2db[io]"    # zarr, rasterio, fsspec, ...

Requires Python >= 3.10.

See the examples/ folder for full notebooks on authentication, data processing, and building a regional TileDB database.

Documentation

Learn more about icesat2DB in its official documentation at https://icesat2db.readthedocs.io/en/latest/.

Contributing

You can find information about contributing to icesat2DB on our Contributing page.

About the authors

Felix Dombrowski is a Bachelor’s student in Computer Science at the University of Potsdam and a research intern in the Global Land Monitoring Group at GFZ Helmholtz Centre Potsdam. At GFZ, his work has focused on developing toolboxes to process Earth Observation data efficiently.

Simon Besnard, a senior researcher in the Global Land Monitoring Group at GFZ Helmholtz Centre Potsdam, studies terrestrial ecosystems' dynamics and their feedback on environmental conditions. He specializes in developing methods to analyze large EO and climate datasets to understand ecosystem functioning in a changing climate. His current research focuses on forest structure changes over the past decade and their links to the carbon cycle.

Mikhail Urbazaev is a Research Associate at the Helmholtz Centre for Geosciences (GFZ). His research focuses on the synergetic use of lidar, synthetic aperture radar, and optical remote sensing data for estimation of aboveground biomass and vegetation structural parameters across different biomes.

Amelia Holcomb is a Postdoc at the University of Maryland, researching remote sensing of tropical forest degradation and recovery. She completed her PhD in Computer Science at the University of Cambridge, where she studied remote sensing and machine learning for carbon sequestration and forest regrowth. Previously, she worked as a site reliability engineer at Google on Bigtable. She holds an MMath from the University of Waterloo and a B.A. in Mathematics from Yale.

Contact

For any questions or inquiries, please contact:

Acknowledgments

The development of icesat2DB was supported by the European Union through the FORWARDS and NextGenCarbon projects, and by the Helmholtz Association via the Helmholtz Foundation Model Initiative (3D-ABC project). Amelia Holcomb acknowledges funding from the Harding Distinguished Postgraduate Scholarship.

License

This project is licensed under the EUROPEAN UNION PUBLIC LICENCE v.1.2 License - see the LICENSE file for details.

About

icesat2DB: A toolbox for Ice, Cloud, and land Elevation Satellite 2 (ICESat-2) ATL08 data

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages