FGA -- Gaussian Filter

Performs Gaussian filtering on image data.

NOTE: This module was developed with the assistance of the Institute for Space and Terrestrial Science (ISTS) at the University of Waterloo, Ontario, Canada.

See Also: FAV, FED, FME, FMO, FPR, FLE, FSOBEL, FPRE, FSHARP

INPUT PORTS

Input

Type:Raster
Connection:Mandatory
Minimum Layers:1
Maximum Layers:1

Contains the input image layer to be filtered.

Mask

Type:Bitmap
Connection:Optional
Minimum Layers:0
Maximum Layers:1

Contains the input bitmap layer that indicates the area under which the input raster should be processed. If no bitmap is provided the entire input raster layer is processed.

OUTPUT PORT(S)

Output

Type:Raster
Connection:Optional
Minimum Layers:0
Maximum Layers:1

Contains the output layer that will receive the filtered results.

INPUT PARAMETERS

FGA is controlled by the following parameters:

Low and High (Optional) Pass Cutoff (std.dev. squared) (1 or 2 Values)

Name:Sigma
Type:RealList
Valid Values:1.0 <= x <= 32.0
Default:1.0 (only Low Pass Cutoff)
Requirement:Mandatory

Specifies the low-pass filter cutoff value and high-pass filter cutoff value (optionally), obtained by the square of Gaussian distribution deviation.

Should you require a value that differs from the default, simply enter it into the field (range 1.0 to 32.0)

DETAILS

FGA accepts one or two SIGMSQ values. SIGMSQ is the square of the Gaussian distribution deviation. It must be in the range of 1.0 to 32.0.

If only one SIGMSQ value is specified, then FGA is a low-pass filter. FGA computes the weighted sum of the grey level values within a square filter window surrounding each pixel. The weights are the results of the Gaussian function with the given deviation. The filter window will be a square of size 2*SIGMSQ + 1.

If two SIGMSQ values are specified, then FGA is a band-pass filter. The resulting image is the difference of the image produced by SIGMSQ(2) subtracted from the image produced by SIGMSQ(1). The filter window size will be 2*n + 1, where n is the larger value of SIGMSQ(1) and SIGMSQ(2).

The 'Mask' input layer consists of a bitmap that specifies the area within the 'Input' image layer which will be processed. Only this area will be filtered and the rest of the image will be unchanged. If no bitmap is connected, the entire database is processed.

The output layer (DBOC) may be the same as the input layer (DBIC). If FGA is a band-pass filter, the results will be both positive and negative. However, if DBOC is an 8-bit or 16-bit unsigned integer layer, then FGA will output only the absolute value of the results.

ALGORITHM

FGA uses the following Gaussian function to compute the filter weights:

        G(i,j) = exp( -((i-u)**2 + (j-v)**2)/(2 * sigma**2) )
where (i,j) is a pixel within the filter window, (u,v) is the centre of the filter window, and sigma**2 is the parameter SIGMSQ.

The filter weights W(i,j) are the normalized values of G(i,j) over the entire filter window. Hence the sum of all weights is 1.

The grey level of a filtered pixel is sum of W(i,j)*V(i,j) over all pixels in filter window, where V(i,j) is the original value at location (i,j).

All pixels in the image are filtered by FGA. In order to filter pixels located near edges of the image, it replicates edge pixel values to give sufficient data.


About PCI Help Gateway