KlassenKlassenKlassenKlassen | | | | Operatoren

saddle_points_sub_pixT_saddle_points_sub_pixSaddlePointsSubPixsaddle_points_sub_pixSaddlePointsSubPixSaddlePointsSubPix (Operator)

Name

saddle_points_sub_pixT_saddle_points_sub_pixSaddlePointsSubPixsaddle_points_sub_pixSaddlePointsSubPixSaddlePointsSubPix — Subpixelgenaue Detektion von Sattelpunkten in einem Bild.

Signatur

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

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

Herror saddle_points_sub_pix(Hobject Image, const HTuple& Filter, const HTuple& Sigma, const HTuple& Threshold, HTuple* Row, HTuple* Column)

HTuple HImage::SaddlePointsSubPix(const HTuple& Filter, const HTuple& Sigma, const HTuple& Threshold, HTuple* Column) const

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

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

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

void HOperatorSetX.SaddlePointsSubPix(
[in] IHUntypedObjectX* Image, [in] VARIANT Filter, [in] VARIANT Sigma, [in] VARIANT Threshold, [out] VARIANT* Row, [out] VARIANT* Column)

VARIANT HImageX.SaddlePointsSubPix(
[in] BSTR Filter, [in] double Sigma, [in] double Threshold, [out] VARIANT* Column)

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

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

Beschreibung

saddle_points_sub_pixsaddle_points_sub_pixSaddlePointsSubPixsaddle_points_sub_pixSaddlePointsSubPixSaddlePointsSubPix 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 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 ihrem Betrage nach größer als ThresholdThresholdThresholdThresholdThresholdthreshold und weisen sie unterschiedliche Vorzeichen auf, dann liegt ein Sattelpunkt vor. Die Eigenwerte entsprechen der Krümmung der Grauwertoberfläche.

saddle_points_sub_pixsaddle_points_sub_pixSaddlePointsSubPixsaddle_points_sub_pixSaddlePointsSubPixSaddlePointsSubPix 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.

Parallelisierung

Parameter

ImageImageImageImageImageimage (input_object)  singlechannelimage objectHImageHImageHImageHImageXHobject (byte / int1 / int2 / uint2 / int4 / real)

Eingabebilder.

FilterFilterFilterFilterFilterfilter (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (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 HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (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 HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (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 HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Zeilenkoordinaten der gefundenen Sattelpunkte.

ColumnColumnColumnColumnColumncolumn (output_control)  point.x-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Spaltenkoordinaten der gefundenen Sattelpunkte.

Ergebnis

Sind die Parameterwerte korrekt und tritt kein Fehler während der Berechnung auf, liefert saddle_points_sub_pixsaddle_points_sub_pixSaddlePointsSubPixsaddle_points_sub_pixSaddlePointsSubPixSaddlePointsSubPix 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>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Nachfolger

gen_cross_contour_xldgen_cross_contour_xldGenCrossContourXldgen_cross_contour_xldGenCrossContourXldGenCrossContourXld, disp_crossdisp_crossDispCrossdisp_crossDispCrossDispCross

Alternativen

critical_points_sub_pixcritical_points_sub_pixCriticalPointsSubPixcritical_points_sub_pixCriticalPointsSubPixCriticalPointsSubPix, local_min_sub_pixlocal_min_sub_pixLocalMinSubPixlocal_min_sub_pixLocalMinSubPixLocalMinSubPix, local_max_sub_pixlocal_max_sub_pixLocalMaxSubPixlocal_max_sub_pixLocalMaxSubPixLocalMaxSubPix

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren