Metadata-Version: 2.4
Name: geeadvance
Version: 0.1.0
Summary: Advanced landscape metrics analysis using Google Earth Engine
Home-page: https://github.com/pulakeshpradhan/geeadvance
Author: Pulakesh Pradhan
Author-email: pulakesh.mid@gmail.com
Project-URL: Bug Tracker, https://github.com/pulakeshpradhan/geeadvance/issues
Project-URL: Documentation, https://pulakeshpradhan.github.io/geeadvance/
Project-URL: Source Code, https://github.com/pulakeshpradhan/geeadvance
Keywords: google-earth-engine gee landscape-metrics spatial-analysis remote-sensing
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: GIS
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: earthengine-api>=0.1.350
Requires-Dist: geemap>=0.20.0
Requires-Dist: numpy>=1.20.0
Requires-Dist: pandas>=1.3.0
Requires-Dist: geopandas>=0.10.0
Requires-Dist: rasterio>=1.2.0
Requires-Dist: shapely>=1.8.0
Requires-Dist: scipy>=1.7.0
Requires-Dist: matplotlib>=3.4.0
Requires-Dist: requests>=2.26.0
Requires-Dist: tqdm>=4.62.0
Provides-Extra: dev
Requires-Dist: pytest>=6.2.0; extra == "dev"
Requires-Dist: pytest-cov>=2.12.0; extra == "dev"
Requires-Dist: black>=21.6b0; extra == "dev"
Requires-Dist: flake8>=3.9.0; extra == "dev"
Requires-Dist: sphinx>=4.0.0; extra == "dev"
Requires-Dist: sphinx-rtd-theme>=0.5.0; extra == "dev"
Provides-Extra: docs
Requires-Dist: mkdocs>=1.2.0; extra == "docs"
Requires-Dist: mkdocs-material>=8.0.0; extra == "docs"
Requires-Dist: mkdocstrings>=0.18.0; extra == "docs"
Requires-Dist: mkdocs-jupyter>=0.20.0; extra == "docs"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license-file
Dynamic: project-url
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# 🌍 GeeAdvance

[![Python Version](https://img.shields.io/badge/python-3.8%2B-blue.svg)](https://www.python.org/downloads/)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
[![Documentation](https://img.shields.io/badge/docs-GitHub%20Pages-blue.svg)](https://pulakeshpradhan.github.io/geeadvance/)

**GeeAdvance** is a Python package for advanced landscape metrics analysis using Google Earth Engine (GEE). It implements landscape ecology metrics similar to the R [landscapemetrics](https://r-spatialecology.github.io/landscapemetrics/) package, enabling comprehensive spatial pattern analysis of GEE-derived imagery and datasets.

## 🚀 Features

- **🔐 Standard GEE Authentication** - Seamless integration with Google Earth Engine
- **📊 Comprehensive Landscape Metrics** - Implementation of metrics from landscapemetrics
  - Area & Edge Metrics
  - Shape Metrics
  - Core Area Metrics
  - Aggregation Metrics
  - Diversity Metrics
- **🗺️ GEE Integration** - Direct analysis of GEE imagery and datasets
- **📥 Export Capabilities** - Download results as GeoTIFF and other formats
- **📚 Beginner-Friendly** - Extensive tutorials and documentation

## 📦 Installation

```bash
pip install geeadvance
```

Or install from source:

```bash
git clone https://github.com/pulakeshpradhan/geeadvance.git
cd geeadvance
pip install -e .
```

## 🔑 Quick Start

### 1. Authenticate with Google Earth Engine

```python
import ee
import geeadvance

# Standard GEE authentication
ee.Authenticate()
ee.Initialize(project='your-project-id')
```

### 2. Calculate Landscape Metrics

```python
# Load a land cover dataset
dataset = geeadvance.load_dataset('MODIS/006/MCD12Q1', 
                                  start_date='2020-01-01',
                                  end_date='2020-12-31')

# Define region of interest
roi = ee.Geometry.Rectangle([77.0, 20.0, 78.0, 21.0])

# Calculate landscape metrics
metrics = geeadvance.calculate_metrics(dataset, roi, scale=500)

# Get specific metrics
area_metrics = geeadvance.area_metrics(dataset, roi)
shape_metrics = geeadvance.shape_metrics(dataset, roi)
diversity_metrics = geeadvance.diversity_metrics(dataset, roi)

print(metrics)
```

### 3. Export Results

```python
# Export as GeoTIFF
geeadvance.export_tif(dataset, roi, 'output_landcover.tif')

# Export metrics as CSV
metrics.to_csv('landscape_metrics.csv')
```

## 📖 Documentation

Full documentation is available at: [https://pulakeshpradhan.github.io/geeadvance/](https://pulakeshpradhan.github.io/geeadvance/)

## 🎓 Tutorials

Check out our beginner-friendly tutorials:

1. [Getting Started with GEE Authentication](tutorials/01_authentication.ipynb)
2. [Loading and Visualizing GEE Datasets](tutorials/02_loading_data.ipynb)
3. [Calculating Area and Edge Metrics](tutorials/03_area_edge_metrics.ipynb)
4. [Shape and Core Metrics](tutorials/04_shape_core_metrics.ipynb)
5. [Aggregation and Diversity Metrics](tutorials/05_aggregation_diversity.ipynb)
6. [Exporting Data and Results](tutorials/06_exporting_data.ipynb)
7. [Complete Workflow Example](tutorials/07_complete_workflow.ipynb)

## 🌟 Implemented Metrics

### Area & Edge Metrics

- **CA** - Class Area
- **PLAND** - Percentage of Landscape
- **TE** - Total Edge
- **ED** - Edge Density

### Shape Metrics

- **SHAPE** - Shape Index
- **FRAC** - Fractal Dimension
- **PARA** - Perimeter-Area Ratio
- **CIRCLE** - Related Circumscribing Circle

### Core Area Metrics

- **TCA** - Total Core Area
- **CPLAND** - Core Area Percentage of Landscape
- **CAI** - Core Area Index

### Aggregation Metrics

- **AI** - Aggregation Index
- **CLUMPY** - Clumpiness Index
- **COHESION** - Patch Cohesion Index
- **DIVISION** - Landscape Division Index

### Diversity Metrics

- **SHDI** - Shannon's Diversity Index
- **SHEI** - Shannon's Evenness Index
- **SIDI** - Simpson's Diversity Index

## 🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## 📄 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## 👤 Author

**Pulakesh Pradhan**

- Email: <pulakesh.mid@gmail.com>
- GitHub: [@pulakeshpradhan](https://github.com/pulakeshpradhan)

## 🙏 Acknowledgments

- Inspired by the R [landscapemetrics](https://r-spatialecology.github.io/landscapemetrics/) package
- Built on [Google Earth Engine](https://earthengine.google.com/)

## 📚 Citation

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

```bibtex
@software{geeadvance2026,
  author = {Pradhan, Pulakesh},
  title = {GeeAdvance: Landscape Metrics for Google Earth Engine},
  year = {2026},
  url = {https://github.com/pulakeshpradhan/geeadvance}
}
```
