Speckle

Summary

Creates a raster object by removing speckle and smoothing out noise in radar datasets, while retaining edges and sharp features in the image.

Discussion

For more information about how this function works, see the Speckle raster function.

The referenced raster dataset for the raster object is temporary. To make it permanent, you can call the raster object's save method.

Syntax

Speckle (raster, {filter_type}, {filter_size}, {noise_model}, {noise_var}, {additive_noise_mean}, {multiplicative_noise_mean}, {nlooks}, {damp_factor})
ParameterExplanationData Type
raster

The input raster.

Raster
filter_type

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

  • LeeReduces 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.
  • EnhancedLeeA refined version of the Lee filter, reducing the speckle noise effectively by preserving image sharpness and detail. It requires the damp_factor and nlooks arguments to be set.
  • FrostReduces 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 the damp_factor argument to be set.
  • KaunThe 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 nlooks argument to be set, which controls image smoothing and estimates noise variance.

(The default value is Lee)

String
filter_size

The size of the filter window in pixels.

  • 3x3Three-by-three filter size.
  • 5x5Five-by-five filter size.
  • 7x7Seven-by-seven filter size.
  • 9x9Nine-by-nine filter size.
  • 11x11Eleven-by-eleven filter size.

(The default value is 3x3)

String
noise_model

Specifies the type of noise that is reducing the quality of the radar image. This parameter is only valid when the filter_type argument is set to Lee.

  • MultiplicativeRandom signal noise that is multiplied into the relevant signal during capture or transmission.
  • AdditiveRandom signal noise that is added into the relevant signal during capture or transmission.
  • AdditiveAndMultiplicativeA combination of both noise models.

(The default value is Multiplicative)

String
noise_var

Specifies the noise variance of the radar image.

This parameter is only valid when the filter_type argument is set to Lee and the noise_model argument is set to Additive or AdditiveAndMultiplicative.

(The default value is None)

Double
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 the filter_type argument is set to Lee and the noise_model argument is set to Additive or AdditiveAndMultiplicative.

(The default value is None)

Double
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 the filter_type argument is set to Lee and the noise_model argument is set to Additive or AdditiveAndMultiplicative.

(The default value is 1)

Double
nlooks

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 the filter_type argument is set to Lee and the noise_model argument is set to Multiplicative, or when the filter_type argument is set to Kaun.

(The default value is 1)

Integer
damp_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.

This parameter is only valid when the filter_type argument is set to EnhancedLee or Frost.

(The default value is None)

Double
Return Value
Data TypeExplanation
Raster

The output raster.

Code sample

Speckle example

Applies the Lee filter to Sentinel 1 radar imagery.

import arcpy

out_speckle_raster = arcpy.ia.Speckle("Sentinel_1.tif", filter_type="Lee", filter_size="3x3",
                                              noise_model="AdditiveAndMultiplicative", noise_var=0.25,
                                              additive_noise_mean=0, multiplicative_noise_mean=1)