Herror ::frei_amp (
    Hobject Image,
    Hobject *ImageEdgeAmp
)
HImage HImage::FreiAmp (
    void
) const
HImageArray HImageArray::FreiAmp (
    void
) const

Detect edges (amplitude) using the Frei-Chen operator.

::frei_amp calculates an approximation of the first derivative of the image data and is used as an edge detector. The filter is based on the following filter masks:

  A =
         1       sqrt(2)        1
         0          0           0
        -1      -sqrt(2)       -1

  B =
         1          0          -1
       sqrt(2)      0       -sqrt(2) 
         1          0          -1
The result image contains the maximum response of the masks A and B.


Parameters

Image (input_object)
(multichannel-)image(-array) -> Hobject: HImage(Array) ( byte / int2 )
Input image.

ImageEdgeAmp (output_object)
(multichannel-)image(-array) -> Hobject * : HImage(Array) ( byte / int2 )
Edge amplitude (gradient magnitude) image.


Example
read_image(&Image,"fabrik");
frei_amp(Image,&Frei_amp);
threshold(Frei_amp,&Edges,128,255);

Result

::frei_amp always returns H_MSG_TRUE. If the input is empty the behaviour can be set via ::set_system('no_object_result',<Result>). If necessary, an exception handling is raised.


Possible Predecessors

::gauss_image, ::sigma_image, ::median_image, ::smooth_image


Alternatives

::sobel_amp, ::kirsch_amp, ::prewitt_amp, ::robinson_amp, ::roberts


See also

::bandpass_image, ::laplace_of_gauss


Module

Image filters



Copyright © 1996-2002 MVTec Software GmbH