kirsch_ampkirsch_ampKirschAmpKirschAmpkirsch_amp (Operator)

Name

kirsch_ampkirsch_ampKirschAmpKirschAmpkirsch_amp — Detect edges (amplitude) using the Kirsch operator.

Signature

kirsch_amp(Image : ImageEdgeAmp : : )

Herror kirsch_amp(const Hobject Image, Hobject* ImageEdgeAmp)

Herror T_kirsch_amp(const Hobject Image, Hobject* ImageEdgeAmp)

void KirschAmp(const HObject& Image, HObject* ImageEdgeAmp)

HImage HImage::KirschAmp() const

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

HImage HImage.KirschAmp()

def kirsch_amp(image: HObject) -> HObject

Description

kirsch_ampkirsch_ampKirschAmpKirschAmpKirschAmpkirsch_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: -3 -3 5 -3 5 5 5 5 5 5 5 -3 -3 0 5 -3 0 5 -3 0 -3 5 0 -3 -3 -3 5 -3 -3 -3 -3 -3 -3 -3 -3 -3 5 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 5 0 -3 5 0 -3 -3 0 -3 -3 0 5 5 -3 -3 5 5 -3 5 5 5 -3 5 5 The result image contains the maximum response of all masks.

Attention

Note that filter operators may return unexpected results if an image with a reduced domain is used as input. Please refer to the chapter Filters.

Execution Information

Parameters

ImageImageImageImageimageimage (input_object)  (multichannel-)image(-array) objectHImageHObjectHImageHobject (byte / int2 / uint2)

Input image.

ImageEdgeAmpImageEdgeAmpImageEdgeAmpImageEdgeAmpimageEdgeAmpimage_edge_amp (output_object)  image(-array) objectHImageHObjectHImageHobject * (byte / int2 / uint2)

Edge amplitude (gradient magnitude) image.

Example (HDevelop)

read_image(Image,'fabrik')
kirsch_amp(Image,Kirsch_amp)
threshold(Kirsch_amp,Edges,128,255)

Example (C)

read_image(&Image,"fabrik");
kirsch_amp(Image,&Kirsch_amp);
threshold(Kirsch_amp,&Edges,128,255);

Example (HDevelop)

read_image(Image,'fabrik')
kirsch_amp(Image,Kirsch_amp)
threshold(Kirsch_amp,Edges,128,255)

Example (HDevelop)

read_image(Image,'fabrik')
kirsch_amp(Image,Kirsch_amp)
threshold(Kirsch_amp,Edges,128,255)

Example (HDevelop)

read_image(Image,'fabrik')
kirsch_amp(Image,Kirsch_amp)
threshold(Kirsch_amp,Edges,128,255)

Result

kirsch_ampkirsch_ampKirschAmpKirschAmpKirschAmpkirsch_amp always returns TRUE. If the input is empty the behavior can be set via set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>). If necessary, an exception is raised.

Possible Predecessors

binomial_filterbinomial_filterBinomialFilterBinomialFilterBinomialFilterbinomial_filter, gauss_filtergauss_filterGaussFilterGaussFilterGaussFiltergauss_filter, sigma_imagesigma_imageSigmaImageSigmaImageSigmaImagesigma_image, median_imagemedian_imageMedianImageMedianImageMedianImagemedian_image, smooth_imagesmooth_imageSmoothImageSmoothImageSmoothImagesmooth_image

Alternatives

sobel_ampsobel_ampSobelAmpSobelAmpSobelAmpsobel_amp, frei_ampfrei_ampFreiAmpFreiAmpFreiAmpfrei_amp, prewitt_ampprewitt_ampPrewittAmpPrewittAmpPrewittAmpprewitt_amp, robinson_amprobinson_ampRobinsonAmpRobinsonAmpRobinsonAmprobinson_amp, robertsrobertsRobertsRobertsRobertsroberts

See also

bandpass_imagebandpass_imageBandpassImageBandpassImageBandpassImagebandpass_image, laplace_of_gausslaplace_of_gaussLaplaceOfGaussLaplaceOfGaussLaplaceOfGausslaplace_of_gauss

Module

Foundation