Metadata-Version: 2.1
Name: robustraster
Version: 0.1.3
Summary: Running user-defined functions on large datasets via out-of-core computation simplfied.
Home-page: 
Author: Adriano Matos
Author-email: adrianom@unr.edu
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10.12,<3.11
License-File: LICENSE
Requires-Dist: affine==2.4.0
Requires-Dist: attrs==24.2.0
Requires-Dist: bokeh==3.5.2
Requires-Dist: cachetools==5.5.0
Requires-Dist: certifi==2024.8.30
Requires-Dist: cftime==1.6.4
Requires-Dist: charset-normalizer==3.3.2
Requires-Dist: click==8.1.7
Requires-Dist: click-plugins==1.1.1
Requires-Dist: cligj==0.7.2
Requires-Dist: cloudpickle==3.0.0
Requires-Dist: colorama==0.4.6
Requires-Dist: contourpy==1.3.0
Requires-Dist: dask[array,complete,dataframe,diagnostics,distributed]==2024.8.1
Requires-Dist: dask-expr==1.1.11
Requires-Dist: distributed==2024.8.1
Requires-Dist: docker==7.1.0
Requires-Dist: earthengine-api==0.1.417
Requires-Dist: fsspec==2024.9.0
Requires-Dist: google-api-core==2.20.0
Requires-Dist: google-api-python-client==2.146.0
Requires-Dist: google-auth==2.35.0
Requires-Dist: google-auth-httplib2==0.2.0
Requires-Dist: google-cloud-core==2.4.1
Requires-Dist: google-cloud-storage==2.18.2
Requires-Dist: google-crc32c==1.6.0
Requires-Dist: google-resumable-media==2.7.2
Requires-Dist: googleapis-common-protos==1.65.0
Requires-Dist: httplib2==0.22.0
Requires-Dist: idna==3.10
Requires-Dist: importlib-metadata==8.5.0
Requires-Dist: jinja2==3.1.4
Requires-Dist: locket==1.0.0
Requires-Dist: lz4==4.3.3
Requires-Dist: markupsafe==2.1.5
Requires-Dist: msgpack==1.1.0
Requires-Dist: netcdf4==1.7.1.post2
Requires-Dist: numpy==2.0.1
Requires-Dist: packaging==24.1
Requires-Dist: pandas==2.2.2
Requires-Dist: partd==1.4.2
Requires-Dist: pillow==10.4.0
Requires-Dist: proto-plus==1.24.0
Requires-Dist: protobuf==5.28.2
Requires-Dist: psutil==6.0.0
Requires-Dist: pyarrow==17.0.0
Requires-Dist: pyarrow-hotfix==0.6
Requires-Dist: pyasn1==0.6.1
Requires-Dist: pyasn1-modules==0.4.1
Requires-Dist: pyparsing==3.1.4
Requires-Dist: pyproj==3.6.1
Requires-Dist: python-dateutil==2.9.0.post0
Requires-Dist: pytz==2024.2
Requires-Dist: pyyaml==6.0.2
Requires-Dist: rasterio==1.3.11
Requires-Dist: requests==2.32.3
Requires-Dist: rioxarray==0.15.0
Requires-Dist: rsa==4.9
Requires-Dist: six==1.16.0
Requires-Dist: snuggs==1.4.7
Requires-Dist: sortedcontainers==2.4.0
Requires-Dist: tblib==3.0.0
Requires-Dist: toolz==0.12.1
Requires-Dist: tornado==6.4.1
Requires-Dist: tzdata==2024.1
Requires-Dist: uritemplate==4.1.1
Requires-Dist: urllib3==2.2.3
Requires-Dist: xarray[parallel]==2024.9.0
Requires-Dist: xee==0.0.13
Requires-Dist: xyzservices==2024.9.0
Requires-Dist: zict==3.0.0
Requires-Dist: zipp==3.20.2

# Robust-Raster

Robust-Raster is a Python software package designed to empower scientists and researchers to analyze large satellite datasets effectively. In recent years, the amount of data collected from satellites has grown dramatically. While this data can provide insights into our planet, its sheer size poses significant challenges for traditional analysis methods. Robust-Raster bridges the gap, offering a user-friendly tool to perform custom analyses on large datasets without requiring advanced computing expertise.

## Purpose
Google Earth Engine (GEE) is a powerful platform for accessing satellite data and analysis tools, but it has limitations in the types of analyses it can perform. Robust-Raster addresses these limitations by enabling users to:
- Design functions not supported by GEE.
- Access GEE data without being constrained by storage or local RAM limitations.
- Use data frames instead of more complex data structures like xarray, simplifying workflows.

Robust-Raster aims to lower the barriers to analyzing large datasets, making advanced analysis accessible to a broader audience.

## Features
- **Custom Analyses:** Allows users to design and run functions that extend beyond GEE's capabilities.
- **Efficient Data Handling:** Enables access to GEE data without being hindered by local hardware constraints.
- **User-Friendly Design:** Supports data frames for analysis, providing a simpler alternative to working with xarray objects.

## Installation
### 1. Conda
```bash
conda create -n robustraster python=3.10.12
conda activate robustraster
pip install robustraster
```

### 2. Virtualenv + pyenv
```bash
pyenv install 3.10.12
pyenv virtualenv 3.10.12 robustraster
pyenv activate robustraster
pip install robustraster
```
## Usage
A comprehensive example is available in `demo.ipynb`, showcasing how to effectively use Robust-Raster. This notebook includes detailed comments to guide users through the process step by step. Please note that Robust-Raster is still in its early stages, and more documentation and updates will be provided over time!

## Contributing
I welcome contributions to Robust-Raster! If you have suggestions or encounter issues, please submit them via the GitHub Issues page.

## License
*To be determined.*

Note: Robust-Raster uses Python and incorporates several libraries, including xarray, xee (an extension of xarray for accessing GEE data), and Dask. Licensing will take these dependencies into account.

## Contact
For any questions or feedback, please contact us via email: [adrianom@unr.edu](mailto:adrianom@unr.edu).

## Acknowledgments
I would like to acknowledge the following projects for their contributions and inspiration:

- California Air Resources Board. *"Advanced Carbon Modeling Techniques for the Forest Health Quantification Methodology (Phase 2)."* 2024. Greenberg, J.A., E. Hanan and N. Inglis.
- CALFIRE. *"Research for a Cyberinfrastructure-Enabled Carbon and Fuels Mapping Model Prototype (Phase 2)."* 2022. Greenberg, J.A.
- CALFIRE. *"Research for a Cyberinfrastructure-Enabled Carbon and Fuels Mapping Model Prototype (Phase 1)."* 2021. Ramirez, C. and J.A. Greenberg.
- California Air Resources Board. *"Advanced Carbon Modeling Techniques for the Forest Health Quantification Methodology."* 2021. Greenberg, J.A. and E. Hanan.
