geostationary-cookbook
2024 Pythia Hackathon for Geostationary satellites
Science Score: 49.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.1%) to scientific vocabulary
Repository
2024 Pythia Hackathon for Geostationary satellites
Basic Info
- Host: GitHub
- Owner: ProjectPythia
- License: apache-2.0
- Language: Jupyter Notebook
- Default Branch: main
- Homepage: https://projectpythia.org/geostationary-cookbook/
- Size: 526 MB
Statistics
- Stars: 0
- Watchers: 6
- Forks: 2
- Open Issues: 1
- Releases: 1
Metadata Files
README.md
Geostationary satellite Cookbook

This "Pythia Cookbook" was started during the Project Pythia June 11-14 2024 in Boulder, CO at the NCAR Mesa Lab. The "COOKBOOK GEOSAT" aims to provide a comprehensive guide for utilizing Satpy to analyze geostationary satellite data of the sensor Advanced Baseline Imager (ABI) on GOES-R (west and east), sensor Advanced Himawari Imager (AHI) on HIMAWARI, and sensor Advance Meteorological Imager (AMI) on Geo-KOMPSAT-2A (GK2A). Satpy is a powerful Python library specifically designed for processing and analyzing satellite data, offering capabilities for data visualization, manipulation, and analysis.

Motivation
Satellite-based Earth observation is vital for global climate monitoring and disaster management. These systems provide critical data across a wide range of applications, including:
- Agriculture
- Forest fires
- Urbanization
- Ice cover
- Extreme weather
- Atmospheric composition
- Natural hazards such as cyclones and volcanic eruptions
The latest third-generation geostationary satellites (GEOs) significantly enhance these capabilities. With advanced features such as RGB composite visualization, high-frequency sensing, and greater data availability, these satellites are central to monitoring both atmospheric and terrestrial environmentsespecially for early detection and response to disasters.
Public access to data from NOAAs third-generation GEOsGOES-16, GOES-17, GOES-18 (GOES-West), and GOES-19 (GOES-East)is made possible through the NOAA Open Data Dissemination (NODD) Program, which partners with commercial cloud platforms like:
- Microsoft Azure
- Amazon Web Services (AWS)
- Google Cloud Platform
Additionally, AWS also hosts data from international 3rd-gen GEOs such as:
- Himawari-8
- Geo-KOMPSAT-2A
These partnerships enable near real-time access and long-term data archives for both domestic and global users.
To support weather services and disaster response agencies, 3rd-gen GEOs deliver continuous, high-resolution monitoring of key meteorological variablessuch as cloud cover, temperature, and moistureenabling better detection and forecasting of extreme weather events like hurricanes, tornadoes, and floods.
Finally, the visualization of satellite data in map-based formats is a critical task. It allows scientists, decision-makers, and emergency managers to:
- Identify risk patterns
- Assess vulnerabilities
- Improve early warning systems
- Enhance disaster preparedness and planning
Public access to NOAA's geostationary satellite data, including HIMAWARI, GK2A, GOES-16, GOES-17, GOES-18, and GOES-19, is made possible through the NOAA Open Data Dissemination NODD
A Python library called Satpy was created specifically for handling data from satellite instruments that observe the Earth.
Authors
| Name | Affiliation | | ----------- | ----------- | | Jorge Bravo | Stevens Institute of Technology | | | Srihari (Hari) Sundar | National Renewable Energy Lab | | Brian Mapes | Affiliation University of Miami | | Suman Shekhar | Rutgers University, The state university of New Jersey | | Tri Nguyen | Indiana University Bloomington | | Deborah Khider | University of Southern California |
Contributors
Structure
This development cookbook serves as an example of how to gather, handle, and present various geostationary satellite data types.
Foundations
The ABI on the GOES-R series, the AHI on the Himawari satellites, and the AMI on the Geo-KOMPSAT-2A satellites all provide multi-channel visibility through their respective 16 spectral bands.
These sensors have several similarities in their spectral band configurations:
- All three instruments have bands covering the visible, near-infrared, and infrared portions of the electromagnetic spectrum.
- The central wavelengths of the spectral bands are comparable across the ABI, AHI, and AMI, enabling similar meteorological and environmental observations.
- The spatial resolutions of the bands also exhibit similarities, with the visible bands typically having finer spatial resolution
Example workflows
Several notebooks with the following structure can be found in the notebooks directory:
- 00geosatexplaining_steps.ipynb:: provides a detailed explanation on how to download data and use Satpy to display it.
Given that you have read the 00geosatexplaining_steps.ipynb and have a basic understanding of how to use Satpy, the following notebooks are designed without providing an explanation of the various sensors on each satellite. - 99auxiliardowloading.ipynb: In order to run the subsequent notebooks, data must be downloaded from this notebook. - 01geosatABIGOESeast.ipynb: notebook to read ABI sensor data locally on GOES-east - 02geosatABIGOESwest.ipynb: notebook to read ABI sensor data locally on GOES-west - 03geosatAHI_HIMAWARI.ipynb: notebook to read AHI sensor data locally on HIMAWARI - 04geosatAMI_GK2A.ipynb: notebook for reading AMI sensor data locally on GeoKomposat
Running the Notebooks
You can either run the notebook using Binder or on your local machine.
Running on Binder
The simplest way to interact with a Jupyter Notebook is through
Binder, which enables the execution of a
Jupyter Book in the cloud. The details of how this works are not
important for now. All you need to know is how to launch a Pythia
Cookbooks chapter via Binder. Simply navigate your mouse to
the top right corner of the book chapter you are viewing and click
on the rocket ship icon, (see figure below), and be sure to select
launch Binder. After a moment you should be presented with a
notebook that you can interact with. I.e. youll be able to execute
and even change the example programs. Youll see that the code cells
have no output at first, until you execute them by pressing
{kbd}Shift/+{kbd}Enter. Complete details on how to interact with
a live Jupyter notebook are described in Getting Started with
Jupyter.
Running on Your Own Machine
If you are interested in running this material locally on your computer, you will need to follow this workflow:
(Replace "geostationary-cookbook" with the title of your cookbooks)
- Clone the
https://github.com/ProjectPythia/geostationary-cookbookrepository:
bash
git clone https://github.com/ProjectPythia/geostationary-cookbook.git
- Move into the
geostationary-cookbookdirectorybash cd geostationary-cookbook - Create and activate your conda environment from the
environment.ymlfilebash conda env create -f environment.yml conda activate geostationary-cookbook - Move into the
notebooksdirectory and start up Jupyterlabbash cd notebooks/ jupyter lab
Owner
- Name: Project Pythia
- Login: ProjectPythia
- Kind: organization
- Email: projectpythia@ucar.edu
- Location: United States of America
- Website: projectpythia.org
- Twitter: Project_Pythia
- Repositories: 21
- Profile: https://github.com/ProjectPythia
Community learning resource for Python-based computing in the geosciences
GitHub Events
Total
- Release event: 1
- Delete event: 1
- Issue comment event: 4
- Member event: 1
- Push event: 74
- Pull request event: 3
- Fork event: 1
- Create event: 8
Last Year
- Release event: 1
- Delete event: 1
- Issue comment event: 4
- Member event: 1
- Push event: 74
- Pull request event: 3
- Fork event: 1
- Create event: 8
Dependencies
- actions/checkout v4 composite
- jacobtomlinson/gha-find-replace v3 composite
- stefanzweifel/git-auto-commit-action v5 composite