Skip to content

ProjectPythia/feature-tracking-cookbook

Repository files navigation

Feature Tracking Cookbook

thumbnail

nightly-build Binder DOI

This Project Pythia Cookbook covers how to identify and track meteorological features across space and time using three methods: Matplotlib, SciPy, and Scikit.

Motivation

Atmospheric phenomena of interest are almost always dynamically evolving and rapidly changing. Examples include thunderstorm complexes, tropical/extratropical cyclones, or precipitation shields. Students or researchers studying these features must first be able to identify and track them through concurrent time steps before any further analysis.

Listed below is the workflow for identifying and tracking 2D geophysical features in gridded data.

More specifically, it is aimed at users who have fields such as sea-level pressure, precipitation, CWV, temperature, vorticity, or reflectivity, and want to:

  • Identify spatial objects from a thresholded field
  • Compare different object-identification methods
  • Extract simple object properties such as area, centroid, and mask
  • Track those objects through time using frame-to-frame overlap

Authors

Matthew Lynne, Brian Rose, Sarah Ravellette, Snigdha Samantaray, Jacob Vile, Christine Deng, Reda Algendy

Contributors

Structure

This cookbook is broken up into six main sections: Preamble, Foundations, Precipitation Tracking, Sea Level Pressure Tracking, Combined Tracking, and Appendix.

Section 1 Preamble

How to cite the cookbook.

Section 2 Foundations

  • Foundational material about Matplotlib, SciPy, and Scikit.
  • Where to apply these tools.

Section 3 Precipitation Tracking

How to track precipitation over time.

Section 4 Sea Level Pressure Tracking

How to track sea level pressure over time.

Section 5 Combined Tracking

How to track sea level pressure and precipitation over time.

Section 6 Appendix

Exploring data sources for ERA5.

Running the Notebooks

You can either run the notebooks in the Cookbook using Binder or on your local machine.

Running on Binder

The simplest way to interact with a Jupyter Notebook is through Binder, which enables "one click" execution in the cloud. Simply navigate your mouse to the top right corner of the book chapter you are viewing and click on the rocket ship icon (see screenshots here), and a text box will appear. Type or paste the Pythia Binder link (https://binder.projectpythia.org) and click "Launch". After a few moments you should be presented with a notebook that you can interact with. You’ll be able to execute code and even change the example programs. At first the code cells have no output, until you execute them by pressing {kbd}Shift+{kbd}Enter. Complete details on how to interact with a live Jupyter notebook are described in the Pythia Foundations chapter Getting Started with Jupyter.

Note, not all Cookbook chapters are executable. If you do not see the rocket ship icon, such as on this page, you are not viewing an executable book chapter.

Running on Your Own Machine

If you are interested in running this material locally on your computer, you will need to follow this workflow:

  1. Clone the feature-tracking-cookbook> repository:

     git clone https://github.com/ProjectPythia/feature-tracking-cookbook.git
  2. Move into the feature-tracking-cookbook directory

    cd feature-tracking-cookbook
  3. Create and activate your conda environment from the environment.yml file

    conda env create -f environment.yml
    conda activate feature-tracking-dev
  4. Move into the notebooks directory and start up Jupyterlab

    cd notebooks/
    jupyter lab

About

Identifying and tracking meterological features across space and time using three methods: Matplotlib, SciPy, and Scikit.

Resources

License

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors