CAPS AVHRR Processing
Processing AVHRR with CAPS
See also the overview document.
Cognac CAPS Installation
Too complex to document here. Build needs to be fixed. In short dependencies we have are listed below. Last 2 are symlinked to unix subdir, others to the parent.
- BWidget-1.8
- pv1.3 (parameter value language in tcl)
- tkcon-2.4
- tkimg-1.3
- libhdf-4.2
- libnetcdf-3.6.1
CAPS Quickstart on Cognac
Here is how to do batch processing.
$ module load caps # This sets $CAPS to installation location, makes path adjustments, etc]
$ cp $CAPS/.[tw]* ~ # Do this once only - sets up .wishrc, .tclshrc etc in your $HOME
$ getcapsnav.sh # Once a day before processing say. Wait for update to complete
$ caps_l1b.tcl [input hrpt] [output L1B hdf]
$ caps_quicklook.tcl [input L1B hdf]
caps_amc.tcl runs the AllModCons modular processing layer that sites on top of CAPS and NAP. It currently pulls in the following AMC config:
$ cat amc_newhdf.cfg
#depend_dbg
#need_dbg
#hrpt_file ah15_20000101_095809_eoc.asda.784889
angle_step 1
delete_hdf Y
chunk_lines 4000
hdf_attributes {{reception_station c8 "PERTH CURTIN"}}
hdf_avhrrattr
# X,Y are remapped coordinates, to subsample inputs use line_step,pixel_step
#step_x 0.05
#step_y 0.05
line_step 1
pixel_step 1
# For N < N15
#re_outputs {^(normalisedReflectance_avhrr_(1|2)|brightnessTemperature_avhrr_(3b|4|5)|Latitude|Longitude|(sun|satellite)(Azimuth|Zenith)Grid|cloud_mask)$}
# For N >= N15
re_outputs {^(normalisedReflectance_avhrr_(1|2|3a)|brightnessTemperature_avhrr_(3b|4|5)|Latitude|Longitude|(sun|satellite)(Azimuth|Zenith)Grid|cloud_mask)$}
@getAVHRR
@geonav
@angles
@calSol
@calTIR
@bt
@expandGrid
@isLand
@cloudAVHRR
# Leave this out to NOT apply cloud mask
#@mask_out_cloud
@putHDF
CAPS GUI
After installing you .wishrc startup files previously, you'll simply be able to run wish and it will start. This is extremely handy. You can read both raw HRPT and L1B HDF using this GUI.
CAPS Cloud Mask
The @cloudAVHRR uses the CLAVR algorithm by Stowe et al (1999):
An algorithm for the remote sensing of global cloud cover using multispectral radiance measurements from the Advanced Very High Resolution Radiometer (AVHRR) on board National Oceanic and Atmospheric Administration (NOAA) polar-orbiting satellites has been developed. The CLAVR-1 (Clouds from AVHRR-Phase I) algorithm classifies 2 × 2 pixel arrays from the Global Area Coverage (GAC) 4-km-resolution archived database into CLEAR, MIXED, and CLOUDY categories. The algorithm uses a sequence of multispectral contrast, spectral, and spatial signature threshold tests to perform the classification. The various tests and the derivation of their thresholds are presented. CLAVR-1 has evolved through experience in applying it to real-time NOAA-11 data, and retrospectively through the NOAA AVHRR Pathfinder Atmosphere project, where 16 years of data have been reprocessed into cloud, radiation budget, and aerosol climatologies. The classifications are evaluated regionally with image analysis, and it is concluded that the algorithm does well at classifying perfectly clear pixel arrays, except at high latitudes in their winter seasons. It also has difficulties with classifications over some desert and mountainous regions and when viewing regions of ocean specular reflection. Generally, the CLAVR-1 fractional cloud amounts, when computed using a statistically equivalent spatial coherence method, agree to within about 0.05–0.10 of image/analyst estimates on average. There is a tendency for CLAVR-1 to underestimate cloud amount when it is large and to overestimate it when small.
How to interpret the CAPS CLAVR cloud mask.
All the little acronyms and test names come from
Stowe, L.L, Davis, P.A. & McClain, E.P.
Scientific Basis and Initial Evalation of the CLAVR-1
Global Clear/Cloud Classification
Algorithm for the Advanced Very High Resolution Radiometer
J. Atmos. Oceanic Technol., vol 16, June 1999, pp 656-681.
The algorithm works in four phases depending on land/ocean and day/night.
You should not see any of the prestore or ptrestore flags in the
output as they are intermediate flags which are replaced by something
more definitive.
In general, values < 12 (ie 0-11) should be clear pixels.
Basic Starting Mask Values
ocean/night = 0
ocean/day = 1
land/night = 2
land/day = 3
Land Day
clear_land_day = 3
rclear = 8 Restored - clear
mcrgct = 100 Reflectance Gross Cloud Test (RGCT)
mrut = 101 Reflectance Uniformity Test (RUT)
mcrrct = 102 Reflectance Ratio Cloud Test (RRCT)
mcfmft = 103 Four Minus Five Test (FMFT)
mctgct = 104 Thermal Gross Cloud Test (TGCT)
mc3at = 105 Channel 3 Albedo Test (C3AT)
mtut = 106 Thermal Uniformity Test (TUT)
prestore = 110 Potentially restorable
ptrestore = 111 Potential Thermal Uniformity Restoral
Land Night
clear_land_night = 2
rcIce = 9 Restored Clear (Ice)
rcLand = 11 Restored Clear (Land)
mcrgct = 130 Reflectance Gross Cloud Test (RGCT)
mtut = 131 Thermal Uniformity Test (TUT)
mcrrct = 132 Reflectance Ratio Cloud Test (RRCT)
mcfmft = 133 Four Minus Five Test (FMFT)
mctgct = 134 Thermal Gross Cloud Test (TGCT)
mculst = 135 Uniform Low Stratus Test
prestore = 136 Potentially restorable
mccirt = 139 Nightime cirrus test
Ocean Day
clear_ocean_day = 1
rcIce = 9 Restored Clear (Ice)
rcOcean = 10 Restored Clear (Ocean)
mcrgct = 120 Reflectance Gross Cloud Test (RGCT)
mtut = 121 Thermal Uniformity Test (TUT)
mcrrct = 122 Reflectance Ratio Test (RRCT)
mcfmft = 123 Four Minus Five Test (FMFT)
mctgct = 124 Thermal Gross Cloud Test (TGCT)
mc3at = 125 Channel 3 Albedo Test (C3AT)
mrut = 126 Reflectance Uniformity Test (RUT)
prestore = 128 Potentially restorable
prestore1 = 129 Another kind of potential restoration
Ocean Night
clear_ocean_night = 0
rcIce = 9 Restored Clear (Ice)
rcOcean = 10 Restored Clear (Ocean)
mcrgct = 140 Reflectance Gross Cloud Test (RGCT)
mtut = 141 Thermal Uniformity Test (TUT)
mcrrct = 142 Reflectance Ratio Test (RRCT)
mcfmft = 143 Four Minus Five Test (FMFT)
mctgct = 144 Thermal Gross Cloud Test (TGCT)
mculst = 145 Uniform Low Stratus
mccirt = 149 Nightime cirrus test
prestore = 128 Potentially restorable
Sourced from CAPS/AMC team.
