Name
robertsrobertsRobertsrobertsRobertsRoberts — Kantendetektion mit dem Roberts-Filter.
robertsrobertsRobertsrobertsRobertsRoberts berechnet die erste Ableitung der
Grauwertdaten und wird als Kantenfilter eingesetzt. Legt man
folgende Maske zugrunde,
A B
C D
dann leiten sich die verschiedenen Filtertypen wie folgt ab:
'roberts_max' max(| A - D |,| B - C |)
'gradient_max' max(| A + B - (C + D)|,| A + C - (B + D)|)
'gradient_sum' |A + B - (C + D)| + |A + C - (B + D)|
Tritt ein Überlauf ein, so werden die Werte beschnitten. Das
Ergebnis der Berechnung wird in dem Pixel mit den Koordinaten von
"D" abgelegt.
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.
- 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.
Gefilterte Ausgabebilder.
Filtertyp.
Defaultwert:
'gradient_sum'
"gradient_sum"
"gradient_sum"
"gradient_sum"
"gradient_sum"
"gradient_sum"
Werteliste: 'gradient_max'"gradient_max""gradient_max""gradient_max""gradient_max""gradient_max", 'gradient_sum'"gradient_sum""gradient_sum""gradient_sum""gradient_sum""gradient_sum", 'roberts_max'"roberts_max""roberts_max""roberts_max""roberts_max""roberts_max"
read_image(Image,'fabrik')
roberts(Image,Roberts,'roberts_max')
threshold(Roberts,Margin,128,255)
read_image(&Image,"fabrik");
roberts(Image,&Roberts,"roberts_max");
threshold(Roberts,&Margin,128.0,255.0);
read_image(Image,'fabrik')
roberts(Image,Roberts,'roberts_max')
threshold(Roberts,Margin,128,255)
read_image(Image,'fabrik')
roberts(Image,Roberts,'roberts_max')
threshold(Roberts,Margin,128,255)
read_image(Image,'fabrik')
roberts(Image,Roberts,'roberts_max')
threshold(Roberts,Margin,128,255)
read_image(Image,'fabrik')
roberts(Image,Roberts,'roberts_max')
threshold(Roberts,Margin,128,255)
robertsrobertsRobertsrobertsRobertsRoberts liefert den Wert 2 (H_MSG_TRUE), falls die Parameter
korrekt sind. 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.
binomial_filterbinomial_filterBinomialFilterbinomial_filterBinomialFilterBinomialFilter,
gauss_filtergauss_filterGaussFiltergauss_filterGaussFilterGaussFilter
thresholdthresholdThresholdthresholdThresholdThreshold,
skeletonskeletonSkeletonskeletonSkeletonSkeleton
edges_imageedges_imageEdgesImageedges_imageEdgesImageEdgesImage,
sobel_ampsobel_ampSobelAmpsobel_ampSobelAmpSobelAmp,
frei_ampfrei_ampFreiAmpfrei_ampFreiAmpFreiAmp,
kirsch_ampkirsch_ampKirschAmpkirsch_ampKirschAmpKirschAmp,
prewitt_ampprewitt_ampPrewittAmpprewitt_ampPrewittAmpPrewittAmp
laplacelaplaceLaplacelaplaceLaplaceLaplace,
highpass_imagehighpass_imageHighpassImagehighpass_imageHighpassImageHighpassImage,
bandpass_imagebandpass_imageBandpassImagebandpass_imageBandpassImageBandpassImage
Foundation