Polar2Grid version 3.0 has been released
Note: NOAA-21 data used in this blog post are preliminary and non-operational. Imagery was created using Polar2Grid v3.0.
The CIMSS Community Satellite Processing Package (CSPP) team has released Polar2Grid version 3.0, a software package that can be used (among many other things!) to create high-quality imagery from JPSS Sensor Data Record (SDR) files as might be produced at a Direct Broadcast site (or ordered/downloaded from NOAA CLASS). Polar2Grid v3.0 represents a significant change from Polar2Grid v2.3, and some of those changes are documented here. The latest Polar2Grid also has significantly faster processing. The three true-color images above were created using Suomi NPP, NOAA-20 and NOAA-21 VIIRS imagery. (Note that NOAA-21 data are still preliminary and non-operational, although Beta maturity has been reached. They are included here to show that Polar2Grid can produce NOAA-21 imagery every bit as stunning as imagery from Suomi NPP and NOAA-20!). An especial advantage of 3 Polar Orbiters is obvious in the imagery above: the capability to animate high-resolution JPSS data.
Polar2Grid linux-based software can be downloaded from this website in the form of a gzipped tar file (Documentation on Polar2Grid is also available.) After expanding the downloaded file, and setting an environment file, i.e., export POLAR2GRID_HOME = /directory/where/software/sits
, the various packages within $POLAR2GRID_HOME/bin can be run. To create the imagery above, I first created a map on which to reproject the data. This required the use of the p2g_grid_helper.sh
scripts that creates the required navigation information in a format Polar2Grid recognizes. I wanted to create something that covered the Great Lakes because all 3 JPSS satellites — Suomi-NPP, NOAA-20 and NOAA-21 — scanned the entire Great Lakes in one swath on a relatively clear day. How will the three scenes compare? After some trial and error, I used this command
./p2g_grid_helper.sh GreatLakes -84.0 45.0 500.0 -500.0 2880 1920 > GreatLakes.yaml
that created a grid (called ‘GreatLakes’) centered at 84oW, 45oN, with 500 m resolution in the N-S and E-W directions, with a grid size of 2880×1920. The information created was redirected into the file ‘GreatLakes.yaml’; Polar2Grid software by default now expects grid configuration files created by the p2g_grid_helper shell script to reside in files with a suffix of ‘yaml’.
To acquire data for Polar2Grid to process, I accessed the CIMSS real-time system holding files created from the Direct Broadcast site. Data are separated out by satellite, and by day/time. Multiple granules are within each day/time file, especially now that CIMSS is producing expanded files by using data from other Direct Broadcast sites! Suomi NPP data for this case, for example, are at this link from 1734 UTC on 7 March; data from NOAA-20 are from 1821 UTC; data from NOAA-21 are from 1846 UTC. I could also have requested data from NOAA CLASS by selecting ‘JPSS VIIRS Sensor Data Record Operational (VIIRS_SDR) — although this site only distributes Operational data: NOAA-21 data are not available (yet). Usually when I access JPSS data from NOAA CLASS, I first view the orbits (from this website) for the day in question (7 March in this instance) for NPP, NOAA-20 and (eventually) NOAA-21, so I can access specific times that cover the region of interest.
Once the data were on the machine that holds the Polar2Grid software, it was straightforward to create imagery, using these commands for Suomi-NPP, NOAA-20 and NOAA-21 data, respectively; all the data were in the same directory:
./polar2grid.sh -r viirs_sdr -w geotiff -g GreatLakes --grid-configs GreatLakes.yaml -p true_color -f ../../daydata/*npp*.h5
./polar2grid.sh -r viirs_sdr -w geotiff -g GreatLakes --grid-configs GreatLakes.yaml -p true_color -f ../../daydata/*j01*.h5
./polar2grid.sh -r viirs_sdr -w geotiff -g GreatLakes --grid-configs GreatLakes.yaml -p true_color -f ../../daydata/*j02*.h5
Polar2Grid’s viirs_sdr reader (the -r flag) is being used, as is the geotiff writer (the -w flag). This syntax is different from earlier versions of Polar2Grid, but more in line with that in Geo2Grid. The data are being regridded (the -g flag) to a ‘GreatLakes’ grid, and grid configurations are stored within the ‘GreatLakes.yaml’ file. The product (-p flag) being created is ‘true_color’ and the data files (the -f flag) are found in the relative directory specified. If a user is unsure of what products can be created given the data in the data directory, the –list-products-all instruction can be used in place of -p to find that out.
The three commands above create (spectacular!!) True-Color imagery from Suomi-NPP, NOAA-20 and NOAA-21, seen in the animation above. Polar2Grid can also be used to add maps to the imagery, but this blogger thought those weren’t necessary.