This task applies a bit error adaptive filter to a raster, 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.

Example


; Start the application
e = ENVI()
 
; Open an input file
File = Filepath('elev_t.jpg', Subdir=['examples','data'])
Raster = e.OpenRaster(File)
 
; Get the task from the catalog of ENVITasks
Task = ENVITask('BitErrorAdaptiveFilter')
 
; Define an input raster
Task.INPUT_RASTER = Raster
 
; Specify true to replace bit errors with the
; local average. False sets bad pixels to zero.
Task.REPLACE_BIT_ERRORS = !true
 
; Run the task
Task.Execute
 
; Get the collection of data objects currently available in the Data Manager
DataColl = e.Data
 
; Add the output to the Data Manager
DataColl.Add, Task.OUTPUT_RASTER
 
; Display the result
View = e.GetView()
Layer = View.CreateLayer(Task.OUTPUT_RASTER)

Syntax


Result = ENVITask('BitErrorAdaptiveFilter')

Input properties (Set, Get): INPUT_RASTER, NOISE_STANDARD_DEVIATIONS, OUTPUT_RASTER_URI, REPLACE_BIT_ERRORS, TOLERANCE, VALID_MAXIMUM, VALID_MINIMUM, WINDOW_SIZE

Output properties (Get only): OUTPUT_RASTER

Properties marked as "Set" are those that you can set to specific values. You can also retrieve their current values any time. Properties marked as "Get" are those whose values you can retrieve but not set.

Methods


This task inherits the following methods from ENVITask:

AddParameter

Execute

Parameter

ParameterNames

RemoveParameter

Properties


This task inherits the following properties from ENVITask:

COMMUTE_ON_DOWNSAMPLE

COMMUTE_ON_SUBSET

DESCRIPTION

DISPLAY_NAME

NAME

REVISION

TAGS

This task also contains the following properties:

INPUT_RASTER (required)

Specify a raster on which to perform bit error adaptive filtering.

NOISE_STANDARD_DEVIATIONS (optional)

Specify the noise standard deviation. The default value is 1.0.

OUTPUT_RASTER

This is a reference to the output raster of filetype ENVI.

OUTPUT_RASTER_URI (optional)

Specify a string with the fully qualified filename and path of the associated OUTPUT_RASTER. If you do not specify this property, or set it to an exclamation symbol (!), a temporary file will be created.

REPLACE_BIT_ERRORS (optional)

Specify true to replace bit errors with the local average. Specify false to set bad pixels to zero.

TOLERANCE (optional)

Specify the maximum standard deviation tolerance. The default value is 5.0.

VALID_MAXIMUM (optional)

Specify the maximum value for valid data.

VALID_MINIMUM (optional)

Specify the minimum value for valid data.

WINDOW_SIZE (optional)

Specify a square filtering window size, in pixels. The default value is 3.

Version History


ENVI 5.3

Introduced

API Version


4.3

See Also


ENVITask, ENVISubsetRaster, AdditiveLeeAdaptiveFilter Task, AdditiveMultiplicativeLeeAdaptiveFilter Task, EnhancedFrostAdaptiveFilter Task, EnhancedLeeAdaptiveFilter Task, FrostAdaptiveFilter Task, GammaAdaptiveFilter Task, KuanAdaptiveFilter Task, LocalSigmaAdaptiveFilter Task, MultiplicativeLeeAdaptiveFilter Task