prewitt_ampprewitt_ampPrewittAmpPrewittAmpprewitt_amp (Operator)
Name
prewitt_ampprewitt_ampPrewittAmpPrewittAmpprewitt_amp — Kantendetektion (Amplitude) mit dem Prewitt-Operator.
Signatur
def prewitt_amp(image: HObject) -> HObject
Beschreibung
prewitt_ampprewitt_ampPrewittAmpPrewittAmpPrewittAmpprewitt_amp berechnet eine Näherung der ersten
Ableitung der Grauwertdaten und wird als Kantenfilter eingesetzt.
Dem Filter liegen folgende zwei Filtermasken zugrunde:
A =
1 1 1
0 0 0
-1 -1 -1
B =
1 0 -1
1 0 -1
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.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
- Automatisch parallelisiert auf Kanalebene.
- Automatisch parallelisiert auf Domainebene.
Parameter
ImageImageImageImageimageimage (input_object) (multichannel-)image(-array) → objectHImageHObjectHImageHobject (byte / int2 / uint2)
Eingabebild.
ImageEdgeAmpImageEdgeAmpImageEdgeAmpImageEdgeAmpimageEdgeAmpimage_edge_amp (output_object) (multichannel-)image(-array) → objectHImageHObjectHImageHobject * (byte / int2 / uint2)
Kantenamplitude.
Beispiel (HDevelop)
read_image(Image,'fabrik')
prewitt_amp(Image,Prewitt)
threshold(Prewitt,Edges,128,255)
Beispiel (C)
read_image(&Image,"fabrik");
prewitt_amp(Image,&Prewitt);
threshold(Prewitt,&Edges,128,255);
Beispiel (HDevelop)
read_image(Image,'fabrik')
prewitt_amp(Image,Prewitt)
threshold(Prewitt,Edges,128,255)
Beispiel (HDevelop)
read_image(Image,'fabrik')
prewitt_amp(Image,Prewitt)
threshold(Prewitt,Edges,128,255)
Beispiel (HDevelop)
read_image(Image,'fabrik')
prewitt_amp(Image,Prewitt)
threshold(Prewitt,Edges,128,255)
Ergebnis
prewitt_ampprewitt_ampPrewittAmpPrewittAmpPrewittAmpprewitt_amp liefert immer den Wert 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>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)
festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
binomial_filterbinomial_filterBinomialFilterBinomialFilterBinomialFilterbinomial_filter,
gauss_filtergauss_filterGaussFilterGaussFilterGaussFiltergauss_filter,
sigma_imagesigma_imageSigmaImageSigmaImageSigmaImagesigma_image,
median_imagemedian_imageMedianImageMedianImageMedianImagemedian_image,
smooth_imagesmooth_imageSmoothImageSmoothImageSmoothImagesmooth_image
Nachfolger
thresholdthresholdThresholdThresholdThresholdthreshold,
gray_skeletongray_skeletonGraySkeletonGraySkeletonGraySkeletongray_skeleton,
nonmax_suppression_ampnonmax_suppression_ampNonmaxSuppressionAmpNonmaxSuppressionAmpNonmaxSuppressionAmpnonmax_suppression_amp,
close_edgesclose_edgesCloseEdgesCloseEdgesCloseEdgesclose_edges,
close_edges_lengthclose_edges_lengthCloseEdgesLengthCloseEdgesLengthCloseEdgesLengthclose_edges_length
Alternativen
sobel_ampsobel_ampSobelAmpSobelAmpSobelAmpsobel_amp,
kirsch_ampkirsch_ampKirschAmpKirschAmpKirschAmpkirsch_amp,
frei_ampfrei_ampFreiAmpFreiAmpFreiAmpfrei_amp,
robinson_amprobinson_ampRobinsonAmpRobinsonAmpRobinsonAmprobinson_amp,
robertsrobertsRobertsRobertsRobertsroberts
Siehe auch
bandpass_imagebandpass_imageBandpassImageBandpassImageBandpassImagebandpass_image,
laplace_of_gausslaplace_of_gaussLaplaceOfGaussLaplaceOfGaussLaplaceOfGausslaplace_of_gauss
Modul
Foundation