ArcToolbox banner

Find CoastWatch Images and Create Masks as Binary Rasters

Finds images in CoastWatch POES AVHRR files in a directory creates masks for them, in binary raster format.


Command line syntax

CoastWatchAVHRRFindAndCreateMasksAsBinaryRasters_GeoEco <inputDirectory> <outputDirectory> {wildcard} {searchTree} {minSize} {maxSize} {minDateCreated} {maxDateCreated} {minDateModified} {maxDateModified} {variables;variables...} {regionCodes;regionCodes...} {satellites;satellites...} {minImageDate} {maxImageDate} {minDayOfYear} {maxDayOfYear} {sceneTimes;sceneTimes...} {maskMissingData} {maskLand} {cloudVariable} {sunZenithVariable} {useDayCloudTest1} {useDayCloudTest2} {useDayCloudTest3} {useDayCloudTest4} {useDayCloudTest5} {useDayCloudTest6} {useDayCloudTest7} {maskWhenDayCloudMaskExceeds} {useNightCloudTest1} {useNightCloudTest2} {useNightCloudTest3} {useNightCloudTest4} {useNightCloudTest5} {useNightCloudTest6} {useNightCloudTest7} {maskWhenNightCloudMaskExceeds} {minCloudyNeighbors} {outputFilePythonExpression} {modulesToImport;modulesToImport...} {skipExisting}

Parameters
ExpressionExplanation
<inputDirectory>

Directory to search.

<outputDirectory>

Directory to receive the binary rasters.

{wildcard}

UNIX-style "glob" wildcard expression specifying the CoastWatch files to find.

The glob syntax supports the following patterns:

  • ? - matches any single character

  • * - matches zero or more characters

  • [seq] - matches any single character in seq

  • [!seq] - matches any single character not in seq

seq is one or more characters, such as abc. You may specify character ranges using a dash. For example, a-z0-9 specifies all of the characters in the English alphabet and the decimal digits 0 through 9.

You may specify subdirectories in the glob expression. For example, the expression CoastWatch*/2006* will find all files beginning with 2006 that are contained in directories beginning with CoastWatch.

The operating system determines whether / or \ is used as the directory separator. On Windows, both will work. On most flavors of UNIX, / must be used.

The operating system determines if matching is case sensitive. On Windows, matching is case-insensitive. On most flavors of UNIX, matching is case-sensitive.

It is ok if your expression matches files that are not CoastWatch files. For example, the expression *.hdf might match some non-CoastWatch HDF files. These files will be ignored.

{searchTree}

If True, subdirectories will be searched.

{minSize}

Minimum size, in bytes, of files to find. If provided, only files that are this size or larger will be found.

{maxSize}

Maximum size, in bytes, of files to find. If provided, only files that are this size or smaller will be found.

{minDateCreated}

Minimum creation date, in the local time zone, of the files to find, as reported by the operating system. If provided, only files that were created on or after this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

{maxDateCreated}

Maximum creation date, in the local time zone, of the files to find, as reported by the operating system. If provided, only files that were created on or before this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

{minDateModified}

Minimum modification date, in the local time zone, of the files to find, as reported by the operating system. If provided, only files that were modified on or after this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

{maxDateModified}

Maximum modification date, in the local time zone, of the files to find, as reported by the operating system. If provided, only files that were modified on or before this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

{variables;variables...}

CoastWatch variables that the files must contain. Each variable corresponds to an image in the file. If any variables are provided, only the files that contain one or more of those variables will be found. If none are provided, all files will be found.

At the time of this writing, the CoastWatch program was known to have published files with these variables:

avhrr_ch1
avhrr_ch2
avhrr_ch3
avhrr_ch3a
avhrr_ch4
avhrr_ch5
cloud
cloudx
graphics
sst
rel_azimuth
sat_zenith
sun_zenith

Please see the CoastWatch documentation for more information about these variables. In general, most users are interested in the "sst" variable, which is the estimated sea surface temperature, and the "cloud" variable, which is a bit mask indicating which cloud tests failed for that pixel. A value of 0 for the cloud variable indicates that all cloud tests passed and CoastWatch has high confidence in the validity of the SST value for that pixel.

{regionCodes;regionCodes...}

CoastWatch region codes for the files to find. If any regions are provided, only files matching those regions will be found. If none are provided, all files will be found.

This function finds the region codes by examining the CoastWatch metadata inside the files, not be examining the file name. Thus it will work properly with older CoastWatch files that do not include the region in the file name.

Because the CoastWatch metadata does not include the region code explicitly, it must be inferred from the other image metadata. The current implementation of this function recognizes the following regions:

aa - Alaska Sitka
ax - Alaska South
gb - Great Barrier Reef
ay - Alaska West
az - Alaska North
ce - Caribbean East
cw - Caribbean West
er - East Coast North
gr - Great Lakes
hr - Hawaii
mr - Gulf of Mexico
sb - East Coast Bermuda
sl - Great Salt Lake
sr - East Coast South
wa - West Coast Acapulco
wj - West Coast Baja
wn - West Coast North
ws - West Coast South
uk - the CoastWatch region is unknown (the image coordinates were not recognized by this tool)

These regions were taken from the NOAA KLM User's Guide Section 9.5 amended November 7, 2005. If a file is not for one of these regions, it will only be found if you do not specify any region codes. If you would like more region codes added to this tool, please contact the author.

{satellites;satellites...}

Satellites for the files to find. If any satellites are provided, only files that contain data from these satellites will be found. If none are provided, all files will be found.

At the time of this writing, the CoastWatch program was known to have published data from the following satellites:

NOAA-12
NOAA-14
NOAA-15
NOAA-16
NOAA-17
NOAA-18
{minImageDate}

Minimum image date, in UTC, for the files to find. If provided, only files that contain images taken on or after this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

{maxImageDate}

Maximum image date, in UTC, for the files to find. If provided, only files that contain images taken on or before this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

{minDayOfYear}

Minimum image day of the year, in UTC, for the for the files to find. If provided, only files that contain images taken on or after this day of the year will be found. The first day of the year is always 1, and the last day of the year is 365 during non-leap years and 366 during leap years.

{maxDayOfYear}

Maximum image day of the year, in UTC, for the for the files to find. If provided, only files that contain images taken on or before this day of the year will be found. The first day of the year is always 1, and the last day of the year is 365 during non-leap years and 366 during leap years.

{sceneTimes;sceneTimes...}

CoastWatch "scene times" for the files to find. If provided, only files that contain images with these scene times will be found. If none are provided, all files will be found.

At the time of this writing, the CoastWatch program was known to have published data with the following scene times:

day
day/night
night

The scene time affects which cloud tests are used to generate the cloud mask image, among other things. Please consult the CoastWatch documentation for more information.

{maskMissingData}

If True, pixels that are missing data will be masked.

The most common cause for missing data is the satellite swath not completely covering the region of interest. The pixels that could not be seen by the sensor when the satellite flew over will be marked as missing data.

{maskLand}

If True, pixels that are classified as land by the CoastWatch graphics variable will be masked.

The graphics variable is obtained by invoking the CoastWatch Utilities cwgraphics program on the input file. I have observed that this program does not always produce a land mask that is 100% identical to the graphics variable contained by the input file. For example, when I executed cwgraphics on 2005_108_1841_n16_er.hdf, I noticed that several pixels, mostly near the edges of the images, differed from those obtained by viewing the graphics variable in 2005_108_1841_n16_er.hdf using the cdat program.

I do not know the reason for this discrepancy. My theory is that the cwgraphics program does not read the graphics variable from the input file at all. Rather, it only reads the geographic extent and then produces a new land mask from its database in the installation directory of the CoastWatch Utilities. Newer versions of the CoastWatch Utilities may include updated land masks that differ from those used by CoastWatch in the past. But this is only a theory. In any case, the discrepancy seems to be quite insignificant and should not affect most users.

{cloudVariable}

Name of the CoastWatch variable to extract from the cloud mask file and use as the cloud mask (e.g. "cloud").

The current implementation of this tool was designed to operate on the 8-bit CLAVR cloud mask represented by the "cloud" variable in CoastWatch files. It was not designed to operate on the "cloudx" variable, which is a new experimental CLAVR-x cloud mask available in recent CoastWatch HDF files. Nonetheless, if you wish to operate on the cloudx variable, you can specify it instead of cloud, and pick mask options appropriate for it instead.

{sunZenithVariable}

Name of the CoastWatch variable to extract from the solar zenith file and use as the solar zenith image (e.g. "sun_zenith").

{useDayCloudTest1}

If True, daytime pixels that failed the CLAVR-1 Reflective Gross Cloud Test (bit 1 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, the same CLAVR-1 test is used for both CWF and HDF files, but for HDF files, the CLAVR-x thresholds are used instead of than of the CLAVR-1 thresholds.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useDayCloudTest2}

If True, daytime pixels that failed the CLAVR-1 Reflectance Uniformity Test (bit 2 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, the same CLAVR-1 test is used for both CWF and HDF files, but for HDF files, the CLAVR-x thresholds are used instead of than of the CLAVR-1 thresholds.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useDayCloudTest3}

If True, daytime pixels that failed the CLAVR-1 Reflectance Ratio Cloud Test (bit 3 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, the same CLAVR-1 test is used for both CWF and HDF files, but for HDF files, the CLAVR-x thresholds are used instead of than of the CLAVR-1 thresholds.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useDayCloudTest4}

If True, daytime pixels that failed the CLAVR-1 Channel 3 Albedo Test (bit 4 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useDayCloudTest5}

If True, daytime pixels that failed the CLAVR-1 Thermal Uniformity Test (bit 5 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useDayCloudTest6}

If True, daytime pixels that failed the CLAVR-1 Four Minus Five Test (bit 6 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useDayCloudTest7}

If True, daytime pixels that failed the CLAVR-1 Thermal Gross Cloud Test (bit 7 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{maskWhenDayCloudMaskExceeds}

If a value is provided, daytime pixels with a cloud mask value greater than this value will be masked.

The CoastWatch cloud mask is a bitmask, where each bit represents the success (0) or failure (1) of a given CLAVR cloud test. Thus the cloud mask values are NOT intended to be interpreted as range, like a spectrum, where 0 represents "very clear" and 255 represents "very cloudy". Nevertheless, some users of this tool determined that for their study the best tradeoff between minimizing SST error and minimizing the number of pixels masked by clouds was obtained by masking all pixels where the cloud mask exceeded a certain value. This option was implemented specifically for those users and is not recommended for general use. If you do use this option, be sure to study many cloud mask images before selecting a value.

If a value is provided both for this parameter and for the cloud test bits specified by the previous parameters, all of these parameters will be effective. In other words, a cloudy pixel can be masked by failing a specific cloud test, or by exceeding the minimum cloud mask value, or both. .

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter. For more information about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useNightCloudTest1}

If True, nighttime pixels that failed the CLAVR-1 Thermal Gross Cloud Test (bit 1 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useNightCloudTest2}

If True, nighttime pixels that failed the CLAVR-1 Thermal Uniformity Test (bit 2 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useNightCloudTest3}

If True, nighttime pixels that failed the CLAVR-1 Uniform Low Stratus Test (bit 3 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useNightCloudTest4}

If True, nighttime pixels that failed the CLAVR-1 Four Minus Five Test (bit 4 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useNightCloudTest5}

If True, nighttime pixels that failed the CLAVR-1 Cirrus Test (bit 5 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useNightCloudTest6}

If True, nighttime pixels that failed the CLAVR-x Channel 3B Albedo Test (bit 6 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, this test was not used for CoastWatch CWF files and thus bit 6 will always be 0, indicating success, for CWF nighttime cloud mask pixels.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{useNightCloudTest7}

If True, nighttime pixels that failed the CLAVR-x Channel 3B Albedo Uniformity Test (bit 7 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, this test was not used for CoastWatch CWF files and thus bit 7 will always be 0, indicating success, for CWF nighttime cloud mask pixels.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

{maskWhenNightCloudMaskExceeds}

If a value is provided, nighttime pixels with a cloud mask value greater than this value will be masked.

The CoastWatch cloud mask is a bitmask, where each bit represents the success (0) or failure (1) of a given CLAVR cloud test. Thus the cloud mask values are NOT intended to be interpreted as range, like a spectrum, where 0 represents "very clear" and 255 represents "very cloudy". Nevertheless, some users of this tool determined that for their study the best tradeoff between minimizing SST error and minimizing the number of pixels masked by clouds was obtained by masking all pixels where the cloud mask exceeded a certain value. This option was implemented specifically for those users and is not recommended for general use. If you do use this option, be sure to study many cloud mask images before selecting a value.

If a value is provided both for this parameter and for the cloud test bits specified by the previous parameters, all of these parameters will be effective. In other words, a cloudy pixel can be masked by failing a specific cloud test, or by exceeding the minimum cloud mask value, or both. .

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter. For more information about the cloud tests, please see the CoastWatch and CLAVR documentation.

{minCloudyNeighbors}

Minimum number of neighbors that a cloudy pixel must have in order for that pixel to be masked.

You can use this option to ignore isolated cloudy pixels that are not clumped together. For example, if you specify the value 1, cloudy pixels will be ignored and not used in the masking process unless at least one of their eight neighbors is also cloudy.

If a neighbor is not cloudy but it is masked for some other reason (e.g. it is land), it does not count as being cloudy.

This option is ignored when cloud masking is not performed.

{outputFilePythonExpression}

Python expression used to calculate the absolute path of an output file. The expression may be any Python statement appropriate for passing to the eval function and must return a Unicode string. The expression may reference the following variables:

  • directoryToSearch - the value provided for the directory to search parameter

  • outputDirectory - the value provided for the output directory parameter

  • inputFile - the absolute path to the input CoastWatch file

  • metadata - a dictionary of CoastWatch metadata about the file (see below)

The default expression:

os.path.join(outputDirectory, metadata['Region code'], metadata['Satellite'], metadata['Image datetime'].strftime('%Y'), metadata['Image datetime'].strftime('%Y%j%H%M_mask') + '.bin')

stores the file in the output directory in a subdirectory structure based on the CoastWatch region code, satellite and so on. For example, if the input file was 2007_066_0459_n17_wn.hdf and the output directory was C:CoastWatch, the output file path produced by the expression above would be:

C:\CoastWatch\wn\noaa-17\2007\20070660459_mask.bin

The following keys are available in the metadata dictionary. The Python data type of the value for the key appears in parentheses. Remember that if the value is not a string, you must convert it to one before you can use it in Python's os.path function:

  • 'Region code' (str) - 2 character CoastWatch region code. The CoastWatch program assigns the region code, but because the file metadata does not include it, the tool must infer it using hard-coded rules that examine other metadata such as the image coordinates. The tool recognizes the following regions, taken from the NOAA KLM User's Guide Section 9.5 amended November 7, 2005:

    aa - Alaska Sitka
    ax - Alaska South
    gb - Great Barrier Reef
    ay - Alaska West
    az - Alaska North
    ce - Caribbean East
    cw - Caribbean West
    er - East Coast North
    gr - Great Lakes
    hr - Hawaii
    mr - Gulf of Mexico
    sb - East Coast Bermuda
    sl - Great Salt Lake
    sr - East Coast South
    wa - West Coast Acapulco
    wj - West Coast Baja
    wn - West Coast North
    ws - West Coast South
    uk - the CoastWatch region is unknown (the image coordinates were not recognized by this tool)
  • 'Satellite' (str) - satellite that took the image. At the time of this writing, the CoastWatch program was known to have published data from the following satellites:

    noaa-12
    noaa-14
    noaa-15
    noaa-16
    noaa-17
    noaa-18
  • 'Sensor' (str) - sensor that took the image (e.g. "avhrr").

  • 'Image datetime' (datetime.datetime) - date and time the image was taken, in UTC.

  • 'Image unix time' (int) - date and time the image was taken, in "UNIX time" format. UNIX times are 32-bit signed integers that are the number of seconds since 1970-01-01 00:00:00 UTC. The UNIX time values produced by this tool do not include leap seconds; this tool assumes that a regular year is 31536000 seconds and a leap year is 31622400 seconds.

  • 'Scene time' (str) - the CoastWatch "scene" time for image. At the time of this writing, the CoastWatch program was known to have published data with the following scene times:

    day
    day/night
    night
  • 'Projection type' (str) - projection type for the image (e.g. "mapped").

  • 'Map projection' (str) - map projection for the image (e.g. "Mercator").

  • 'Map affine a' (float) - the a coefficient for the map affine for the file, in meters.

  • 'Map affine b' (float) - the b coefficient for the map affine for the file, in meters.

  • 'Map affine c' (float) - the c coefficient for the map affine for the file, in meters.

  • 'Map affine d' (float) - the d coefficient for the map affine for the file, in meters.

  • 'Map affine e' (float) - the e coefficient for the map affine for the file, in meters.

  • Map affine f' (float) - the f coefficient for the map affine for the file, in meters.

  • 'Spheroid' (str) - spheroid used for the image (e.g. "WGS 84").

  • 'Origin' (str) - organization that produced the file (e.g. "USDOC/NOAA/NESDIS CoastWatch").

  • Format' (str) - format version of the file (e.g. "CoastWatch HDF version 3.4").

  • 'Pixel width' (float) - the width of each pixel, in km. This should not be used as the raster cell size. Please see the CoastWatch documentation for more information.

  • 'Pixel height' (float) - the height of each pixel, in km. This should not be used as the raster cell size. Please see the CoastWatch documentation for more information.

  • 'Total width' (float) - the width of the image, in km. Please see the CoastWatch documentation for more information.

  • 'Total height' (float) - the height of the image, in km. Please see the CoastWatch documentation for more information.

  • 'Center y' (float) - the latitude, in decimal degrees, of the center of the image.

  • 'Center x' (float) - the longitude, in decimal degrees, of the center of the image.

  • 'Upper-left y' (float) - the latitude, in decimal degrees, of the upper left corner of the image.

  • 'Upper-left x' (float) - the longitude, in decimal degrees, of the upper left corner of the image.

  • 'Upper-right y' (float) - the latitude, in decimal degrees, of the upper right corner of the image.

  • 'Upper-right x' (float) - the longitude, in decimal degrees, of the upper right corner of the image.

  • 'Lower-left y' (float) - the latitude, in decimal degrees, of the lower left corner of the image.

  • 'Lower-left x' (float) - the longitude, in decimal degrees, of the lower left corner of the image.

  • 'Lower-right y' (float) - the latitude, in decimal degrees, of the lower right corner of the image.

  • 'Lower-right x' (float) - the longitude, in decimal degrees, of the lower right corner of the image.

{modulesToImport;modulesToImport...}

Python modules to import prior to evaluating the expression. If you need to access Python functions or classes that are provided by a module rather than being built-in to the interpreter, list the module here. For example, to be able to use the datetime class in your expression, list the datetime module here. In your expression, you must refer to the class using its fully-qualified name, datetime.datetime.

{skipExisting}

If True, conversion will be skipped for output files that already exist.

Scripting syntax

CoastWatchAVHRRFindAndCreateMasksAsBinaryRasters_GeoEco (inputDirectory, outputDirectory, wildcard, searchTree, minSize, maxSize, minDateCreated, maxDateCreated, minDateModified, maxDateModified, variables, regionCodes, satellites, minImageDate, maxImageDate, minDayOfYear, maxDayOfYear, sceneTimes, maskMissingData, maskLand, cloudVariable, sunZenithVariable, useDayCloudTest1, useDayCloudTest2, useDayCloudTest3, useDayCloudTest4, useDayCloudTest5, useDayCloudTest6, useDayCloudTest7, maskWhenDayCloudMaskExceeds, useNightCloudTest1, useNightCloudTest2, useNightCloudTest3, useNightCloudTest4, useNightCloudTest5, useNightCloudTest6, useNightCloudTest7, maskWhenNightCloudMaskExceeds, minCloudyNeighbors, outputFilePythonExpression, modulesToImport, skipExisting)

Parameters
ExpressionExplanation
Directory to search (Required)

Directory to search.

Output directory (Required)

Directory to receive the binary rasters.

Wildcard expression (Optional)

UNIX-style "glob" wildcard expression specifying the CoastWatch files to find.

The glob syntax supports the following patterns:

  • ? - matches any single character

  • * - matches zero or more characters

  • [seq] - matches any single character in seq

  • [!seq] - matches any single character not in seq

seq is one or more characters, such as abc. You may specify character ranges using a dash. For example, a-z0-9 specifies all of the characters in the English alphabet and the decimal digits 0 through 9.

You may specify subdirectories in the glob expression. For example, the expression CoastWatch*/2006* will find all files beginning with 2006 that are contained in directories beginning with CoastWatch.

The operating system determines whether / or \ is used as the directory separator. On Windows, both will work. On most flavors of UNIX, / must be used.

The operating system determines if matching is case sensitive. On Windows, matching is case-insensitive. On most flavors of UNIX, matching is case-sensitive.

It is ok if your expression matches files that are not CoastWatch files. For example, the expression *.hdf might match some non-CoastWatch HDF files. These files will be ignored.

Search directory tree (Optional)

If True, subdirectories will be searched.

Minimum size (Optional)

Minimum size, in bytes, of files to find. If provided, only files that are this size or larger will be found.

Maximum size (Optional)

Maximum size, in bytes, of files to find. If provided, only files that are this size or smaller will be found.

Minimum creation date (Optional)

Minimum creation date, in the local time zone, of the files to find, as reported by the operating system. If provided, only files that were created on or after this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

Maximum creation date (Optional)

Maximum creation date, in the local time zone, of the files to find, as reported by the operating system. If provided, only files that were created on or before this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

Minimum modification date (Optional)

Minimum modification date, in the local time zone, of the files to find, as reported by the operating system. If provided, only files that were modified on or after this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

Maximum modification date (Optional)

Maximum modification date, in the local time zone, of the files to find, as reported by the operating system. If provided, only files that were modified on or before this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

CoastWatch variables (Optional)

CoastWatch variables that the files must contain. Each variable corresponds to an image in the file. If any variables are provided, only the files that contain one or more of those variables will be found. If none are provided, all files will be found.

At the time of this writing, the CoastWatch program was known to have published files with these variables:

avhrr_ch1
avhrr_ch2
avhrr_ch3
avhrr_ch3a
avhrr_ch4
avhrr_ch5
cloud
cloudx
graphics
sst
rel_azimuth
sat_zenith
sun_zenith

Please see the CoastWatch documentation for more information about these variables. In general, most users are interested in the "sst" variable, which is the estimated sea surface temperature, and the "cloud" variable, which is a bit mask indicating which cloud tests failed for that pixel. A value of 0 for the cloud variable indicates that all cloud tests passed and CoastWatch has high confidence in the validity of the SST value for that pixel.

CoastWatch region codes (Optional)

CoastWatch region codes for the files to find. If any regions are provided, only files matching those regions will be found. If none are provided, all files will be found.

This function finds the region codes by examining the CoastWatch metadata inside the files, not be examining the file name. Thus it will work properly with older CoastWatch files that do not include the region in the file name.

Because the CoastWatch metadata does not include the region code explicitly, it must be inferred from the other image metadata. The current implementation of this function recognizes the following regions:

aa - Alaska Sitka
ax - Alaska South
gb - Great Barrier Reef
ay - Alaska West
az - Alaska North
ce - Caribbean East
cw - Caribbean West
er - East Coast North
gr - Great Lakes
hr - Hawaii
mr - Gulf of Mexico
sb - East Coast Bermuda
sl - Great Salt Lake
sr - East Coast South
wa - West Coast Acapulco
wj - West Coast Baja
wn - West Coast North
ws - West Coast South
uk - the CoastWatch region is unknown (the image coordinates were not recognized by this tool)

These regions were taken from the NOAA KLM User's Guide Section 9.5 amended November 7, 2005. If a file is not for one of these regions, it will only be found if you do not specify any region codes. If you would like more region codes added to this tool, please contact the author.

Satellites (Optional)

Satellites for the files to find. If any satellites are provided, only files that contain data from these satellites will be found. If none are provided, all files will be found.

At the time of this writing, the CoastWatch program was known to have published data from the following satellites:

NOAA-12
NOAA-14
NOAA-15
NOAA-16
NOAA-17
NOAA-18
Minimum image date (Optional)

Minimum image date, in UTC, for the files to find. If provided, only files that contain images taken on or after this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

Maximum image date (Optional)

Maximum image date, in UTC, for the files to find. If provided, only files that contain images taken on or before this date will be found. You may provide a date with or without a time. If you do not provide a time, it is assumed to be midnight.

Minimum image day of the year (Optional)

Minimum image day of the year, in UTC, for the for the files to find. If provided, only files that contain images taken on or after this day of the year will be found. The first day of the year is always 1, and the last day of the year is 365 during non-leap years and 366 during leap years.

Maximum image day of the year (Optional)

Maximum image day of the year, in UTC, for the for the files to find. If provided, only files that contain images taken on or before this day of the year will be found. The first day of the year is always 1, and the last day of the year is 365 during non-leap years and 366 during leap years.

Scene times (Optional)

CoastWatch "scene times" for the files to find. If provided, only files that contain images with these scene times will be found. If none are provided, all files will be found.

At the time of this writing, the CoastWatch program was known to have published data with the following scene times:

day
day/night
night

The scene time affects which cloud tests are used to generate the cloud mask image, among other things. Please consult the CoastWatch documentation for more information.

Mask missing data (Optional)

If True, pixels that are missing data will be masked.

The most common cause for missing data is the satellite swath not completely covering the region of interest. The pixels that could not be seen by the sensor when the satellite flew over will be marked as missing data.

Mask land (Optional)

If True, pixels that are classified as land by the CoastWatch graphics variable will be masked.

The graphics variable is obtained by invoking the CoastWatch Utilities cwgraphics program on the input file. I have observed that this program does not always produce a land mask that is 100% identical to the graphics variable contained by the input file. For example, when I executed cwgraphics on 2005_108_1841_n16_er.hdf, I noticed that several pixels, mostly near the edges of the images, differed from those obtained by viewing the graphics variable in 2005_108_1841_n16_er.hdf using the cdat program.

I do not know the reason for this discrepancy. My theory is that the cwgraphics program does not read the graphics variable from the input file at all. Rather, it only reads the geographic extent and then produces a new land mask from its database in the installation directory of the CoastWatch Utilities. Newer versions of the CoastWatch Utilities may include updated land masks that differ from those used by CoastWatch in the past. But this is only a theory. In any case, the discrepancy seems to be quite insignificant and should not affect most users.

Cloud mask variable (Optional)

Name of the CoastWatch variable to extract from the cloud mask file and use as the cloud mask (e.g. "cloud").

The current implementation of this tool was designed to operate on the 8-bit CLAVR cloud mask represented by the "cloud" variable in CoastWatch files. It was not designed to operate on the "cloudx" variable, which is a new experimental CLAVR-x cloud mask available in recent CoastWatch HDF files. Nonetheless, if you wish to operate on the cloudx variable, you can specify it instead of cloud, and pick mask options appropriate for it instead.

Solar zenith variable (Optional)

Name of the CoastWatch variable to extract from the solar zenith file and use as the solar zenith image (e.g. "sun_zenith").

Use daytime Reflective Gross Cloud Test (bit 1) (Optional)

If True, daytime pixels that failed the CLAVR-1 Reflective Gross Cloud Test (bit 1 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, the same CLAVR-1 test is used for both CWF and HDF files, but for HDF files, the CLAVR-x thresholds are used instead of than of the CLAVR-1 thresholds.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use daytime Reflectance Uniformity Test (bit 2) (Optional)

If True, daytime pixels that failed the CLAVR-1 Reflectance Uniformity Test (bit 2 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, the same CLAVR-1 test is used for both CWF and HDF files, but for HDF files, the CLAVR-x thresholds are used instead of than of the CLAVR-1 thresholds.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use daytime Reflectance Ratio Cloud Test (bit 3) (Optional)

If True, daytime pixels that failed the CLAVR-1 Reflectance Ratio Cloud Test (bit 3 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, the same CLAVR-1 test is used for both CWF and HDF files, but for HDF files, the CLAVR-x thresholds are used instead of than of the CLAVR-1 thresholds.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use daytime Channel 3 Albedo Test (bit 4) (Optional)

If True, daytime pixels that failed the CLAVR-1 Channel 3 Albedo Test (bit 4 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use daytime Thermal Uniformity Test (bit 5) (Optional)

If True, daytime pixels that failed the CLAVR-1 Thermal Uniformity Test (bit 5 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use daytime Four Minus Five Test (bit 6) (Optional)

If True, daytime pixels that failed the CLAVR-1 Four Minus Five Test (bit 6 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use daytime Thermal Gross Cloud Test (bit 7) (Optional)

If True, daytime pixels that failed the CLAVR-1 Thermal Gross Cloud Test (bit 7 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Mask when daytime cloud mask exceeds value (Optional)

If a value is provided, daytime pixels with a cloud mask value greater than this value will be masked.

The CoastWatch cloud mask is a bitmask, where each bit represents the success (0) or failure (1) of a given CLAVR cloud test. Thus the cloud mask values are NOT intended to be interpreted as range, like a spectrum, where 0 represents "very clear" and 255 represents "very cloudy". Nevertheless, some users of this tool determined that for their study the best tradeoff between minimizing SST error and minimizing the number of pixels masked by clouds was obtained by masking all pixels where the cloud mask exceeded a certain value. This option was implemented specifically for those users and is not recommended for general use. If you do use this option, be sure to study many cloud mask images before selecting a value.

If a value is provided both for this parameter and for the cloud test bits specified by the previous parameters, all of these parameters will be effective. In other words, a cloudy pixel can be masked by failing a specific cloud test, or by exceeding the minimum cloud mask value, or both. .

This parameter is ignored for nighttime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter. For more information about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use nighttime Thermal Gross Cloud Test (bit 1) (Optional)

If True, nighttime pixels that failed the CLAVR-1 Thermal Gross Cloud Test (bit 1 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use nighttime Thermal Uniformity Test (bit 2) (Optional)

If True, nighttime pixels that failed the CLAVR-1 Thermal Uniformity Test (bit 2 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use nighttime Uniform Low Stratus Test (bit 3) (Optional)

If True, nighttime pixels that failed the CLAVR-1 Uniform Low Stratus Test (bit 3 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use nighttime Four Minus Five Test (bit 4) (Optional)

If True, nighttime pixels that failed the CLAVR-1 Four Minus Five Test (bit 4 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use nighttime Cirrus Test (bit 5) (Optional)

If True, nighttime pixels that failed the CLAVR-1 Cirrus Test (bit 5 of the cloud mask) will be masked. If False, this cloud test will be ignored.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use nighttime Channel 3B Albedo Test (bit 6) (Optional)

If True, nighttime pixels that failed the CLAVR-x Channel 3B Albedo Test (bit 6 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, this test was not used for CoastWatch CWF files and thus bit 6 will always be 0, indicating success, for CWF nighttime cloud mask pixels.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Use nighttime Channel 3B Albedo Uniformity Test (bit 7) (Optional)

If True, nighttime pixels that failed the CLAVR-x Channel 3B Albedo Uniformity Test (bit 7 of the cloud mask) will be masked. If False, this cloud test will be ignored.

According to CoastWatch researcher Peter Hollemans, this test was not used for CoastWatch CWF files and thus bit 7 will always be 0, indicating success, for CWF nighttime cloud mask pixels.

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter.

In CoastWatch cloud masks, bit 1 is the least significant bit, and a value of 0 for a bit indicates that the cloud test passed, while 1 indicates it failed. For more details about the cloud tests, please see the CoastWatch and CLAVR documentation.

Mask when nighttime cloud mask exceeds value (Optional)

If a value is provided, nighttime pixels with a cloud mask value greater than this value will be masked.

The CoastWatch cloud mask is a bitmask, where each bit represents the success (0) or failure (1) of a given CLAVR cloud test. Thus the cloud mask values are NOT intended to be interpreted as range, like a spectrum, where 0 represents "very clear" and 255 represents "very cloudy". Nevertheless, some users of this tool determined that for their study the best tradeoff between minimizing SST error and minimizing the number of pixels masked by clouds was obtained by masking all pixels where the cloud mask exceeded a certain value. This option was implemented specifically for those users and is not recommended for general use. If you do use this option, be sure to study many cloud mask images before selecting a value.

If a value is provided both for this parameter and for the cloud test bits specified by the previous parameters, all of these parameters will be effective. In other words, a cloudy pixel can be masked by failing a specific cloud test, or by exceeding the minimum cloud mask value, or both. .

This parameter is ignored for daytime pixels. For a discussion of how pixels are classified as daytime or nighttime, please see the documentation for the cloud mask file parameter. For more information about the cloud tests, please see the CoastWatch and CLAVR documentation.

Minimum number of cloudy neighbors (Optional)

Minimum number of neighbors that a cloudy pixel must have in order for that pixel to be masked.

You can use this option to ignore isolated cloudy pixels that are not clumped together. For example, if you specify the value 1, cloudy pixels will be ignored and not used in the masking process unless at least one of their eight neighbors is also cloudy.

If a neighbor is not cloudy but it is masked for some other reason (e.g. it is land), it does not count as being cloudy.

This option is ignored when cloud masking is not performed.

Output binary raster Python expression (Optional)

Python expression used to calculate the absolute path of an output file. The expression may be any Python statement appropriate for passing to the eval function and must return a Unicode string. The expression may reference the following variables:

  • directoryToSearch - the value provided for the directory to search parameter

  • outputDirectory - the value provided for the output directory parameter

  • inputFile - the absolute path to the input CoastWatch file

  • metadata - a dictionary of CoastWatch metadata about the file (see below)

The default expression:

os.path.join(outputDirectory, metadata['Region code'], metadata['Satellite'], metadata['Image datetime'].strftime('%Y'), metadata['Image datetime'].strftime('%Y%j%H%M_mask') + '.bin')

stores the file in the output directory in a subdirectory structure based on the CoastWatch region code, satellite and so on. For example, if the input file was 2007_066_0459_n17_wn.hdf and the output directory was C:CoastWatch, the output file path produced by the expression above would be:

C:\CoastWatch\wn\noaa-17\2007\20070660459_mask.bin

The following keys are available in the metadata dictionary. The Python data type of the value for the key appears in parentheses. Remember that if the value is not a string, you must convert it to one before you can use it in Python's os.path function:

  • 'Region code' (str) - 2 character CoastWatch region code. The CoastWatch program assigns the region code, but because the file metadata does not include it, the tool must infer it using hard-coded rules that examine other metadata such as the image coordinates. The tool recognizes the following regions, taken from the NOAA KLM User's Guide Section 9.5 amended November 7, 2005:

    aa - Alaska Sitka
    ax - Alaska South
    gb - Great Barrier Reef
    ay - Alaska West
    az - Alaska North
    ce - Caribbean East
    cw - Caribbean West
    er - East Coast North
    gr - Great Lakes
    hr - Hawaii
    mr - Gulf of Mexico
    sb - East Coast Bermuda
    sl - Great Salt Lake
    sr - East Coast South
    wa - West Coast Acapulco
    wj - West Coast Baja
    wn - West Coast North
    ws - West Coast South
    uk - the CoastWatch region is unknown (the image coordinates were not recognized by this tool)
  • 'Satellite' (str) - satellite that took the image. At the time of this writing, the CoastWatch program was known to have published data from the following satellites:

    noaa-12
    noaa-14
    noaa-15
    noaa-16
    noaa-17
    noaa-18
  • 'Sensor' (str) - sensor that took the image (e.g. "avhrr").

  • 'Image datetime' (datetime.datetime) - date and time the image was taken, in UTC.

  • 'Image unix time' (int) - date and time the image was taken, in "UNIX time" format. UNIX times are 32-bit signed integers that are the number of seconds since 1970-01-01 00:00:00 UTC. The UNIX time values produced by this tool do not include leap seconds; this tool assumes that a regular year is 31536000 seconds and a leap year is 31622400 seconds.

  • 'Scene time' (str) - the CoastWatch "scene" time for image. At the time of this writing, the CoastWatch program was known to have published data with the following scene times:

    day
    day/night
    night
  • 'Projection type' (str) - projection type for the image (e.g. "mapped").

  • 'Map projection' (str) - map projection for the image (e.g. "Mercator").

  • 'Map affine a' (float) - the a coefficient for the map affine for the file, in meters.

  • 'Map affine b' (float) - the b coefficient for the map affine for the file, in meters.

  • 'Map affine c' (float) - the c coefficient for the map affine for the file, in meters.

  • 'Map affine d' (float) - the d coefficient for the map affine for the file, in meters.

  • 'Map affine e' (float) - the e coefficient for the map affine for the file, in meters.

  • Map affine f' (float) - the f coefficient for the map affine for the file, in meters.

  • 'Spheroid' (str) - spheroid used for the image (e.g. "WGS 84").

  • 'Origin' (str) - organization that produced the file (e.g. "USDOC/NOAA/NESDIS CoastWatch").

  • Format' (str) - format version of the file (e.g. "CoastWatch HDF version 3.4").

  • 'Pixel width' (float) - the width of each pixel, in km. This should not be used as the raster cell size. Please see the CoastWatch documentation for more information.

  • 'Pixel height' (float) - the height of each pixel, in km. This should not be used as the raster cell size. Please see the CoastWatch documentation for more information.

  • 'Total width' (float) - the width of the image, in km. Please see the CoastWatch documentation for more information.

  • 'Total height' (float) - the height of the image, in km. Please see the CoastWatch documentation for more information.

  • 'Center y' (float) - the latitude, in decimal degrees, of the center of the image.

  • 'Center x' (float) - the longitude, in decimal degrees, of the center of the image.

  • 'Upper-left y' (float) - the latitude, in decimal degrees, of the upper left corner of the image.

  • 'Upper-left x' (float) - the longitude, in decimal degrees, of the upper left corner of the image.

  • 'Upper-right y' (float) - the latitude, in decimal degrees, of the upper right corner of the image.

  • 'Upper-right x' (float) - the longitude, in decimal degrees, of the upper right corner of the image.

  • 'Lower-left y' (float) - the latitude, in decimal degrees, of the lower left corner of the image.

  • 'Lower-left x' (float) - the longitude, in decimal degrees, of the lower left corner of the image.

  • 'Lower-right y' (float) - the latitude, in decimal degrees, of the lower right corner of the image.

  • 'Lower-right x' (float) - the longitude, in decimal degrees, of the lower right corner of the image.

Python modules to import (Optional)

Python modules to import prior to evaluating the expression. If you need to access Python functions or classes that are provided by a module rather than being built-in to the interpreter, list the module here. For example, to be able to use the datetime class in your expression, list the datetime module here. In your expression, you must refer to the class using its fully-qualified name, datetime.datetime.

Skip existing outputs (Optional)

If True, conversion will be skipped for output files that already exist.