Speckle function

Overview

The Speckle function removes speckle in radar datasets and smooths out noise, while retaining edges and sharp features in the image. Speckle is the high-frequency noise that exists in radar images. The images generated by laser, ultrasound, and synthetic aperture radar (SAR) systems are subject to speckle noise due to the interference of the returning electromagnetic waves scattered from multiple surfaces. The Speckle function uses mathematical models to filter the bright and dark spots that are generated as a result of interference, to allow better image interpretation.

Notes

Smoothing algorithms in the Speckle function reduce and filter speckle using the Lee, Enhanced Lee, Frost, Kuan, Gamma MAP, and Refined Lee filter types.

For optimal speckle reduction, you can try the following:

  • Filter Size greatly affects the quality of processed images. A 7-by-7 filter usually gives good results with moderate smoothing.
  • Number of Looks is used to estimate noise variance, and it effectively controls the amount of smoothing applied to the image by the filter. A smaller value leads to more smoothing; a larger value preserves more distinct image features.
  • Apply a histogram stretch to adjust the contrast or brightness of the image.

Parameters

ParameterDescription

Raster

The input raster.

Filter Type

Specifies the filter type to be used in the smoothing algorithm to remove speckle noise:

  • Lee—Reduces the speckle noise by applying a spatial filter to each pixel in an image, which filters the data based on local statistics calculated within a square window. This filter is useful when you want to smooth speckled data that has an additive or multiplicative component. This is the default.
  • Enhanced Lee—An adapted version of the Lee filter that includes Damping Factor and Number of Looks. This filter is useful when you want to reduce speckle while preserving texture information.
  • Frost—Reduces speckle noise with an exponentially damped circularly symmetric filter that uses local statistics within individual filter windows. This filter is useful when you want to reduce speckle while preserving edges in radar images.
  • Kuan—Similar to the Lee filter, this filter applies a spatial filter to each pixel in an image and filters the data based on local statistics calculated within a square window. This filter is useful when you want to reduce speckle while preserving edges in radar images.
  • Gamma MAP—A Bayesian analysis and Gamma distribution filter will be applied to reduce the speckle noise. This filter is useful for reducing speckle while preserving edges.
  • Refined Lee—A 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.

Filter Size

Specifies the size of the pixel window used to filter noise:

  • 3x3
  • 5x5
  • 7x7
  • 9x9
  • 11x11
The default is 3x3.

Noise Model

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

  • Multiplicative Noise—Random signal noise that is multiplied into the relevant signal during capture or transmission
  • Additive Noise—Random signal noise that is added into the relevant signal during capture or transmission
  • Additive and Multiplicative Noise—Both noise models
This parameter is only valid when Filter Type is set to Lee. The default is Multiplicative Noise.

Noise Variance

Specifies the noise variance of the radar image.

This parameter is only valid when Filter Type is set to Lee and Noise Model is set to Additive Noise or Additive and Multiplicative Noise. The default value is 0.25.

Additive Noise Mean

Specifies the mean value of additive noise. A larger noise mean value will produce less smoothing, while a smaller value results in more smoothing.

This parameter is only valid when Filter Type is set to Lee and Noise Model is set to Additive and Multiplicative Noise. The default value is 0.

Multiplicative Noise Mean

Specifies the mean value of multiplicative noise. A larger noise mean value will produce less smoothing, while a smaller value results in more smoothing.

This parameter is only valid when Filter Type is set to Lee and Noise Model is set to Multiplicative Noise or Additive and Multiplicative Noise. The default value is 1.

Number of Looks

Specifies the number of looks 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.

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

Damping Factor

Specifies the extent of exponential damping effect on filtering. A larger damping value preserves edges better but smooths less, while a smaller value produces more smoothing. A value of 0 results in the same output as a low-pass filter.

This parameter is only valid when Filter Type is set to Enhanced Lee or Frost. The default value is 1.

Learn more about filters

This section includes technical information about some of the filters.

Lee filter

The Lee filter reduces the speckle noise by applying a spatial filter to each pixel in an image, which filters the data based on local statistics calculated within a square window. The value of the center pixel is replaced by a value calculated using the neighboring pixels. With the Lee filter, you can choose to reduce additive noise, multiplicative noise, or both. Use the Lee filter to smooth speckled data that has an additive or multiplicative component.

Noise modelAlgorithmVariable definitions

Additive

Value of filtered pixel = LM + K * (PC - LM)

where

  • K = LV / (LV + AV)

PC—Center pixel value of window

K—Weight function

LM—Local mean of filter window

LV—Local variance of filter window

M—Multiplicative Noise Mean

A—Additive Noise Mean

AV—Additive noise variance

MV—Multiplicative noise variance

SD—Standard deviation of filter window

NLooks—Number of Looks

Multiplicative

Value of filtered pixel = LM + K * (PC - M * LM)

where

  • K = M * LV / ((LM * LM * MV) + (M * M * LV))
  • MV = 1 / NLooks

Additive and multiplicative

Value of filtered pixel = LM+ K * (PC - M * LM - A)

where

  • K = M * LV / ((LM* LM * MV) + (M * M * LV) + AV)
  • MV = (SD / LM)2

Lee filter algorithms
Note:

The Additive Noise Mean value is usually 0. The Multiplicative Noise Mean value is usually 1.

Enhanced Lee filter

The Enhanced Lee filter is a refined version of the Lee filter, reducing the speckle noise effectively by preserving image sharpness and detail. It requires a Damping Factor value and a Number of Looks value. Use the Enhanced Lee filter to reduce speckle while preserving texture information.

AlgorithmVariable definitions

Filtered pixel value depends on certain conditions.

If CI <= CU then

PF = LM

If CU < CI < Cmax then

PF = LM * K + PC * (1 - K)

If CI >= Cmax then

PF = PC

where

  • CU = 1 / square root (NLooks)
  • Cmax = square root (1 + 2 / NLooks)
  • CI = SD / LM
  • K = e(- D (Ci - CU) / (Cmax - CI))

PF—Filtered pixel value

PC—Center pixel value of window

LM—Local mean of filter window

SD—Standard deviation in filter window

NLooks—Number of Looks

D—Damping Factor

CU—Noise variation coefficient

Cmax—Maximum noise variation coefficient

CI—Image variation coefficient

Enhanced Lee filter algorithm

Frost filter

The Frost filter reduces speckle noise and preserves important image features at the edges with an exponentially damped circularly symmetric filter that uses local statistics within individual filter windows. The Frost filter requires a Damping Factor. Use the Frost filter to reduce speckle while preserving edges in radar images.

Scene reflectivity is an important factor that differentiates the Frost filter from the Lee and Kuan filters. It is calculated by combining the observed image with the impulse response of the SAR system.

AlgorithmVariable definitions

The implementation of this filter consists of defining a circularly symmetric filter with a set of weighting values, K for each pixel.

K = e (- D * (LV / LM * LM) * S)

The resulting gray-level value of the filtered pixel is

(P1 * K1 + P2 * K2 + ... + Pn * Kn) / (K1 + K2 + ... + Kn)

S—Absolute value of the pixel distance from the center pixel to its neighbors in the filter window

P1,P2,...Pn—Gray levels of each pixel in the filter window

K1,K2,...Kn—Weights (as defined above) for each pixel

D—Damping Factor

LM—Local mean of filter window

LV—Local variance of filter window

Frost filter algorithm

Kuan filter

The Kuan filter follows a similar filtering process to the Lee filter in reducing speckle noise. This filter also applies a spatial filter to each pixel in an image, filtering the data based on local statistics of the centered pixel value that is calculated using the neighboring pixels. The Kuan filter requires the Number of Looks value, which controls image smoothing and estimates noise variance. Use the Kuan filter to reduce speckle while preserving edges in radar images.

AlgorithmVariable definitions

Filtered pixel value is

PC * K +  LM * (1 - K)

where

  • CU = 1 / square root (NLooks)
  • CI = square root (LV) / LM
  • K = (1 - ((CU * CU) / (CI * CI))) / (1 + (CU * CU))

PC—Center pixel value of window

K = Weight function

CU = Noise variation coefficient

CI = Image variation coefficient

LM—Local mean of filter window

LV—Local variance of filter window

NLooks—Number of Looks

Kuan filter algorithm

Gamma MAP

The Gamma MAP filter uses a maximum a posterior (MAP) approach, which requires a priori knowledge of the probability density function of the radar image. The Gamma MAP filter requires the Number of Looks value, which controls image smoothing and estimates noise variance.

AlgorithmVariable definitions

The filtered pixel value depends on certain conditions.

If CI < CU then

PF = LM

If CU <= CI <= Cmax then

PF = (K–NLooks-1)*LM+square root((LM*LM)*((K-NLooks-1)*(K- NLooks-1))+4*K*NLooks*LM)

If CI > Cmax then

PF = PC

where

  • CU = 1 / square root (NLooks)
  • Cmax = square root (2 * CU )
  • CI = SD / LM
  • K = (1 + (CU * CU)) / ((CI * CI) - (CU * CU))

PF—Filtered pixel value

CI—Image variation coefficient

CU—Noise variation coefficient

LM—Local mean of filter window

NLooks—Number of Looks

K—Weight function

SD—Standard deviation of filter window

Refined Lee

The Refined Lee filter is a refined version of the Lee filter that reduces the speckle noise near edges while preserving edge sharpness. It applies edge detection in a constant window size of 7x7. Within that 7x7 window, a nonsquare window is used to match the direction of edges. The remaining nonedge pixels in the nonsquare window are used in the filtering computation.

AlgorithmVariable definitions

Filtered pixel value is

LM + K * (PC – LM)

where

  • K = ( LV - LM * LM * MV) / ((1 + MV)*LV)

  • MV = (SD / LM)2

LM—Local mean of filter window

K—Weight function

PC—Center pixel value of window

LV—Local variance of filter window

MV—Multiplicative noise variance

SD—Standard deviation of filter window

Related topics