Despeckle (Image Analyst)

Available with Image Analyst license.

Summary

Corrects the input synthetic aperture radar (SAR) data for speckle, which is high-frequency noise that resembles a salt and pepper effect.

Despeckle filters out noise while retaining edges and sharp features in the SAR image. The filters available are Lee, Enhanced Lee, Refined Lee, Frost, Kuan, and Gamma MAP.

Usage

  • Despeckling SAR imagery improves image interpretation and classification results.

  • References for the Filter Type parameter

    1. J.-S. Lee. "Digital Image Enhancement and Noise Filtering by Use of Local Statistics." IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. PAMI-2, no. 2, pp. 165-168, March 1980, doi: 10.1109/TPAMI.1980.4766994.
    2. A. Lopes, R. Touzi and E. Nezry. "Adaptive speckle filters and scene heterogeneity." IEEE Transactions on Geoscience and Remote Sensing, vol. 28, no. 6, pp. 992-1000, Nov. 1990, doi: 10.1109/36.62623.
    3. J.-S. Lee and E. Pottier. "Polarimetric radar imaging: from basics to applications." CRC press, Dec. 2017.
    4. V. S. Frost, J. A. Stiles, K. S. Shanmugan and J. C. Holtzman. "A Model for Radar Images and Its Application to Adaptive Digital Filtering of Multiplicative Noise." IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. PAMI-4, no. 2, pp. 157-166, March 1982, doi: 10.1109/TPAMI.1982.4767223.
    5. D. T. Kuan, A. A. Sawchuk, T. C. Strand and P. Chavel. "Adaptive Noise Smoothing Filter for Images with Signal-Dependent Noise." IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. PAMI-7, no. 2, pp. 165-177, March 1985, doi: 10.1109/TPAMI.1985.4767641.
    6. A. Lopes, E. Nezry, R. Touzi and H. Laur. "Maximum A Posteriori Speckle Filtering And First Order Texture Models In Sar Images." 10th Annual International Symposium on Geoscience and Remote Sensing, 1990, pp. 2409-2412, doi: 10.1109/IGARSS.1990.689026.

Parameters

LabelExplanationData Type
Input Radar Data

The input radar data.

Raster Dataset; Raster Layer
Output Radar Data

The despeckled radar data.

Raster Dataset
Polarization Bands
(Optional)

The polarization bands to be filtered.

The first band is selected by default.

String
Filter Type
(Optional)

Specifies the type of smoothing algorithm or filter that will be applied.

  • LeeA spatial filter will be applied to each pixel in an image to reduce the speckle noise. This option filters the data based on local statistics calculated within a square window. This filter is useful for smoothing speckled data that has an additive or multiplicative component. (Reference 1 in the Usage section above)
  • Enhanced LeeA spatial filter that preserves the sharpness and detail of the image will be applied to reduce the speckle noise. This option is a refined version of the Lee filter. This filter is useful for reducing speckle while preserving texture information. (Reference 2 in the Usage section above)
  • Refined LeeA spatial filter will be applied to selected pixels, based on local statistics, to reduce the speckle noise. This filter uses a nonsquare filter window to match the direction of edges. It is useful for reducing speckle while preserving edges. This is the default. (Reference 3 in the Usage section above)
  • FrostAn exponentially damped circularly symmetric filter that uses local statistics within individual filter windows will be applied to reduce the speckle noise. This does not affect image features at the edges. This filter is useful for reducing speckle while preserving edges. (Reference 4 in the Usage section above)
  • KuanA spatial filter, the Kuan filter, will be applied to each pixel in an image to reduce the speckle noise. This filters the data based on local statistics of the centered pixel value that is calculated using the neighboring pixels. This filter is useful for reducing speckle while preserving edges. (Reference 5 in the Usage section above)
  • Gamma MAPA Bayesian analysis and Gamma distribution filter will be applied to reduce the speckle noise. This filter is useful for reducing speckle while preserving edges. (Reference 6 in the Usage section above)
String
Filter Size
(Optional)

Specifies the size of the pixel window that will be used to filter noise.

This parameter is only valid when the Filter Type parameter is set to Lee, Enhanced Lee, Frost, Kuan, or Gamma MAP.

  • 3 x 3A 3-by-3 filter size will be used. This is the default.
  • 5 x 5A 5-by-5 filter size will be used.
  • 7 x 7A 7-by-7 filter size will be used.
  • 9 x 9A 9-by-9 filter size will be used.
  • 11 x 11An 11-by-11 filter size will be used.
String
Noise Model
(Optional)

Specifies the type of noise that is reducing the quality of the radar image.

This parameter is only valid when the Filter Type parameter is set to Lee.

  • Multiplicative noiseRandom signal noise that is multiplied into the relevant signal during capture or transmission is reducing the quality. This is the default.
  • Additive noiseRandom signal noise that is added into the relevant signal during capture or transmission is reducing the quality.
  • Additive and multiplicative noiseA combination of both noise models is reducing the quality.
String
Noise Variance
(Optional)

The noise variance of the radar image. The default is 0.25.

This parameter is only valid when the Filter Type parameter is set to Lee and the Noise Model parameter is set to Additive noise or Additive and multiplicative noise.

Double
Additive Noise Mean
(Optional)

The mean value of additive noise. A larger noise mean value will produce less smoothing, while a smaller value results in more smoothing. The default value is 0.

This parameter is only valid when the Filter Type parameter is set to Lee and the Noise Model parameter is set to Additive and multiplicative noise.

Double
Multiplicative Noise Mean
(Optional)

The mean value of multiplicative noise. A larger noise mean value will produce less smoothing, while a smaller value results in more smoothing. The default value is 1.

This parameter is only valid when the Filter Type parameter is set to Lee and the Noise Model parameter is set to Multiplicative noise or Additive and multiplicative noise.

Double
Number of Looks
(Optional)

The number of looks value of the image, which controls image smoothing and estimates noise variance. A smaller value results in more smoothing, while a larger value retains more image features. The default value is 1.

This parameter is only valid when the Filter Type parameter is set to Enhanced Lee, Kuan, or Gamma MAP, or when the Filter Type parameter is set to Lee and the Noise Model parameter is set to Multiplicative.

Long
Damping Factor
(Optional)

The exponential damping level of smoothing that will be applied. A damping value greater than 1 will result in better edge preservation but less smoothing. Values less than 1 will result in more smoothing. A value of 0 will produce results similar to a low-pass filter. The default is 1.

Long

Despeckle(in_radar_data, out_radar_data, {polarization_bands}, {filter_type}, {filter_size}, {noise_model}, {noise_variance}, {add_noise_mean}, {mult_noise_mean}, {number_of_looks}, {damp_factor})
NameExplanationData Type
in_radar_data

The input radar data.

Raster Dataset; Raster Layer
out_radar_data

The despeckled radar data.

Raster Dataset
polarization_bands
[polarization_bands,...]
(Optional)

The polarization bands to be filtered.

The first band is selected by default.

String
filter_type
(Optional)

Specifies the type of smoothing algorithm or filter that will be applied.

  • LEEA spatial filter will be applied to each pixel in an image to reduce the speckle noise. This option filters the data based on local statistics calculated within a square window. This filter is useful for smoothing speckled data that has an additive or multiplicative component. (Reference 1 in the Usage section above)
  • ENHANCED_LEEA spatial filter that preserves the sharpness and detail of the image will be applied to reduce the speckle noise. This option is a refined version of the Lee filter. This filter is useful for reducing speckle while preserving texture information. (Reference 2 in the Usage section above)
  • REFINED_LEEA spatial filter will be applied to selected pixels, based on local statistics, to reduce the speckle noise. This filter uses a nonsquare filter window to match the direction of edges. It is useful for reducing speckle while preserving edges. This is the default. (Reference 3 in the Usage section above)
  • FROSTAn exponentially damped circularly symmetric filter that uses local statistics within individual filter windows will be applied to reduce the speckle noise. This does not affect image features at the edges. This filter is useful for reducing speckle while preserving edges. (Reference 4 in the Usage section above)
  • KUANA spatial filter, the Kuan filter, will be applied to each pixel in an image to reduce the speckle noise. This filters the data based on local statistics of the centered pixel value that is calculated using the neighboring pixels. This filter is useful for reducing speckle while preserving edges. (Reference 5 in the Usage section above)
  • GAMMA_MAPA Bayesian analysis and Gamma distribution filter will be applied to reduce the speckle noise. This filter is useful for reducing speckle while preserving edges. (Reference 6 in the Usage section above)
String
filter_size
(Optional)

Specifies the size of the pixel window that will be used to filter noise.

  • 3x3A 3-by-3 filter size will be used. This is the default.
  • 5x5A 5-by-5 filter size will be used.
  • 7x7A 7-by-7 filter size will be used.
  • 9x9A 9-by-9 filter size will be used.
  • 11x11An 11-by-11 filter size will be used.

This parameter is only valid when the filter_type parameter is set to LEE, ENHANCED_LEE, FROST, KUAN, or GAMMA_MAP.

String
noise_model
(Optional)

This parameter is only valid when the filter_type parameter is set to LEE.

String
noise_variance
(Optional)

The noise variance of the radar image. The default is 0.25.

This parameter is only valid when the filter_type parameter is set to LEE and the noise_model parameter is set to ADDITIVE_NOISE or ADDITIVE_AND_MULTIPLICATIVE_NOISE.

Double
add_noise_mean
(Optional)

The mean value of additive noise. A larger noise mean value will produce less smoothing, while a smaller value results in more smoothing. The default value is 0.

This parameter is only valid when the filter_type parameter is set to LEE and the noise_model parameter is set to ADDITIVE_NOISE or ADDITIVE_AND_MULTIPLICATIVE_NOISE.

Double
mult_noise_mean
(Optional)

The mean value of multiplicative noise. A larger noise mean value will produce less smoothing, while a smaller value results in more smoothing. The default value is 1.

This parameter is only valid when the filter_type parameter is set to LEE and the noise_model parameter is set to MULTIPLICATIVE_NOISE or ADDITIVE_AND_MULTIPLICATIVE_NOISE.

Double
number_of_looks
(Optional)

The number of looks value of the image, which controls image smoothing and estimates noise variance. A smaller value results in more smoothing, while a larger value retains more image features. The default value is 1.

This parameter is only valid when the filter_type parameter is set to ENHANCED_LEE, KUAN, or GAMMA_MAP, or when the filter_type parameter is set to LEE and the noise_model parameter is set to MULTIPLICATIVE_NOISE.

Long
damp_factor
(Optional)

The exponential damping level of smoothing that will be applied. A damping value greater than 1 will result in better edge preservation but less smoothing. Values less than 1 will result in more smoothing. A value of 0 will produce results similar to a low-pass filter. The default is 1.

Long

Code sample

Despeckle example 1 (Python window)

This example despeckles the cross-polarization band using the Refined Lee filter.

import arcpy
arcpy.env.workspace = "D:\Data\SAR\S1\20181014"
outRadar = arcpy.ia.Despeckle("IW_manifest_TNR_CalB0.crf", "VV;VH", "REFINED_LEE")
outRadar.save("IW_manifest_TNR_CalB0_Dspk.crf")
Despeckle example 2 (stand-alone script)

This example despeckles the cross-polarization band using the Refined Lee filter.

# Import system modules and check out ArcGIS Image Analyst extension license
import arcpy
arcpy.CheckOutExtension("ImageAnalyst")
from arcpy.ia import *

# Set local variables
in_radar = "D:\Data\SAR\S1\20181014\manifest_TNR_CalB0.crf"
out_radar = "D:\Data\SAR\S1\20181014\manifest_TNR_CalB0_Dspk.crf" 
polarization = "VV;VH"
filter_type = "REFINED_LEE"

# Execute 
outRadar = arcpy.ia.Despeckle(in_radar, polarization, filter_type) 
outRadar.save(out_radar)

Licensing information

  • Basic: Requires Image Analyst
  • Standard: Requires Image Analyst
  • Advanced: Requires Image Analyst

Related topics