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


  >  Docs Center  >  Using ENVI  >  Adaptive Filters

ENVI

Adaptive Filters

Adaptive Filters

Adaptive filtering uses the standard deviation of those pixels within a local box surrounding each pixel to calculate a new pixel value. Typically, the original pixel value is replaced with a new value calculated based on the surrounding valid pixels (those that satisfy the standard deviation criteria). Unlike a typical low-pass smoothing filter, the adaptive filters preserve image sharpness and detail while suppressing noise.

Note: These filters may be slow to process.

See the following sections:

Lee Filters


Use Lee filters to smooth noisy (speckled) data that have an intensity related to the image scene and that also have an additive and/or multiplicative component. Lee filtering is a standard deviation based (sigma) filter that filters data based on statistics calculated within individual filter windows. Unlike a typical low-pass smoothing filter, the Lee filter and other similar sigma filters preserve image sharpness and detail while suppressing noise. The pixel being filtered is replaced by a value calculated using the surrounding pixels.

You can also write a script to apply a Lee filter, using the ENVIAdditiveLeeAdaptiveFilterTask, ENVIMultiplicativeLeeAdaptiveFilterTask, and ENVIAdditiveMultiplicativeLeeAdaptiveFilterTask routines.

Reference

Lee, Jong-Sen, “Digital Image Enhancement and Noise Filtering by Use of Local Statistics,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol PAMI-2, No.2, March 1980, pp. 165-168.

  1. From the Toolbox, select Filter > Lee Filter.
  2. Select an input file and perform optional spatial and spectral subsetting, then click OK. The Lee Filter Parameters dialog appears.
  3. Enter the Filter Size.
  4. Select the Noise model from the drop-down list. The choices are: Additive, Multiplicative, or Both. Typically, speckle in radar images is multiplicative.
  5. To change the Additive Noise Mean and Multiplicative Noise Mean default values of 0.0 and 1.0, respectively (the typical noise means), enter values in the appropriate fields. Larger noise mean values will produce less smoothing.
  6. To change the Noise Variance value, enter a new value in the field. The Noise Variance parameter is set to the additive noise variance when Additive and Both noise models are chosen. It is set to the multiplicative noise when the Multiplicative noise model is chosen.
  7. Note: To estimate the noise variance, calculate the data variance over a flat area, such as a lake or smooth playa, in the image. For multiplicative noise in radar data, estimate the noise variance by 1/(number of looks).

Enhanced Lee Filters


Use Enhanced Lee filters to reduce speckle in radar imagery while simultaneously preserving texture information. The enhanced Lee filter is an adaptation of the Lee filter and similarly uses local statistics (coefficient of variation) within individual filter windows. Each pixel is put into one of three classes, which are treated as follows:

  • Homogeneous: The pixel value is replaced by the average of the filter window.
  • Heterogeneous: The pixel value is replaced by a weighted average.
  • Point target: The pixel value is not changed.

You can also write a script to apply an enhanced Lee filter using the ENVIEnhancedLeeAdaptiveFilterTask routine.

Reference

Lopes, A., R. Touzi, and E. Nezry, 1990. “Adaptive Speckle Filters and Scene Heterogeneity,” IEEE Transactions on Geoscience and Remote Sensing, Vol. 28, No. 6, pp. 992-1000.

  1. From the Toolbox, select Filter > Enhanced Lee Filter.
  2. Select an input file and perform optional spatial and spectral subsetting, then click OK. The Enhanced Lee Filter Parameters dialog appears.
  3. Enter the filter size in the Filter Size field.
  4. Enter a Damping Factor that inversely defines the extent of the exponential damping in the weighted average for the heterogeneous class. A larger damping factor produces less averaging.
  5. Enter values that define the class cutoffs for the homogeneous (coefficient of variation £ Cu), heterogeneous (Cu < coefficient of variation < C max), and point target (coefficient of variation ³ Cmax) classes.
  6. Estimate the cutoff values based on the number of looks (L) of the radar image.

Frost Filters


Use Frost filters to reduce speckle while preserving edges in radar images. The Frost filter is an exponentially damped circularly symmetric filter that uses local statistics. The pixel being filtered is replaced with a value calculated based on the distance from the filter center, the damping factor, and the local variance.

You can write a script to apply a Frost filter using the ENVIFrostAdaptiveFilterTask routine.

Reference

Zhenghao Shi and Ko B. Fung, “A Comparison of Digital Speckle Filters,” Proceedings of IGARSS 94, August 8-12, 1994, pp. 2129-2133.

  1. From the Toolbox, select Filter > Frost Filter.
  2. Select an input file and perform optional spatial and spectral subsetting, then click OK. The Frost Filter Parameters dialog appears.
  3. Enter the Filter Size.
  4. Enter the value in the Damping Factor field. The damping factor determines the amount of exponential damping and the default value of 1 is sufficient for most radar images. Larger damping values preserve edges better but smooth less, and smaller values smooth more. A damping value of 0 results in the same output as a low pass filter.

Enhanced Frost Filters


Use Enhanced Frost filters to reduce speckle in radar imagery while simultaneously preserving texture information. The Enhanced Frost filter is an adaptation of the Frost filter and similarly uses local statistics (coefficient of variation) within individual filter windows. Each pixel is put into one of three classes, which are treated as follows:

  • Homogeneous: The pixel value is replaced by the average of the filter window.
  • Heterogeneous: An impulse response is used as a convolution kernel to determine the pixel value.
  • Point target: The pixel value is not changed.

Reference

Lopes, A., R. Touzi, and E. Nezry, 1990. “Adaptive Speckle Filters and Scene Heterogeneity,” IEEE Transactions on Geoscience and Remote Sensing, Vol. 28, No. 6, pp. 992-1000.

You can also write a script to apply an enhanced Frost filter using the ENVIEnhancedFrostAdaptiveFilterTask routine.

  1. From the Toolbox, select Filter > Enhanced Frost Filter.
  2. Select an input file and perform optional spatial and spectral subsetting, then click OK.
  3. Enter the filter size in the Filter Size field.
  4. Enter a Damping Factor that inversely defines the extent of the exponential damping in the weighted average for the heterogeneous class. A larger damping factor produces less averaging.
  5. Enter values that define the class cutoffs for the homogeneous (coefficient of variation £ Cu), heterogeneous (Cu < coefficient of variation < C max), and point target (coefficient of variation ³ Cmax) classes.
  6. Estimate the cutoff values based on the number of looks (L) of the radar image.

Gamma Filters


Use Gamma filters to reduce speckle while preserving edges in radar images. The gamma filter is similar to the Kuan filter but assumes that the data is gamma distributed. The pixel being filtered is replaced with a value calculated based on the local statistics.

Reference

Zhenghao Shi and Ko B. Fung, “A Comparison of Digital Speckle Filters,” Proceedings of IGRASS 94, August 8-12, 1994, pp. 2129-2133.

You can also write a script to perform gamma adaptive filtering using the ENVIGammaAdaptiveFilterTask routine.

  1. From the Toolbox, select Filter > Gamma Filter.
  2. Select an input file and perform optional spatial and spectral subsetting, then click OK. The Gamma Filter Parameters dialog appears.
  3. Enter the Filter Size.
  4. Enter the Number of Looks in the field provided. ENVI uses the Number of Looks parameter to calculate the noise variance by 1/(number of looks).

Kuan Filters


Use Kuan filters to reduce speckle while preserving edges in radar images. It transforms the multiplicative noise model into an additive noise model. This filter is similar to the Lee filter but uses a different weighting function. The pixel being filtered is replaced with a value calculated based on the local statistics.

Reference

Zhenghao Shi and Ko B. Fung, “A Comparison of Digital Speckle Filters,” Proceedings of IGARSS 94, August 8-12, 1994, pp. 2129-2133.

You can also write a script to apply Kuan filters using the ENVIKuanAdaptiveFilterTask routine.

  1. From the Toolbox, select Filter > Kuan Filter.
  2. Select an input file and perform optional spatial and spectral subsetting, then click OK. The Kuan Filter Parameters dialog appears.
  3. Enter the Filter Size.
  4. Enter the Number of Looks in the appropriate field. The Number of Looks parameter is used to calculate the noise variance by 1/(number of looks).

Local Sigma Filters


Use Local Sigma filters to preserve fine detail (even in low contrast areas) and to reduce speckle significantly. The Local Sigma filter uses the local standard deviation computed for the filter box to determine valid pixels within the filter window. It replaces the pixel being filtered with the mean calculated using only the valid pixels within the filter box.

Reference

Eliason, Eric M. and McEwen, Alfred S., “Adaptive Box Filters for Removal of Random Noise from Digital Images,” Photogrammetric Engineering & Remote Sensing, April, 1990, V56 No. 4, p. 453.

You can also write a script to apply Local Sigma filters using the ENVILocalSigmaAdaptiveFilterTask routine.

  1. From the Toolbox, select Filter > Local Sigma Filter.
  2. Select an input file and perform optional spatial and spectral subsetting, then click OK. The Localized Sigma Filter Parameters dialog appears.
  3. Enter the filter size in pixels.
  4. Enter the number of standard deviations to consider valid in the Sigma Factor field. ENVI uses the Sigma Factor to determine which pixels are valid by calculating a minimum and maximum pixel value based on the number of standard deviations (sigma) entered and the local statistics.
  5. The pixel being filtered will be replaced by the average of surrounding valid pixels.

Bit Error Filters


Use Bit Error filters to remove bit-error noise, which is usually the result of spikes in the data caused by isolated pixels that have extreme values unrelated to the image scene. The noise typically gives the image a speckled appearance. Bit-error removal in ENVI uses an adaptive algorithm to replace spike pixels with the average of neighboring pixels. The local statistics (mean and standard deviation) within the filter box are used to set a threshold for valid pixels.

Reference

Eliason, Eric M. and McEwen, Alfred S., “Adaptive Box Filters for Removal of Random Noise from Digital Images,” Photogrammetric Engineering & Remote Sensing, April, 1990, V56 No. 4, p. 453.

You can also write a script to apply bit error filters using the ENVIBitErrorAdaptiveFilterTask routine.

  1. From the Toolbox, select Filter > Bit Errors Filter.
  2. Select an input file and perform optional spatial and spectral subsetting, then click OK. The Bit Error Removal Parameters dialog appears.
  3. Enter the Filter Size in pixels.
  4. Enter a Sigma Factor for the number of standard deviations to use for determining valid pixels.
  5. Enter a Tolerance (in data values). Pixels are only considered bad if they have a value greater than the tolerance. A pixel is classified as a bit error when the pixel value minus the filter box mean is greater than the Sigma Factor times the localized standard deviation and greater than the tolerance. The bad pixels will be replaced by the average of surrounding valid pixels by default.
  6. To set bad pixels to zero instead of replacing them with an average, click Yes for Zero Bit Errors?.
  7. Optionally, enter the minimum and maximum values to consider as valid data for the mean determination in the Valid Data Min and Valid Data Max fields.

Related Topics


Convolution and Morphology Filters, Frequency Filters, Texture Filters



© 2019 Harris Geospatial Solutions, Inc. |  Legal
My Account    |    Store    |    Contact Us