Welcome to the Harris Geospatial product documentation center. Here you will find reference guides, help documents, and product libraries.


Harris Geospatial / Docs Center / Using ENVI / Atmospheric Corrections / Fast Line-of-sight Atmospheric Analysis of Hypercubes (FLAASH)

Fast Line-of-sight Atmospheric Analysis of Hypercubes (FLAASH)

Fast Line-of-sight Atmospheric Analysis of Hypercubes (FLAASH®)

Preprocessing AVIRIS Data Tutorial (demonstrates the use of FLAASH®)

Example: Multispectral Sensors and FLAASH

FLAASH is a first-principles atmospheric correction tool that corrects wavelengths in the visible through near-infrared and shortwave infrared regions, up to 3 µm. (For thermal regions, use the Toolbox option Radiometric Correction > Thermal Atmospheric Correction.) FLAASH works with most hyperspectral and multispectral sensors. Water vapor and aerosol retrieval are only possible when the image contains bands in appropriate wavelength positions. FLAASH can correct images collected in either vertical (nadir) or slant-viewing geometries. See Background on FLAASH for a scientific discussion of the methods used by FLAASH.

See the following sections:

Also see FLAASH Advanced Options.

When you are finished setting all of the options in the FLAASH Atmospheric Correction Module Input Parameters dialog, click Apply to run FLAASH.

Before You Begin


  • The input image for FLAASH must be a radiance image in band-interleaved-by-line (BIL) or band-interleaved-by-pixel (BIP) format.
  • The input image can be floating-point, long integer (4-byte signed), or integer (2-byte signed or unsigned).
  • If your image does not meet the first two criteria, use the Radiometric Calibration tool to open the image. Click the Apply FLAASH Settings button, then save the image. This creates a radiance image suitable for FLAASH with the following properties: BIL interleave, floating-point data type, and a scale factor of 0.1. This scales the data in units of µW/(cm2 * sr * nm), which FLAASH expects for input.
  • When selecting an input image in FLAASH, you can also specify a scale factor to divide into the radiance data to achieve the expected input units. See Radiance and Scale Factors Background.
  • Be sure to exclude thermal bands from processing (for example, in Landsat-7 ETM+ data).
  • To perform water retrieval, the image bands must span at least one of the following ranges at 15 nm spectral resolution or better: 1050-1210 nm, 770-870 nm, and 870-1020 nm. Additional wavelength coverage is required for aerosol retrieval.
  • For hyperspectral sensors, wavelengths must be available in the ENVI header file.
  • Known multispectral sensors require only wavelength values, while unknown (custom) multispectral sensors also require spectral response filter functions. If you open Landsat or GeoEye data from their metadata files, you do not need to specify wavelengths or FWHM values.
  • If the image header file does not contain wavelengths, ENVI prompts you to read wavelength values from an ASCII file if one is available. The ASCII file should contain data in columns, with wavelengths in one column. Be sure to correctly specify the wavelength column and units when reading the ASCII file.
  • FLAASH assumes a Gaussian response when FWHM values are not available.
  • Because ASTER Level 1A bands are not coregistered, you cannot directly input ASTER Level 1A VNIR or SWIR datasets into FLAASH. A recommended approach is to coregister VNIR and SWIR bands, then use Layer Stacking to combine them into a single dataset to input into FLAASH.

Start FLAASH and Select Files


  1. From the Toolbox, select Radiometric Correction > Atmospheric Correction Module > FLAASH Atmospheric Correction. The FLAASH Atmospheric Correction Module Input Parameters dialog appears.
  2. Click Input Radiance Image. The FLAASH Input File dialog appears.
  3. Select an input image and perform optional spatial subsetting, then click OK. If you select a spatial subset, you can modify the image extents further in the FLAASH Advanced Settings dialog if needed. The Radiance Scale Factors dialog appears.
  4. If you used the Radiometric Calibration tool to create a radiance image for input into FLAASH, leave the default value of 1 for the Single Scale Factor field of the Radiance Scale Factors dialog. ENVI has already applied the correct scale factor needed to get the image into units of µW/(cm2 * sr * nm). Otherwise, see Radiance and Scale Factors Background for tips on determining the correct scale factors to enter in in FLAASH.
  5. The FLAASH Parameters dialog is populated with default filenames and directories for output files generated by FLAASH. You can change these by clicking the appropriate buttons. The Output Directory for FLAASH Files is where all files except the reflectance file are written.
  6. The following is a summary of output files that FLAASH will create upon clicking Apply in the FLAASH Parameters dialog:

    • Surface reflectance: This is the atmospherically corrected reflectance image. Any bad bands are set according to the bad bands defined for the input radiance image, as well as those for which the atmospheric transmission is too low for an accurate reflectance calculation.
    • Water vapor: This output option is only available with hyperspectral input imagery. FLAASH creates an image of column water vapor in units of (atm • cm). The name water.dat is appended to your specified root name.
    • Cloud map: This output option is only available with hyperspectral input imagery. FLAASH creates a cloud map classification image with the name cloudmask.dat appended to your specified root name. The cloud determinations are used during FLAASH processing to refine the estimate of re in equation (1) in Background on FLAASH. This quantity defines the magnitude of the adjacency effect.
    • Log file: This is an ASCII file containing a detailed description of the FLAASH processing. The name journal.txt is appended to your specified root name.
    • FLAASH template file (optional): If you set the Automatically Save Template File toggle button to Yes in the FLAASH Advanced Settings dialog, a template file is automatically saved into the FLAASH output directory when you run FLAASH. The name template.txt is appended to your specified root name.

Select Scene and Sensor Options


Scene and sensor details give FLAASH an approximation of the sun's position relative to the surface.

  1. If the input scene has map information, the Lat and Lon fields will automatically populate with the scene center coordinates. If no map information is available, enter the latitude and longitude of the scene center, respectively, using negative values for Southern and Western Hemispheres. To toggle between decimal degrees and degrees/minutes/seconds, click DD <-> DMS.
  2. Click Sensor Type and select the name of the sensor that collected the input radiance image. The input parameters dialog changes slightly when switching between Multispectral and Hyperspectral sensor types. For spaceborne sensors, a default Sensor Altitude (km) is automatically set according to the sensor type.
  3. Note: For multispectral sensors, the sensor type is used to automatically assign the correct spectral response functions for the image bands. FLAASH uses ENVI’s filter functions for the named multispectral sensors. These filter functions are located in the ENVIxx\resource\filterfuncs directory of the ENVI installation.

  4. In the Sensor Altitude (km) field, enter the altitude of the sensor when the image was collected, in kilometers above sea level. For spaceborne sensors, the sensor altitude is automatically set when you select the sensor type.
  5. In the Ground Elevation (km) field, enter the average scene elevation, in kilometers above sea level.
  6. In the Pixel Size (m) field, enter the image pixel size in meters. The pixel size value is used for the adjacency correction. An approximate value is adequate. For non-nadir looking sensors (or any sensor with non-square pixels) enter the largest pixel dimension.
  7. Click the Flight Date drop-down lists, select the month and date the scene was collected. Use the arrow increment buttons to select a year, or enter the four-digit year in the text box.
  8. In the Flight Time GMT (HH:MM:SS) fields, enter the Greenwich Mean Time when the scene was collected.

Select Atmospheric Model Options


Use the Atmospheric Model drop-down list to choose one of the standard MODTRAN® model atmospheres.

For the best results, select a model whose standard column water vapor amount is similar to, or somewhat greater than, that expected for the scene. The standard column water vapor amounts (from sea level to space) for each model atmosphere are given in the following table.

Model Atmosphere

Water Vapor
(std atm-cm)

Water Vapor

(g/cm2)

Surface Air Temperature

Sub-Arctic Winter (SAW)

518

0.42

-16° C (3° F)

Mid-Latitude Winter (MLW)

1060

0.85

-1° C (30° F)

U.S. Standard (US)

1762

1.42

15° C (59° F)

Sub-Arctic Summer (SAS)

2589

2.08

14° C (57° F)

Mid-Latitude Summer (MLS)

3636

2.92

21° C (70° F)

Tropical (T)

5119

4.11

27° C (80° F)

If no water vapor information is available, select an atmosphere according to the known or expected surface air temperature, which tends to correlate with water vapor. If the temperature is unknown, select an atmosphere from the following table, which is based on a seasonal-latitude surface temperature model.

Latitude (°N)

Jan

March

May

July

Sept

Nov

80

SAW

SAW

SAW

MLW

MLW

SAW

70

SAW

SAW

MLW

MLW

MLW

SAW

60

MLW

MLW

MLW

SAS

SAS

MLW

50

MLW

MLW

SAS

SAS

SAS

SAS

40

SAS

SAS

SAS

MLS

MLS

SAS

30

MLS

MLS

MLS

T

T

MLS

20

T

T

T

T

T

T

10

T

T

T

T

T

T

0

T

T

T

T

T

T

-10

T

T

T

T

T

T

-20

T

T

T

MLS

MLS

T

-30

MLS

MLS

MLS

MLS

MLS

MLS

-40

SAS

SAS

SAS

SAS

SAS

SAS

-50

SAS

SAS

SAS

MLW

MLW

SAS

-60

MLW

MLW

MLW

MLW

MLW

MLW

-70

MLW

MLW

MLW

MLW

MLW

MLW

-80

MLW

MLW

MLW

MLW

MLW

MLW

Water Vapor Units

The “atm-cm” unit is specific to the atmospheric science community, which typically uses one of two units to measure the total amount of a gas in the atmospheric column from the ground to the top of the atmosphere (where 200 to 300 km is generally a good number for the location of the top).

When you use units of “atm-cm,” think of it as bringing all the water molecules down to a thin layer of pure water vapor at the Earth's surface, at 1 atm of pressure and 0° C. That layer has a thickness measured in centimeters, so the water column is described in atmosphere-centimeters. If the pressure were doubled, then the thickness would be halved. Thus, the units of atm-cm (not just cm) are used to describe the amount of gas in the atmospheric column to emphasize that the height and pressure are interdependent.

Obviously it is not physically possible to bring these molecules into such a condensed layer. All of the molecules in the layer would condense into a liquid under these conditions, even if they could be gathered in such a way. The layer is imaginary.

The second set of units, gm/cm2, is more easily understood as the mass of water molecules in the atmospheric column over each cm2 of ground surface. Since liquid water has a 1 gm/cm2 density, this value is numerically equal to the number of centimeters of water on the ground if all the atmospheric water rained out at once.

Select Water Retrieval Options


To solve the radiative transfer equations that allow apparent surface reflectance to be computed, the column water vapor amount for each pixel in the image must be determined. FLAASH includes a method for retrieving the water amount for each pixel. This technique produces a more accurate correction than using a constant water amount for the entire scene. To use this water retrieval method, the image must have bands that span at least one of the following ranges at a spectral resolution of 15 nm or better:

  • 1050-1210 nm (for the 1135 nm water feature)
  • 870-1020 nm (for the 940 nm water feature)
  • 770-870 nm (for the 820 nm water feature)

For most of the multispectral sensor types, the Water Retrieval setting is No because these sensors do not have the appropriate bands to perform the retrieval.

The Water Retrieval options are as follows:

  • Yes: Perform water retrieval. From the Water Absorption Feature drop-down list, select the water feature you wish to use. The 1135 nm feature is recommended if the appropriate bands are available. If you select 1135 nm or 940 nm, and the feature is saturated due to an extremely wet atmosphere, then the 820 nm feature is automatically used in its place if bands spanning this region are available.

Tip: When performing a water retrieval on multispectral image data, use the Multispectral Settings dialog to manually set the water bands.

  • No: Use a constant column water vapor amount for all pixels in the image. In this case, the column water vapor amount is determined according to the standard column water vapor amount for the selected Atmospheric Model, multiplied by an optional Water Column Multiplier. Set the Water Column Multiplier value accordingly.

Select Aerosol Options


Click the Aerosol Model drop-down list and select one of the standard MODTRAN aerosol/haze types.

Note: The choice of model is not critical if the visibility is high (for example, greater than 40 km).

The model choices are as follows:

  • Rural: Represents aerosols in areas not strongly affected by urban or industrial sources. The particle sizes are a blend of two distributions, one large and one small.
  • Urban: A mixture of 80% rural aerosol with 20% soot-like aerosols, appropriate for high-density urban/industrial areas.
  • Maritime: Represents the boundary layer over oceans, or continents under a prevailing wind from the ocean. It is composed of two components, one from sea spray and another from rural continental aerosol (that omits the largest particles).
  • Tropospheric: Applies to calm, clear (visibility greater than 40 km) conditions over land and consists of the small-particle component of the rural model.

For more details on MODTRAN aerosol models, see the following reference:

Abreu, L. W., and G. P. Anderson, Eds. 1996. The MODTRAN 2/3 report and LOWTRAN 7 model. Phillips Laboratory, Geophysics Directorate, PL/GPOS, Hanscom AFB, MA. Contract F19628-91-C-0132.

Aerosol Retrieval

FLAASH includes a method for retrieving the aerosol amount and estimating a scene average visibility using a dark pixel reflectance ratio method based on work by Kaufman et al. (1997). The dark-land pixel-retrieval method requires the presence of sensor channels around 660 nm and 2100 nm. A dark-land pixel is defined to be one with a 2100 nm reflectance of 0.1 or less and a 660:2100 reflectance ratio of approximately 0.45. If the input image contains bands near 800 nm and 420 nm, an additional check is performed, requiring the 800:420 radiance ratio to be 1 or less, which eliminates pixels likely to be shadows and water bodies.

Click the Aerosol Retrieval drop-down list and select an option:

  • None: When you select this option, the value in the Initial Visibility (km) field is used for the aerosol model (described in the following section).
  • 2-Band (K-T): Use the aerosol retrieval method. If no suitable dark pixels are found, then the value in the Initial Visibility field is used.
  • 2-Band Over Water: Use this setting for maritime scenes.

When performing an aerosol retrieval on multispectral image data, use the Multispectral Settings dialog to manually set the aerosol bands, or no aerosols will be retrieved.

You should not retrieve aerosols with ASTER data. While ASTER bands cover the region required for the dark-land pixel-retrieval method, the bandwidth for Band 2 is fairly wide (660 nm) and will likely include the vegetation red edge, which could significantly bias the visibility estimate.

Select an Initial Visibility Value


In the Initial Visibility field, enter an estimate of the scene visibility in kilometers. The initial visibility value is assumed for atmospheric correction if the aerosol is not being retrieved.

The following table gives the approximate scene visibility values based on weather conditions:

Weather Condition

Scene Visibility

Clear

40 to 100 km

Moderate Haze

20 to 30 km

Thick Haze

15 km or less

The visibility, V is defined as the 550 nm meteorological range and is related to extinction coefficient β (base e) by the equation V = 3.912/β. The extinction coefficient β is defined as the horizontal optical depth per km. A related value, the aerosol optical depth (AOD) is measured vertically (from the ground to space). To convert the AOD to β, divide AOD by the effective aerosol thickness layer, which typically has a value of around 2 km, but varies with the visibility, elevation, and other factors.

Note: Enter an Initial Visibility (tm) value even if you have set the Aerosol Retrieval parameter to 2-Band (K-T), as FLAASH uses the Initial Visibility (tm) value if the aerosol cannot be retrieved.

Apply Spectral Polishing


Spectral polishing is a technique that reduces spectral artifacts in hyperspectral data. See Background on FLAASH for details on how spectral polishing is applied.

  1. Click the Spectral Polishing toggle button to select one of the following options:
    • Yes: Spectrally polish the reflectance image.
    • No: Output the unaltered modeled reflectance.
  2. In the Width (number of bands) field, enter the width of the smoothing window to be used in the FLAASH spectral polishing algorithm. A larger number generates more smoothing. A value of 9 is recommended for typical 10 nm-resolution hyperspectral sensors (such as AVIRIS). A value of 2 provides minimal smoothing but removes odd-even spectral band imbalances. Odd polishing widths are slightly more computationally efficient.

Recalibrate Input Wavelengths


FLAASH includes a method for identifying and correcting wavelength miscalibrations. See Background on FLAASH for details.

Click the Wavelength Recalibration toggle button to select one of the following options:

  • Yes: Automatically adjust the wavelength calibration prior to computing the water retrieval.
  • No: Use the input file’s wavelengths.

AVIRIS, HYDICE, HyMap, HYPERION, CASI, and AISA sensors are automatically supported for wavelength recalibration. All other hyperspectral sensors require a spectrograph definition file.

Select Hyperspectral Options


The Hyperspectral Settings button appears at the bottom of the FLAASH Atmospheric Correction Model Input Parameters dialog when you select a hyperspectral sensor from the Sensor Type button menu. This option allows you to choose how bands are selected for water vapor and/or aerosol retrieval.

If the input data is from a named hyperspectral sensor (listed under the Sensor Type button menu), and you are not retrieving water or aerosol, you do not need to verify the hyperspectral settings before applying FLAASH.

Click Hyperspectral Settings. The Hyperspectral Settings dialog appears. Select one of the following options:

  • File: Specify a channel definitions file. Click Channel Definition File, navigate to the desired channel definitions file, and select the file.
  • Automatic Selection: FLAASH automatically selects the channel definitions. Channel definitions are automatically assigned by FLAASH based on the spectral characteristics of the data. This is the default setting and is recommended.

Hyperspectral Channel Definitions File

The channel definition file follows a simple format where each line contains one channel definition in the form:

channel_type = band_number

The valid channel_types are listed below, and must be included in the file verbatim:

water channels reference
water channels absorption
cirrus channel
KT upper channels
KT lower channels
alternate water channels absorption
alternate water channels reference

The alternate water channels are used in case the selected water channels are saturated.

The first band in the file is referred to as band number 1. If more than one band is appropriate for a channel_type, the bands should be enclosed in curly brackets {} and separated with white space. Comments can be included as long as they are preceded with a semicolon. You only need to include channel definitions for those processing steps that are being requested.

The following text is an example channel definition file for the AVIRIS sensor:

; Standard AVIRIS channels
; Channels are counted starting at 1.
water channels reference = {73 74 75 87 88 89} ; wings must be
      ; symmetric on absorption center channel
water channels absorption = {80 81 82} ; absorption band
cirrus channel = 109 ; no {} needed for single number
; optional channels. Can leave these out, but will lose some
; functionality. KT is needed for automatic visibility
; determination.
; Kaufman-Tanre method channels
KT upper channels = { 184 185 186 187 188 }
KT lower channels = { 29 30 31 32 33 34 }
alternate water channels absorption = { 49 50 } ; 0.82 micron band
alternate water channels reference = { 44 45 54 55 }

FLAASH produces a channel definition file for each processing run (both multispectral and hyperspectral). The file, named rootname_channel_definition.txt, is saved when the Output Diagnostic Files option is set to Yes in the FLAASH Advanced Settings dialog.

Select Multispectral Options


The Multispectral Settings button appears at the bottom of the FLAASH Atmospheric Correction Model Input Parameters dialog when you select a multispectral sensor from the Sensor Type button menu. Use the Multispectral Settings dialog to choose specific bands for water and aerosol retrieval. You do not need to change any Multispectal Settings if the input data is from a named multispectral sensor and you are not performing water or aerosol retrieval.

  1. Choose an option to Select Channel Definitions by. Channel definitions are used to assign bands for use in water and aerosol retrieval.
    • File: Specify a custom channel definition file. Click Channel Definition File, navigate to the desired channel definition file, and select the file. FLAASH selects default bands according to pre-defined wavelength ranges (defined below). Otherwise, if you restore a FLAASH template file before opening the Multispectral Settings dialog, then the channels are defined by the information from the template. If bands within the pre-defined ranges are not available, then the channel is left undefined.
    • GUI (default): Interactively select the channels (bands). The Water Retrieval and Kaufman-Tanre Aerosol Retrieval tabs appear.
  2. If you toggled the Water Retrieval option to Yes in the FLAASH Parameters dialog, the options under the Water Retrieval tab are enabled. Most multispectral sensors do not have the appropriate bands to perform an accurate water retrieval, so you typically do not need to change these settings. However, you can experiment with the values in the table below if the sensor has the appropriate wavelengths.
  3. In the Kaufman-Tanre Aerosol Retrieval tab, set the Maximum Upper Channel Reflectance and the Reflectance Ratio values. These settings identify dark pixels used for the visibility estimate. Recommended values are assigned automatically by choosing one of the options under the Defaults drop-down list. Here are some further tips for setting these values:
    • Only define channels for the processing that is being requested. For example, if you are requesting an aerosol retrieval but not water retrieval, then you can leave the water channels undefined while defining both the KT Upper and KT Lower channels.
    • If you are using the Over-Water Retrieval default settings, the KT Upper and Lower bands are reversed. This is done by design. Applying a maximum reflectance threshold to the 880 nm band tends to better discriminate clear water from turbid or wet areas, leading to more accurate visibility retrievals.
    • For more information about the aerosol retrieval method used in FLAASH, see Background on FLAASH.
    • The recommended wavelength ranges for each channel are as follows:

      Water Retrieval

      1135 nm

      absorption

      1117 - 1143 nm

      reference upper wing

      1184 - 1210 nm

      reference lower wing

      1050 - 1067 nm

      940 nm

      absorption

      935 - 955 nm

      reference upper wing

      870 - 890 nm

      reference lower wing

      995 - 1020 nm

      820 nm

      absorption

      810 - 830 nm

      reference upper wing

      850 - 870 nm

      reference lower wing

      770 - 790 nm

      Aerosol Retrieval

      2-Band (K-T)

      KT upper

      2100 - 2250 nm

      KT lower

      640 - 680 nm

      2-Band Over Water

      KT upper

      800 - 950 nm

      KT lower

      2100 - 2250 nm

      Cloud Masking

       

      cirrus clouds

      1367 - 1383 nm

  4. If you selected a known sensor from the Sensor Type drop-down list in the FLAASH Parameters dialog, the Filter Function File field is automatically populated with the correct filter function file. If the input image is from an unknown multispectral sensor type, you must define the sensor’s spectral response functions using a filter function file. Click Filter Function File to select this file. It must be inENVI spectral library format and must contain the sensor’s filter functions consecutively, one for each band in the sensor. The filter function for the sensor’s first band does not need to be the first function in the file.
  5. If you selected a custom filter function file, enter the Index to first band, which is the the index into the filter function file (beginning at zero) where the sensor’s filter functions begin.

Multispectral Channel Definitions File

The channel definitions file follows a simple format where each line contains one channel definition in the form:

channel_type = band_number

The valid channel_typevalues are listed below, and must be included in the file verbatim:

water channels reference
water channels absorption
cirrus channel
KT upper channels
KT lower channels
KT band cutoff
KT band ratio

The first band in the file is referred to as band number 1. If more than one band is appropriate for a channel_type, the bands should be enclosed in curly brackets {} and separated with white space. Comments can be included as long as they are preceded with a semicolon. You only need to include channel definitions for those processing steps that are being requested. For example, a channel definition file for applying FLAASH to Landsat TM with aerosol retrieval but a fixed water vapor amount could include the following text:

; FLAASH channel definition for Landsat TM
KT upper channels = 6
KT lower channels = 3

FLAASH produces a channel definitions file for each processing run (both multispectral and hyperspectral). The file, named rootname_channel_definition.txt, is saved when the Output Diagnostic Files option is set to Yes in the FLAASH Advanced Settings dialog.

Create a Template File


To save the FLAASH settings to a template file at any time, click Save in the lower-right corner of the FLAASH Parameters dialog.

If you set the Automatically Save Template File toggle button to Yes in the FLAASH Advanced Settings dialog, a template file is automatically saved into the FLAASH output directory when you click Apply.

To restore a FLAASH template file, click Restore. The template file stores the full path names of the input and output files. If the input file is not already opened in the current ENVI session, it is automatically opened. If any of the files or directories cannot be located on the computer where FLAASH is running, the corresponding fields in the FLAASH dialogs will not be filled in, but ENVI reads the rest of the parameters. This process allows template files to be shared between users working in different locations.



© 2017 Exelis Visual Information Solutions, Inc. |  Legal
My Account    |    Buy    |    Contact Us