frei_ampfrei_ampFreiAmpFreiAmpfrei_amp (算子)

名称

frei_ampfrei_ampFreiAmpFreiAmpfrei_amp — 使用弗雷陈(Frei-Chen)算子检测边缘(振幅)。

签名

frei_amp(Image : ImageEdgeAmp : : )

Herror frei_amp(const Hobject Image, Hobject* ImageEdgeAmp)

Herror T_frei_amp(const Hobject Image, Hobject* ImageEdgeAmp)

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

HImage HImage::FreiAmp() const

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

HImage HImage.FreiAmp()

def frei_amp(image: HObject) -> HObject

描述

frei_ampfrei_ampFreiAmpFreiAmpFreiAmpfrei_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.

注意

请注意,若使用域缩减后的图像作为输入,滤波器算子可能会返回意外结果。请参阅 滤波器 一章

执行信息

参数

ImageImageImageImageimageimage (输入对象)  (multichannel-)image(-array) objectHImageHObjectHImageHobject (byte / int2 / uint2)

输入图像。

ImageEdgeAmpImageEdgeAmpImageEdgeAmpImageEdgeAmpimageEdgeAmpimage_edge_amp (输出对象)  (multichannel-)image(-array) objectHImageHObjectHImageHobject * (byte / int2 / uint2)

Edge amplitude (gradient magnitude) image.

示例(HDevelop)

read_image(Image,'fabrik')
frei_amp(Image,Frei_amp)
threshold(Frei_amp,Edges,128,255)

示例(C)

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

示例(HDevelop)

read_image(Image,'fabrik')
frei_amp(Image,Frei_amp)
threshold(Frei_amp,Edges,128,255)

示例(HDevelop)

read_image(Image,'fabrik')
frei_amp(Image,Frei_amp)
threshold(Frei_amp,Edges,128,255)

示例(HDevelop)

read_image(Image,'fabrik')
frei_amp(Image,Frei_amp)
threshold(Frei_amp,Edges,128,255)

结果

frei_ampfrei_ampFreiAmpFreiAmpFreiAmpfrei_amp 始终返回 2 ( H_MSG_TRUE )。 如果输入为空则可设置行为通过 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>)。如有必要,则抛出异常。

可能的前趋

binomial_filterbinomial_filterBinomialFilterBinomialFilterBinomialFilterbinomial_filter, gauss_filtergauss_filterGaussFilterGaussFilterGaussFiltergauss_filter, sigma_imagesigma_imageSigmaImageSigmaImageSigmaImagesigma_image, median_imagemedian_imageMedianImageMedianImageMedianImagemedian_image, smooth_imagesmooth_imageSmoothImageSmoothImageSmoothImagesmooth_image

替代

sobel_ampsobel_ampSobelAmpSobelAmpSobelAmpsobel_amp, kirsch_ampkirsch_ampKirschAmpKirschAmpKirschAmpkirsch_amp, prewitt_ampprewitt_ampPrewittAmpPrewittAmpPrewittAmpprewitt_amp, robinson_amprobinson_ampRobinsonAmpRobinsonAmpRobinsonAmprobinson_amp, robertsrobertsRobertsRobertsRobertsroberts

另见

bandpass_imagebandpass_imageBandpassImageBandpassImageBandpassImagebandpass_image, laplace_of_gausslaplace_of_gaussLaplaceOfGaussLaplaceOfGaussLaplaceOfGausslaplace_of_gauss

模块

基础