| Operatoren |
info_edges — Abfragen der Filterkoeffizienten der Filter aus edges_image.
info_edges liefert die Filterkoeffizienten Coeffs und eine Abschätzung des Einzugsgebiets Size der in der Routine edges_image verwendeten Filter. Dazu werden die zugrundeliegenden kontinuierlichen Impulsantworten der Filter abgetastet, bis ein Filterkoeffizient kleiner als fünf Prozent des Maximalkoeffizienten ist. Alpha ist der Filterparameter (siehe edges_image). Es werden sieben Kantenoperatoren unterstützt (Parameter Filter):
'deriche1', 'lanser1', 'deriche2', 'lanser2', 'shen', 'mshen' und 'canny'.
Über den Parameter Mode ('edge'/'smooth') wird festgelegt, ob der entsprechende Kanten- oder Glättungsfilter gemeint ist.
Der Canny-Operator (der sich auf die Gaußfunktion abstützt) wurde dabei konventionell mittels Filtermasken implementiert. Im Falle der Canny-Filter werden daher die Filterkoeffizienten der eindimensionalen Impulsantworten in Coeffs zurückgeliefert. Alle anderen Filter sind rekursiv implementiert. Hierbei werden die Koeffizienten Coeffs einer entsprechenden nicht-rekursiven Implementierung des Filters zurückgegeben.
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.
Name des Kanten-Operators.
Defaultwert: 'lanser2'
Werteliste: 'canny', 'deriche1', 'deriche2', 'lanser1', 'lanser2', 'mshen', 'shen'
1D-Kantenfilter ('edge') oder 1D-Glättungsfilter ('smooth').
Defaultwert: 'edge'
Werteliste: 'edge', 'smooth'
Filterparameter: kleine Werte bewirken starke Glättung, also auch weniger Bilddetails (bei canny umgekehrt).
Defaultwert: 0.5
Typischer Wertebereich: 0.2 ≤ Alpha ≤ 50.0
Minimale Schrittweite: 0.01
Empfohlene Schrittweite: 0.1
Restriktion: Alpha > 0.0
Größe des Einzugsgebietes des Filters in Pixeln.
Falls Cannyfilter: Koeffizienten der „positiven“ Hälfte der 1D-Impulsantwort. Alle anderen: Koeffizienten einer entsprechenden nicht-rekursiven Implementierung des Filters.
read_image(Image,'fabrik')
info_edges('lanser2','edge',0.5,Size,Coeffs)
edges_image(Image,Amp,Dir,'lanser2',0.5,'none',-1,-1)
hysteresis_threshold(Amp,Margin,20,30,30)
Sind die Parameterwerte korrekt, dann liefert info_edges den Wert 2 (H_MSG_TRUE). Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt sich mittels set_system('no_object_result',<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
edges_image, threshold, skeleton
Foundation
| Operatoren |