saddle_points_sub_pix
— Subpixelgenaue Detektion von Sattelpunkten in einem Bild.
saddle_points_sub_pix
extrahiert subpixelgenau Sattelpunkte aus
einem Bild, also Punkte, in denen entlang einer Richtung die
Bildintensität minimal ist, während sie gleichzeitig entlang einer
anderen Richtung maximal ist.
Zur Detektion der Sattelpunkte wird das Eingangsbild in jedem Punkt
durch ein quadratisches Polynom in x und y approximiert und dieses auf
Sattelpunkte hin untersucht. Um das Polynom aufzustellen,
werden die partiellen Ableitungen abhängig von Filter
entweder
mit verschiedenen Ableitungen der Gaußfunktion oder nach dem Facet-Modell
berechnet. Im ersten Fall bestimmt Sigma
die Größe der
verwendeten Gaußkerne, im zweiten Fall erfolgt vor der Berechnung der
partiellen Ableitungen eine Glättung des Eingabebildes mit einem Gaußfilter
der Größe Sigma
. Der Modus 'facet' ist
damit etwas schneller, liefert aber auch etwas ungenauere Resultate. Sind
beide Eigenwerte der Hessematrix im untersuchten Punkt ihrem Betrage nach
größer als Threshold
und weisen sie unterschiedliche Vorzeichen
auf, dann liegt ein Sattelpunkt vor. Die Eigenwerte entsprechen der
Krümmung der Grauwertoberfläche.
saddle_points_sub_pix
eignet sich besonders, um Ecken in einem Bild
aufzufinden, bei denen sich Felder unterschiedlicher Intensität in der Art
der schwarzen und weißen Felder eines Schachbretts berühren. Durch den
hohen Kontrast und die Formgebung wird das Auffinden und die genaue
Positionsbestimmung solcher Ecken besonders begünstigt.
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.
Image
(input_object) singlechannelimage →
object (byte / int1 / int2 / uint2 / int4 / real)
Eingabebilder.
Filter
(input_control) string →
(string)
Verfahren zur Berechnung der partiellen Ableitungen.
Defaultwert: 'facet'
Werteliste: 'facet' , 'gauss'
Sigma
(input_control) real →
(real)
Sigma der Gaußfunktion.
Ist Filter
auf 'facet' gesetzt, kann
Sigma
auf 0.0 gesetzt werden, um eine Glättung
des Eingangsbildes zu vermeiden.
Wertevorschläge: 0.7, 0.8, 0.9, 1.0, 1.2, 1.5, 2.0, 3.0
Restriktion: Sigma >= 0.0
Threshold
(input_control) real →
(real)
Mindestbetrag der Eigenwerte der Hessematrix.
Defaultwert: 5.0
Wertevorschläge: 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0
Restriktion: Threshold >= 0.0
Row
(output_control) point.y-array →
(real)
Zeilenkoordinaten der gefundenen Sattelpunkte.
Column
(output_control) point.x-array →
(real)
Spaltenkoordinaten der gefundenen Sattelpunkte.
Sind die Parameterwerte korrekt und tritt kein Fehler während der
Berechnung auf, liefert saddle_points_sub_pix
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.
gen_cross_contour_xld
,
disp_cross
critical_points_sub_pix
,
local_min_sub_pix
,
local_max_sub_pix
Foundation