Pulls data from Google Earth Engine, syncs it to Google Drive, and downloads files.
Project description
Project Summary
Earth-Engine-Wildfire-Data is a Python command-line utility and library for extracting and transforming wildfire-related geospatial data from Google Earth Engine. It supports:
-
Access to MODIS, VIIRS, GRIDMET, and other remote sensing datasets.
-
Filtering wildfire perimeters by date, size, and region.
-
Combining daily and final fire perimeters.
-
Generating YAML config files for use in simulation or prediction tools.
-
Command-line configurability with persistent YAML-based settings.
-
This tool is intended for researchers, data scientists, or modelers working with wildfire data pipelines, particularly those interested in integrating Earth Engine datasets into geospatial ML workflows.
-
The Trello page contains the current development status.
Prerequisite
Requires at least python 3.10.
As of mid-2023, Google Earth Engine access must be linked to a Google Cloud Project, even for free/non-commercial usage. So sign up for a non-commercial earth engine account.
🔐 Google API Setup Instructions
To run this project with Google Earth Engine and Google Drive access, follow the steps below to create and configure your credentials.
Step 1. Create a Google Cloud Project
- Go the Google Cloud Console.
- Click the project drop-down (top bar) -> New Project.
- Name your project (eg., ee-wildfire) and click Create.
Step 2. Enable Required APIs
Step 3. Create a Service Account
- In the left sidebar: IAM & Admin → Service Accounts.
- Click + Create Service Account.
- Name it (e.g.,
wildfire-access) and click Create and Continue. - Assign the following roles to the service account:
- Owner
- Service Usage Admin
- Service Usage Consumer
- Storage Admin
- Storage Object Creator
- On the list, find your service account → Click Actions (⋮) → Manage keys.
- Under Keys, click Add Key → Create new key → JSON.
- Save the downloaded JSON file somewhere safe (e.g.,
service_account.json).
Step 4. Share Google Drive Folder
If your code needs to read/write to Google Drive:
- Create a folder in Google Drive.
- Right-click → Share.
- Share it with your service account email (e.g.,
your-sa@your-project.iam.gserviceaccount.com). - Grant Editor permission.
Install Instructions
For the stable build:
pip install ee-wildfire
For the experimental build:
git clone git@github.com:KylesCorner/Earth-Engine-Wildfire-Data.git
cd Earth-Engine-Wildfire-Data
pip install -e .
Configuration
This program uses a YAML file for user configuration.
Template for configuration:
# NEEDED
# You need a google cloud service account JSON, if not provided here the program
# will prompt you for one
credentials: ~/ee_wildfire_data/OAuth/credentials.json
# OPTIONAL
# These items have default values if not provided in YAML file.
# Fire query
min_size: 10000000.0
max_size: 1000000000.0
start_date: 2021-01-01 00:00:00
end_date: 2021-04-20 00:00:00
# Directories
tiff_dir: ~/ee_wildfire_data/tiff
data_dir: ~/ee_wildfire_data
log_dir : ~/ee_wildfire_data/logs
google_drive_dir: GoogleEarthEngine
# Pipeline
purge_before: false
download: false
export: false
retry-failed: false
purge_after: false
# Logs
no_log: false
log_level: info # levels: debug, info, warn, error
# Misc
silent: false
To finish configuration you will need to use the -config command line argument.
Command-Line Interface (CLI)
You can also edit configuration on the fly with command line arguments:
| Argument | Parameters | Description |
|---|---|---|
--version |
None | Show current version. |
--config |
PATH |
Path to YAML config file. Overrides all other command-line arguments. |
--export |
None | Export data from Google Earth Engine to Google Drive. |
--download |
None | Download data from Google Drive to your local machine. |
--show-config |
None | Show user configuration. |
--credentials |
PATH |
Path to Google authentication .json service account file. |
--data-dir |
PATH |
Path to output data directory on your local machine. |
--tiff-dir |
PATH |
Path where downloaded .tif files are stored. |
--google-drive-dir |
str |
Name of your Google Drive folder for exporting. |
--min-size |
float |
Minimum size of fire area to detect (in hectares). |
--max-size |
float |
Maximum size of fire area to detect (in hectares). |
--retry-failed |
None | Retry failed Earth Engine locations. |
--purge-before |
None | Purge files from Google Drive before exporting new data. |
--purge-after |
None | Purge files from Google Drive after downloading. |
--start-date |
datetime |
Starting date for Earth Engine query (e.g., 2020-01-01). |
--end-date |
datetime |
Ending date for Earth Engine query (e.g., 2020-12-31). |
--silent |
None | No command line output. |
--reset_config |
None | Resets internal YAML file to default values. |
--no-log |
None | Disable logging. |
--log-dir |
PATH |
Directory where you want your logs files stored. |
--log-level |
'debug', 'info', 'warn', or 'error' |
Sets the level of verbosity for log files. |
Basic Usage
ee-wildfire --config /path/to/some/config.yml
ee-wildfire --credentials PATH_TO_CREDS --export --download --min-size 10 --log-level warn
Acknowledgements
This project builds on work from the WildfireSpreadTSCreateDataset. Credit to original authors for providing data, methods, and insights.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ee_wildfire-2025.6.13.tar.gz.
File metadata
- Download URL: ee_wildfire-2025.6.13.tar.gz
- Upload date:
- Size: 243.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
45e5e1bb5996c7a05a7451129b97c8ea9abbb4c8655da8b3fee1dd74ce684cfc
|
|
| MD5 |
b5b2ef1dd706b2c9fcbfdb17da2bffd2
|
|
| BLAKE2b-256 |
2cbfd5d6da4111363d2c71dd09040c2a97d7ab5e8936c842f170be0b2d06b358
|
File details
Details for the file ee_wildfire-2025.6.13-py3-none-any.whl.
File metadata
- Download URL: ee_wildfire-2025.6.13-py3-none-any.whl
- Upload date:
- Size: 268.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9721206729bf3c9b70644687f8179b0a2156c530260216f4aef1b72265b8fdf4
|
|
| MD5 |
363d34995f52924872fc8e0dc8a16a9a
|
|
| BLAKE2b-256 |
c64dd592c847710e35054626e741f5261684fbd3553f9778581ea35c432bb8f3
|