HALCON Reference Manual 10.0.2
Table of Contents / Filters / Edges ClassesClassesClasses | | | Operators

robinson_amprobinson_amprobinson_ampRobinsonAmpRobinsonAmp (Operator)

Name

robinson_amprobinson_amprobinson_ampRobinsonAmpRobinsonAmp — Detect edges (amplitude) using the Robinson operator.

Signature

robinson_amp(Image : ImageEdgeAmp : : )

Herror robinson_amp(const Hobject Image, Hobject* ImageEdgeAmp)

Herror T_robinson_amp(const Hobject Image, Hobject* ImageEdgeAmp)

Herror robinson_amp(Hobject Image, Hobject* ImageEdgeAmp)

HImage HImage::RobinsonAmp() const

HImageArray HImageArray::RobinsonAmp() const

void HOperatorSetX.RobinsonAmp(
[in] IHUntypedObjectX* Image, [out] IHUntypedObjectX*ImageEdgeAmp)

IHImageX* HImageX.RobinsonAmp()

static void HOperatorSet.RobinsonAmp(HObject image, out HObject imageEdgeAmp)

HImage HImage.RobinsonAmp()

Description

robinson_amprobinson_amprobinson_ampRobinsonAmpRobinsonAmp calculates an approximation of the first derivative of the image data and is used as an edge detector. In robinson_amprobinson_amprobinson_ampRobinsonAmpRobinsonAmp the following four of the originally proposed eight 3x3 filter masks are convolved with the image. The other four masks are obtained by a multiplication by -1. All masks contain only the values 0,1,-1,2,-2.

     -1   0   1                2   1   0
     -2   0   2                1   0  -1
     -1   0   1                0  -1  -2

      0   1   2                1   2   1
     -1   0   1                0   0   0
     -2  -1   0               -1  -2  -1

The result image contains the maximum response of all masks.

Parallelization

Parameters

ImageImageImageImageimage (input_object)  (multichannel-)image(-array) objectHImageHImageHImageXHobject (byte / int2 / uint2)

Input image.

ImageEdgeAmpImageEdgeAmpImageEdgeAmpImageEdgeAmpimageEdgeAmp (output_object)  (multichannel-)image(-array) objectHImageHImageHImageXHobject * (byte / int2 / uint2)

Edge amplitude (gradient magnitude) image.

Example (HDevelop)

read_image(Image,'fabrik')
robinson_amp(Image,Robinson_amp)
threshold(Robinson_amp,Edges,128,255)

Example (C)

read_image(&Image,"fabrik");
robinson_amp(Image,&Robinson_amp);
threshold(Robinson_amp,&Edges,128,255);

Example (HDevelop)

read_image(Image,'fabrik')
robinson_amp(Image,Robinson_amp)
threshold(Robinson_amp,Edges,128,255)

Example (HDevelop)

read_image(Image,'fabrik')
robinson_amp(Image,Robinson_amp)
threshold(Robinson_amp,Edges,128,255)

Example (HDevelop)

read_image(Image,'fabrik')
robinson_amp(Image,Robinson_amp)
threshold(Robinson_amp,Edges,128,255)

Result

robinson_amprobinson_amprobinson_ampRobinsonAmpRobinsonAmp always returns 2 (H_MSG_TRUE). If the input is empty the behaviour can be set via set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>). If necessary, an exception is raised.

Possible Predecessors

binomial_filterbinomial_filterbinomial_filterBinomialFilterBinomialFilter, gauss_imagegauss_imagegauss_imageGaussImageGaussImage, sigma_imagesigma_imagesigma_imageSigmaImageSigmaImage, median_imagemedian_imagemedian_imageMedianImageMedianImage, smooth_imagesmooth_imagesmooth_imageSmoothImageSmoothImage

Alternatives

sobel_ampsobel_ampsobel_ampSobelAmpSobelAmp, frei_ampfrei_ampfrei_ampFreiAmpFreiAmp, prewitt_ampprewitt_ampprewitt_ampPrewittAmpPrewittAmp, robinson_amprobinson_amprobinson_ampRobinsonAmpRobinsonAmp, robertsrobertsrobertsRobertsRoberts

See also

bandpass_imagebandpass_imagebandpass_imageBandpassImageBandpassImage, laplace_of_gausslaplace_of_gausslaplace_of_gaussLaplaceOfGaussLaplaceOfGauss

Module

Foundation


Table of Contents / Filters / Edges ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH