KlassenKlassenKlassenKlassen | | | | Operatoren

frei_ampfrei_ampFreiAmpfrei_ampFreiAmpFreiAmp (Operator)

Name

frei_ampfrei_ampFreiAmpfrei_ampFreiAmpFreiAmp — Kantendetektion (Amplitude) mit dem Frei-Chen-Operator.

Signatur

frei_amp(Image : ImageEdgeAmp : : )

Herror frei_amp(const Hobject Image, Hobject* ImageEdgeAmp)

Herror T_frei_amp(const Hobject Image, Hobject* ImageEdgeAmp)

Herror frei_amp(Hobject Image, Hobject* ImageEdgeAmp)

HImage HImage::FreiAmp() const

HImageArray HImageArray::FreiAmp() const

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

HImage HImage::FreiAmp() const

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

IHImageX* HImageX.FreiAmp()

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

HImage HImage.FreiAmp()

Beschreibung

frei_ampfrei_ampFreiAmpfrei_ampFreiAmpFreiAmp berechnet eine Näherung der erster Ableitung der Grauwertdaten und wird als Kantenfilter eingesetzt. Dem Filter liegen folgende zwei Filtermasken zugrunde:

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

  B =
         1          0          -1
       sqrt(2)      0       -sqrt(2)
         1          0          -1
Im Ausgabebild ist die maximale Filterantwort der Maske A und B eingetragen.

Achtung

Beachten Sie, dass Filteroperatoren eventuell unerwartete Resultate ausgeben, wenn ein Bild mit einer reduzierten Domäne als Input übergeben wird. Weitere Informationen können im Kapitel Filter gefunden werden.

Parallelisierung

Parameter

ImageImageImageImageImageimage (input_object)  (multichannel-)image(-array) objectHImageHImageHImageHImageXHobject (byte / int2 / uint2)

Eingabebild.

ImageEdgeAmpImageEdgeAmpImageEdgeAmpImageEdgeAmpImageEdgeAmpimageEdgeAmp (output_object)  (multichannel-)image(-array) objectHImageHImageHImageHImageXHobject * (byte / int2 / uint2)

Kantenamplitude.

Beispiel (HDevelop)

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

Beispiel (C)

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

Beispiel (HDevelop)

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

Beispiel (HDevelop)

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

Beispiel (HDevelop)

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

Beispiel (HDevelop)

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

Ergebnis

frei_ampfrei_ampFreiAmpfrei_ampFreiAmpFreiAmp liefert immer den Wert 2 (H_MSG_TRUE). Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt sich mittels set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

binomial_filterbinomial_filterBinomialFilterbinomial_filterBinomialFilterBinomialFilter, gauss_filtergauss_filterGaussFiltergauss_filterGaussFilterGaussFilter, sigma_imagesigma_imageSigmaImagesigma_imageSigmaImageSigmaImage, median_imagemedian_imageMedianImagemedian_imageMedianImageMedianImage, smooth_imagesmooth_imageSmoothImagesmooth_imageSmoothImageSmoothImage

Alternativen

sobel_ampsobel_ampSobelAmpsobel_ampSobelAmpSobelAmp, kirsch_ampkirsch_ampKirschAmpkirsch_ampKirschAmpKirschAmp, prewitt_ampprewitt_ampPrewittAmpprewitt_ampPrewittAmpPrewittAmp, robinson_amprobinson_ampRobinsonAmprobinson_ampRobinsonAmpRobinsonAmp, robertsrobertsRobertsrobertsRobertsRoberts

Siehe auch

bandpass_imagebandpass_imageBandpassImagebandpass_imageBandpassImageBandpassImage, laplace_of_gausslaplace_of_gaussLaplaceOfGausslaplace_of_gaussLaplaceOfGaussLaplaceOfGauss

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren