critical_points_sub_pix
— Subpixelgenaue Detektion von kritischen Punkten in einem Bild.
critical_points_sub_pix(Image : : Filter, Sigma, Threshold : RowMin, ColumnMin, RowMax, ColumnMax, RowSaddle, ColumnSaddle)
critical_points_sub_pix
extrahiert subpixelgenau kritische Punkte,
also lokale Maxima, lokale Minima und Sattelpunkte, aus dem Bild
Image
.
Zur Detektion der kritischen Punkte wird das Eingangsbild in jedem Punkt
durch ein quadratisches Polynom in x und y approximiert und dieses auf
Extremstellen und 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
, dann liegt ein Extrem- oder Sattelpunkt
vor. Die Eigenwerte entsprechen der Krümmung der Grauwertoberfläche. Sind
beide Eigenwerte negativ, so liegt ein lokales Maximum vor, sind beide
positiv, ein lokales Minimum; bei unterschiedlichen Vorzeichen liegt ein
Sattelpunkt vor.
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)
Eingabebild.
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
RowMin
(output_control) point.y-array →
(real)
Zeilenkoordinaten der gefundenen Minima.
ColumnMin
(output_control) point.x-array →
(real)
Spaltenkoordinaten der gefundenen Minima.
RowMax
(output_control) point.y-array →
(real)
Zeilenkoordinaten der gefundenen Maxima.
ColumnMax
(output_control) point.x-array →
(real)
Spaltenkoordinaten der gefundenen Maxima.
RowSaddle
(output_control) point.y-array →
(real)
Zeilenkoordinaten der gefundenen Sattelpunkte.
ColumnSaddle
(output_control) point.x-array →
(real)
Spaltenkoordinaten der gefundenen Sattelpunkte.
Sind die Parameterwerte korrekt und tritt kein Fehler während der
Berechnung auf, liefert critical_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
local_min_sub_pix
,
local_max_sub_pix
,
saddle_points_sub_pix
local_min
,
local_max
,
plateaus
,
plateaus_center
,
lowlands
,
lowlands_center
Foundation