Metadata-Version: 2.4
Name: eosets
Version: 0.4.1
Summary: This library aims to simplify any process working with different sets of EO data handled by EOReader.
Author-email: ICube-SERTIT <dev-sertit@unistra.fr>
License: Apache 2.0
Project-URL: Bug_Tracker, https://github.com/sertit/eosets/issues
Project-URL: Documentation, https://eosets.readthedocs.io/latest/
Project-URL: Source_Code, https://github.com/sertit/eosets
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Natural Language :: English
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering :: GIS
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
Requires-Dist: lxml
Requires-Dist: h5netcdf
Requires-Dist: scipy
Requires-Dist: rasterio>=1.3.10
Requires-Dist: xarray>=2024.06.0
Requires-Dist: rioxarray>=0.15.0
Requires-Dist: odc-geo>=0.5.0
Requires-Dist: geopandas>=0.14.4
Requires-Dist: eoreader>=0.23.0
Requires-Dist: sertit[full]>=1.50.2
Dynamic: license-file

# EOSets

This library aims to simplify any process working with sets of EO data handled by [EOReader](https://github.com/sertit/eoreader).

## 🛰️ Content

EOSets implements the following objects:

![eosets_objects](docs/_static/eosets_objects.png)

> [!NOTE] 
> Multi-pairs are not implemented for now. We are waiting for true usecases.  
> For now please use a list of pairs to process your data.
> If needed, create an issue to discuss about it.

## 🔮 Features

### Propagated from EOReader

Implemented features are similar to those [implemented in EOReader](https://eoreader.readthedocs.io/latest/main_features.html):
- `load`
- `stack`
- `extent`
- `footprint`
- ...

What you can do with EOReader is also possible with EOSets (with [Mosaics](https://eosets.readthedocs.io/latest/notebooks/mosaic.html), [Pairs](https://eosets.readthedocs.io/latest/notebooks/pair.html) and [Series](https://eosets.readthedocs.io/latest/notebooks/series.html)).  
Here is the [documentation of EOReader](https://eoreader.readthedocs.io/stable/) and the [list of available examples](https://eoreader.readthedocs.io/stable/#examples).

### Default pixel size

In case of heterogeneous Set, it is not straightforward to determine its default pixel size.
A keyword `default_pixel_size` has been created, set to `coarsest` by default which means that the default pixel size of a heterogeneous set is the coarsest pixel size.

This keyword can be set to either None, `coarsest`, `most_resolute` or any floating point number as a custom default resolution.

For example, in the case of a Series of Sentinel-2 and Landsat-8 data:
- Nothing specified: the default pixel size is 30 meters
- `default_pixel_size="coarsest"`: the default pixel size is 30 meters
- `default_pixel_size="most_resolute"`: the default pixel size is 10 meters
- `default_pixel_size="20"`: the default pixel size is 20 meters

## 🔗 Examples

Available notebooks provided as examples:

- [Mosaic](https://eosets.readthedocs.io/latest/notebooks/mosaic.html#)
- [Pair](https://eosets.readthedocs.io/latest/notebooks/pair.html)
- [Series](https://eosets.readthedocs.io/latest/notebooks/series.html)


## 📝 License

**EOSets** is licensed under Apache License v2.0. See LICENSE file for details.

## 🖋️ Authors

**EOSets** has been created by [ICube-SERTIT](https://sertit.unistra.fr/).
