local_max_sub_pixT_local_max_sub_pixLocalMaxSubPixLocalMaxSubPixlocal_max_sub_pix (Operator)

Name

local_max_sub_pixT_local_max_sub_pixLocalMaxSubPixLocalMaxSubPixlocal_max_sub_pix — Subpixelgenaue Detektion von lokalen Maxima in einem Bild.

Signatur

local_max_sub_pix(Image : : Filter, Sigma, Threshold : Row, Column)

Herror T_local_max_sub_pix(const Hobject Image, const Htuple Filter, const Htuple Sigma, const Htuple Threshold, Htuple* Row, Htuple* Column)

void LocalMaxSubPix(const HObject& Image, const HTuple& Filter, const HTuple& Sigma, const HTuple& Threshold, HTuple* Row, HTuple* Column)

void HImage::LocalMaxSubPix(const HString& Filter, double Sigma, double Threshold, HTuple* Row, HTuple* Column) const

void HImage::LocalMaxSubPix(const char* Filter, double Sigma, double Threshold, HTuple* Row, HTuple* Column) const

void HImage::LocalMaxSubPix(const wchar_t* Filter, double Sigma, double Threshold, HTuple* Row, HTuple* Column) const   (Nur Windows)

static void HOperatorSet.LocalMaxSubPix(HObject image, HTuple filter, HTuple sigma, HTuple threshold, out HTuple row, out HTuple column)

void HImage.LocalMaxSubPix(string filter, double sigma, double threshold, out HTuple row, out HTuple column)

def local_max_sub_pix(image: HObject, filter: str, sigma: float, threshold: float) -> Tuple[Sequence[float], Sequence[float]]

Beschreibung

local_max_sub_pixlocal_max_sub_pixLocalMaxSubPixLocalMaxSubPixLocalMaxSubPixlocal_max_sub_pix extrahiert subpixelgenau lokale Maxima aus einem Bild ImageImageImageImageimageimage. Zur Detektion der lokalen Maxima wird das Eingangsbild in jedem Punkt durch ein quadratisches Polynom in x und y approximiert und dieses auf lokale Maxima hin untersucht. Um das Polynom aufzustellen, werden die partiellen Ableitungen abhängig von FilterFilterFilterFilterfilterfilter entweder mit verschiedenen Ableitungen der Gaußfunktion oder nach dem Facet-Modell berechnet. Im ersten Fall bestimmt SigmaSigmaSigmaSigmasigmasigma 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 SigmaSigmaSigmaSigmasigmasigma. Der Modus 'facet'"facet""facet""facet""facet""facet" ist damit etwas schneller, liefert aber auch etwas ungenauere Resultate. Sind beide Eigenwerte der Hessematrix im untersuchten Punkt kleiner als -ThresholdThresholdThresholdThresholdthresholdthreshold, dann liegt ein lokales Maximum vor. Die Eigenwerte entsprechen der Krümmung der Grauwertoberfläche.

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

Parameter

ImageImageImageImageimageimage (input_object)  singlechannelimage objectHImageHObjectHImageHobject (byte / int1 / int2 / uint2 / int4 / real)

Eingabebilder.

FilterFilterFilterFilterfilterfilter (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Verfahren zur Berechnung der partiellen Ableitungen.

Defaultwert: 'facet' "facet" "facet" "facet" "facet" "facet"

Werteliste: 'facet'"facet""facet""facet""facet""facet", 'gauss'"gauss""gauss""gauss""gauss""gauss"

SigmaSigmaSigmaSigmasigmasigma (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Sigma der Gaußfunktion. Ist FilterFilterFilterFilterfilterfilter auf 'facet' gesetzt, kann SigmaSigmaSigmaSigmasigmasigma 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

ThresholdThresholdThresholdThresholdthresholdthreshold (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

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

RowRowRowRowrowrow (output_control)  point.y-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Zeilenkoordinaten der gefundenen Maxima.

ColumnColumnColumnColumncolumncolumn (output_control)  point.x-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Spaltenkoordinaten der gefundenen Maxima.

Ergebnis

Sind die Parameterwerte korrekt und tritt kein Fehler während der Berechnung auf, liefert local_max_sub_pixlocal_max_sub_pixLocalMaxSubPixLocalMaxSubPixLocalMaxSubPixlocal_max_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>)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.

Nachfolger

gen_cross_contour_xldgen_cross_contour_xldGenCrossContourXldGenCrossContourXldGenCrossContourXldgen_cross_contour_xld, disp_crossdisp_crossDispCrossDispCrossDispCrossdisp_cross

Alternativen

critical_points_sub_pixcritical_points_sub_pixCriticalPointsSubPixCriticalPointsSubPixCriticalPointsSubPixcritical_points_sub_pix, local_min_sub_pixlocal_min_sub_pixLocalMinSubPixLocalMinSubPixLocalMinSubPixlocal_min_sub_pix, saddle_points_sub_pixsaddle_points_sub_pixSaddlePointsSubPixSaddlePointsSubPixSaddlePointsSubPixsaddle_points_sub_pix

Siehe auch

local_maxlocal_maxLocalMaxLocalMaxLocalMaxlocal_max, plateausplateausPlateausPlateausPlateausplateaus, plateaus_centerplateaus_centerPlateausCenterPlateausCenterPlateausCenterplateaus_center

Modul

Foundation