Global Renewables Watch
A comprehensive global temporal dataset of commercial solar photovoltaic (PV) farms and onshore wind turbines, derived from high-resolution satellite imagery analyzed quarterly from the fourth quarter of 2017 to the second quarter of 2024.
https://github.com/microsoft/global-renewables-watch
Category: Energy Systems
Sub Category: Energy Data Accessibility and Integration
Last synced: about 4 hours ago
JSON representation
Repository metadata
- Host: GitHub
- URL: https://github.com/microsoft/global-renewables-watch
- Owner: microsoft
- License: mit
- Created: 2025-09-25T19:11:27.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-11-21T18:58:44.000Z (about 1 month ago)
- Last Synced: 2025-12-19T18:04:40.203Z (7 days ago)
- Language: Python
- Size: 40.6 MB
- Stars: 120
- Watchers: 1
- Forks: 13
- Open Issues: 2
- Releases: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
- Support: SUPPORT.md
README.md
Global Renewables Watch
We present a comprehensive global temporal dataset of commercial solar photovoltaic (PV) farms and onshore wind turbines, derived from high-resolution satellite imagery analyzed quarterly from the fourth quarter of 2017 to the second quarter of 2024. We create this dataset by training deep learning based segmentation models to identify these renewable energy installations from satellite imagery, then deploy them on over 13 trillion pixels covering the world. For each detected feature, we estimate the construction date and the preceding land use type. This dataset offers crucial insights into progress toward sustainable development goals and serves as a valuable resource for policymakers, researchers, and stakeholders aiming to assess and promote effective strategies for renewable energy deployment. Our final spatial dataset includes 375,197 individual wind turbines and 86,410 solar PV installations. We aggregate our predictions to the country level --- estimating total power capacity based on construction date, solar PV area, and number of windmills --- and find a R2 values of 0.96 and 0.93 for solar PV and onshore wind respectively compared to IRENA's most recent 2023 country level capacity estimates.
Dataset Download
Download the complete dataset from the release page, or use direct links below:
The datasets are provided as GeoPackage (.gpkg) files containing global detections with construction dates and land use information.
Model Inference
We provide two inference scripts: inference_solar.py for solar panel detection and inference_wind.py for wind turbine detection with the pretrained models. These each take a single GeoTIFF image as input and output a prediction GeoTIFF of the same shape.
Setup
First, setup a conda environment using the provided environment.yml file:
conda env create -f environment.yml
conda activate grw
Then download the pre-trained models to the models/ directory:
mkdir -p models
wget -O models/solar_model.ckpt https://github.com/microsoft/global-renewables-watch/releases/download/v1.1/solar_model.ckpt
wget -O models/wind_model.pth https://github.com/microsoft/global-renewables-watch/releases/download/v1.1/wind_model.pth
Solar Panel Inference
Run the solar panel detection model on a single GeoTIFF image:
python inference_solar.py \
--model-fn models/solar_model.ckpt \
--input-fn data/example_image.tif \
--output-dir results/ \
--gpu 0 \
--verbose
Wind Turbine Inference
Run the wind turbine detection model on a single GeoTIFF image:
python inference_wind.py \
--model-fn models/wind_model.pth \
--input-fn data/example_image.tif \
--output-dir results/ \
--gpu 0 \
--verbose
Notes
- Solar inference expects 4096x4096 pixel images
- Wind inference can handle arbitrary image sizes using a sliding window approach
- Both scripts support skip/overwrite modes to avoid reprocessing existing outputs
- GPU is recommended for faster inference but not required
- Output files maintain the same geospatial reference as input files
Polygonization
After running inference, use polygonize.py to convert raster predictions into vector features (GeoJSON format). This script automatically processes both solar and wind predictions:
- Solar: Extracts polygon features of detected solar panels (filtered by minimum area)
- Wind: Extracts centroid points of detected wind turbines
Usage
python polygonize.py \
--input-dir results/ \
--output-dir vectors/ \
--min-area 10000 \
--num-workers 6 \
--verbose
Output:
- Solar predictions →
*_solar.geojson(Polygon features with area) - Wind predictions →
*_wind.geojson(Point features with area) - All geometries are in EPSG:3857 projection
- Features include
filenameandarea(in m²) properties
Citation
If you use this work, please consider citing our paper:
@article{robinson2025global,
title={Global Renewables Watch: A Temporal Dataset of Solar and Wind Energy Derived from Satellite Imagery},
author={Robinson, Caleb and Ortiz, Anthony and Kim, Allen and Dodhia, Rahul and Zolli, Andrew and Nagaraju, Shivaprakash K and Oakleaf, James and Kiesecker, Joe and Ferres, Juan M Lavista},
journal={arXiv preprint arXiv:2503.14860},
year={2025}
}
Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a
Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
the rights to use your contribution. For details, visit Contributor License Agreements.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide
a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions
provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct.
For more information see the Code of Conduct FAQ or
contact opencode@microsoft.com with any additional questions or comments.
Trademarks
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft
trademarks or logos is subject to and must follow
Microsoft's Trademark & Brand Guidelines.
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
Any use of third-party trademarks or logos are subject to those third-party's policies.
Owner metadata
- Name: Microsoft
- Login: microsoft
- Email: opensource@microsoft.com
- Kind: organization
- Description: Open source projects and samples from Microsoft
- Website: https://opensource.microsoft.com
- Location: Redmond, WA
- Twitter: OpenAtMicrosoft
- Company:
- Icon url: https://avatars.githubusercontent.com/u/6154722?v=4
- Repositories: 7691
- Last ynced at: 2025-12-25T22:52:58.311Z
- Profile URL: https://github.com/microsoft
GitHub Events
Total
- Watch event: 21
- Delete event: 1
- Issue comment event: 1
- Push event: 3
- Public event: 1
- Pull request event: 1
- Fork event: 4
- Create event: 1
Last Year
- Watch event: 21
- Delete event: 1
- Issue comment event: 1
- Push event: 3
- Public event: 1
- Pull request event: 1
- Fork event: 4
- Create event: 1
Issue and Pull Request metadata
Last synced: 6 days ago
Total issues: 4
Total pull requests: 0
Average time to close issues: about 2 hours
Average time to close pull requests: N/A
Total issue authors: 4
Total pull request authors: 0
Average comments per issue: 0.5
Average comments per pull request: 0
Merged pull request: 0
Bot issues: 0
Bot pull requests: 0
Past year issues: 4
Past year pull requests: 0
Past year average time to close issues: about 2 hours
Past year average time to close pull requests: N/A
Past year issue authors: 4
Past year pull request authors: 0
Past year average comments per issue: 0.5
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- AviralPadlia (1)
- Msnglx (1)
- simulacraliasing (1)
- jurajbetak (1)
Top Pull Request Authors
Top Issue Labels
Top Pull Request Labels
Score: -Infinity