FED -- Edge Detection Filter (up to 33x33)

Performs EDGE DETECTION filtering for Image data. The edge detection filter creates an image where edges (sharp changes in grey-level values) are shown.

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

INPUT PORTS

Input

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

Contains the input 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.

OUTPUT PORT(S)

Output

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

Contains the output layer to receive the filtered image.

INPUT PARAMETERS

FED is controlled by the following parameters:

Filter X Size (Pixels)

Name:FilterXSize
Type:Integer
Valid Values:1 <= x <= 33
Default:3
Requirement:Mandatory

Specifies the filter's X size in units of pixels.

Notes:

Filter Y Size (Lines)

Name:FilterYSize
Type:Integer
Valid Values:3 <= x <= 33
Default:3
Requirement:Mandatory

Specifies the filter's Y size in units of lines.

Notes:

Gain Factor

Name:GainFactor
Type:Real
Valid Values:x >= 0.000001
Default:1.0
Requirement:Optional

Specifies a gain multiplication factor to be applied to the input layer.

Values of 0.0 or negative real numbers are not allowed.

DETAILS

The Edge Detection filter computes the mean of the absolute difference between the grey-level value at the central pixel and at each of its neighbours within the filter window. The dimensions of the filter window must be odd. The minimum filter size is 1 by 3, and the maximum filter size allowed is 33 by 33. The filter window does not need to be square. Edge detection filtering produces an image where higher grey-level values indicate the presence of an edge between two objects. The user has the option of applying a factor to each input layer before averaging. A gain factor of 1.0 (default) implies no gain factor.

A bitmap specifies the area within the input 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.

ALGORITHM

The Edge Detection filter computes the mean of the absolute difference between the grey-level value at the central pixel and at each of its neighbours within the filter window.

All pixels are filtered. In order to filter pixels located near the edges of the image, edge pixel values are replicated to give sufficient data.

         +---------+
         | a1 a2 a3|
         | a4 CT a5|     <---   Filter window 3 X 3
         | a6 a7 a8|
         +---------+
The edge detection filter finds edge pixel values in the filter window. The filtered pixel is the sum of the absolute differences between the center pixel (CT) and the surrounding pixels in the filter window, divided by the number of pixels surrounding the central pixel (8).

     filtered pixel CT = SUM (ABS(CT-a1) +...+ ABS(CT-a8)) / 8
where

        a1 .. a8   are grey levels of each pixel in filter window

        CT         is the grey-level value of central pixel
Example of using filter 5x5 on database image 8x8, GainFactor = 1.0

   Image before filtering           Image after filtering

   8 8  8 9 9 9 7 6 6 6   6 6
   8 8  8 9 9 9 7 6 6 6   6 6
       +----------------+           +----------------+
   8 8 |8 9 9 9 7 6 6 6 | 6 6       |1 2 3 4 4 2 0 0 |
   8 8 |8 9 9 7 6 6 6 6 | 6 6       |2 2 4 4 3 1 0 0 |   
   9 9 |9 8 8 6 6 6 6 6 | 6 6       |3 3 3 4 2 1 0 0 |
   9 9 |9 8 7 7 6 5 6 6 | 6 6       |4 3 3 3 1 3 0 0 |
   7 7 |7 7 7 6 6 6 6 6 | 6 6       |3 3 3 1 1 0 0 0 |
   6 6 |6 6 6 6 6 6 6 6 | 6 6       |2 2 1 1 1 0 0 0 |   
   6 6 |6 6 6 6 6 6 6 5 | 5 5       |1 1 0 0 0 0 0 3 |
   6 6 |6 6 6 6 6 6 6 6 | 6 6       |0 0 0 0 0 0 0 0 |
       +----------------+           +----------------+        
   6 6  6 6 6 6 6 6 6 6   6 6      
   6 6  6 6 6 6 6 6 6 6   6 6
In the "Image before filtering" on the left, columns and scanlines outside the box represent the last image column or scanline being reused (for the case where the filter does not have a full window).


About PCI Help Gateway