AWIPS Tips: Exploring Satellite Imagery using Python-AWIPS

AWIPS Tips

Welcome back to AWIPS Tips!

This week we’re going to dive into a little bit of python-awips to learn more about what satellite data our EDEX has to offer. If this is your first time joining us, it may be helpful to take a quick glance over some of our previous AWIPS Tips blogs about python-awips. To take a deeper look into satellite data, we’ll be highlighting some of the features and cells of the Satellite Imagery example notebook. All other example notebooks can be found on our website as well, and available when downloading the python-awips source code and running Jupyter locally.

Similar to other python-awips notebooks, this example begins by creating an EDEX connection (using our public EDEX - edex.cloud.unidata.ucar.edu) and setting the datatype. To access satellite data, the datatype is set to satellite. If you knew exactly what data you wanted, you could proceed to refine the DataRequest by setting additional filters like the time, location name, parameters, or other modifiers. For this notebook though, we want to investigate what modifiers are actually available first before requesting data.

In the Grid Levels and Parameters notebook we go over how to investigate what is available for locations, parameters, levels, and times of the grid datatype. Here we’re going to look at a new modifier, called optional identifiers. Now, as the name suggests, these are optional, so many datatypes may not have any identifiers. For satellite data, we take a look at the identifiers in section 4 of the notebook and see this output:

Available Identifiers:
 - source
 - physicalElement
 - creatingEntity
 - sectorID

From here, we can then take a look at each individual identifier and see what values are available. For example, we can look at the source with the following:

identifier = "source"
sources = DataAccessLayer.getIdentifierValues(request, identifier)
print(identifier + ":")
print(list(sources))

Which then produces the following output:

source:
['GTD01', 'RAMMB', 'WCDAS', 'RBU', 'UCAR', 'NSOF', 'McIDAS']

The notebook continues on with the rest of the remaining identifiers and shows you their available values. Once we have an idea of what data is available, then we can make selections of the identifiers to help narrow the result to exactly what we’re looking for.

For this notebook, both GOES East mesoscale sections are chosen as the desired data for plotting. A simple for-loop is used to draw both mesoscale 1 and mesoscale 2 images. Channel 13 of the GOES imager was chosen for this example, and gives produces plots like these:

Thanks for joining us and check back in two weeks for the next blog post.

To view archived blogs, visit the AWIPS Tips blog tag, and get notified of the latest updates from the AWIPS team by signing up for the AWIPS mailing list. Questions or suggestions for the team on future topics? Let us know at support-awips@unidata.ucar.edu

This blog was posted in reference to v20.3.2-1 of NSF Unidata AWIPS

Comments:

Post a Comment:
  • HTML Syntax: Allowed
News@Unidata
News and information from the Unidata Program Center
News@Unidata
News and information from the Unidata Program Center

Welcome

FAQs

Developers’ blog

Take a poll!

What if we had an ongoing user poll in here?

Browse By Topic
Browse by Topic
« April 2024
SunMonTueWedThuFriSat
 
5
6
7
8
9
10
11
12
13
14
15
19
20
21
22
23
24
25
26
27
28
29
30
    
       
Today