points_harris_binomialT_points_harris_binomialPointsHarrisBinomialPointsHarrisBinomialpoints_harris_binomial (Operator)

Name

points_harris_binomialT_points_harris_binomialPointsHarrisBinomialPointsHarrisBinomialpoints_harris_binomial — Suche nach signifikanten Punkten mittels der binomialen Approximation des Harris-Operators.

Signatur

points_harris_binomial(Image : : MaskSizeGrad, MaskSizeSmooth, Alpha, Threshold, Subpix : Row, Column)

Herror T_points_harris_binomial(const Hobject Image, const Htuple MaskSizeGrad, const Htuple MaskSizeSmooth, const Htuple Alpha, const Htuple Threshold, const Htuple Subpix, Htuple* Row, Htuple* Column)

void PointsHarrisBinomial(const HObject& Image, const HTuple& MaskSizeGrad, const HTuple& MaskSizeSmooth, const HTuple& Alpha, const HTuple& Threshold, const HTuple& Subpix, HTuple* Row, HTuple* Column)

void HImage::PointsHarrisBinomial(Hlong MaskSizeGrad, Hlong MaskSizeSmooth, double Alpha, const HTuple& Threshold, const HString& Subpix, HTuple* Row, HTuple* Column) const

void HImage::PointsHarrisBinomial(Hlong MaskSizeGrad, Hlong MaskSizeSmooth, double Alpha, double Threshold, const HString& Subpix, HTuple* Row, HTuple* Column) const

void HImage::PointsHarrisBinomial(Hlong MaskSizeGrad, Hlong MaskSizeSmooth, double Alpha, double Threshold, const char* Subpix, HTuple* Row, HTuple* Column) const

void HImage::PointsHarrisBinomial(Hlong MaskSizeGrad, Hlong MaskSizeSmooth, double Alpha, double Threshold, const wchar_t* Subpix, HTuple* Row, HTuple* Column) const   (Nur Windows)

static void HOperatorSet.PointsHarrisBinomial(HObject image, HTuple maskSizeGrad, HTuple maskSizeSmooth, HTuple alpha, HTuple threshold, HTuple subpix, out HTuple row, out HTuple column)

void HImage.PointsHarrisBinomial(int maskSizeGrad, int maskSizeSmooth, double alpha, HTuple threshold, string subpix, out HTuple row, out HTuple column)

void HImage.PointsHarrisBinomial(int maskSizeGrad, int maskSizeSmooth, double alpha, double threshold, string subpix, out HTuple row, out HTuple column)

def points_harris_binomial(image: HObject, mask_size_grad: int, mask_size_smooth: int, alpha: float, threshold: Union[float, int], subpix: str) -> Tuple[Sequence[float], Sequence[float]]

Beschreibung

points_harris_binomialpoints_harris_binomialPointsHarrisBinomialPointsHarrisBinomialPointsHarrisBinomialpoints_harris_binomial extrahiert signifikante Punkte aus dem Bild ImageImageImageImageimageimage. Der Harris Operator-basiert auf der geglätteten Matrix wobei für eine Binomiale Glättung der Größe MaskSizeSmoothMaskSizeSmoothMaskSizeSmoothMaskSizeSmoothmaskSizeSmoothmask_size_smooth und und für die ersten Ableitungen des Bildes stehen. Die Ableitungen werden mittels eines Sobelfilters der Größe MaskSizeGradMaskSizeGradMaskSizeGradMaskSizeGradmaskSizeGradmask_size_grad implementiert. Die resultierenden Punkte sind dann die positiven lokalen Maxima von Nötigenfalls können die extrahierten Punkte auf diejenigen mit einer minimalen Filterantwort von ThresholdThresholdThresholdThresholdthresholdthreshold eingeschränkt werden. Die Koordinaten der Punkte können durch setzen des Parameters SubpixSubpixSubpixSubpixsubpixsubpix auf 'on' (Default) mit Subpixelgenauigkeit berechnet werden. Die Subpixelverfeinerung ist jedoch durch setzen des Parameters auf 'off' auch abschaltbar.

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)  (multichannel-)image objectHImageHObjectHImageHobject (byte / uint2)

Eingabebild.

MaskSizeGradMaskSizeGradMaskSizeGradMaskSizeGradmaskSizeGradmask_size_grad (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Stärke der Glättung (Binomial) zur Berechnung des Gradienten.

Defaultwert: 5

Wertevorschläge: 3, 5, 7, 9, 11, 15, 21, 31

Typischer Wertebereich: 1 ≤ MaskSizeGrad MaskSizeGrad MaskSizeGrad MaskSizeGrad maskSizeGrad mask_size_grad

Empfohlene Schrittweite: 2

MaskSizeSmoothMaskSizeSmoothMaskSizeSmoothMaskSizeSmoothmaskSizeSmoothmask_size_smooth (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Stärke der Glättung zur Integration der Gradienten.

Defaultwert: 15

Wertevorschläge: 3, 5, 7, 9, 11, 15, 21, 31

Typischer Wertebereich: 1 ≤ MaskSizeSmooth MaskSizeSmooth MaskSizeSmooth MaskSizeSmooth maskSizeSmooth mask_size_smooth

Empfohlene Schrittweite: 2

AlphaAlphaAlphaAlphaalphaalpha (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Gewichtung der quadrierten Spur der Matrix der quadrierten Gradienten.

Defaultwert: 0.08

Wertevorschläge: 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08

Typischer Wertebereich: 0.0 ≤ Alpha Alpha Alpha Alpha alpha alpha

Minimale Schrittweite: 0.001

Empfohlene Schrittweite: 0.01

ThresholdThresholdThresholdThresholdthresholdthreshold (input_control)  number HTupleUnion[float, int]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Minimale Filterantwort der Punkte.

Defaultwert: 1000.0

Typischer Wertebereich: 0.0 ≤ Threshold Threshold Threshold Threshold threshold threshold

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

Subpixelgenauigkeit der Filterantworten an oder abschalten.

Defaultwert: 'on' "on" "on" "on" "on" "on"

Werteliste: 'off'"off""off""off""off""off", 'on'"on""on""on""on""on"

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

Zeilenkoordinaten der gefundenen Punkte.

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

Spaltenkoordinaten der gefundenen Punkte.

Ergebnis

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

Alternativen

points_foerstnerpoints_foerstnerPointsFoerstnerPointsFoerstnerPointsFoerstnerpoints_foerstner, points_harrispoints_harrisPointsHarrisPointsHarrisPointsHarrispoints_harris, points_lepetitpoints_lepetitPointsLepetitPointsLepetitPointsLepetitpoints_lepetit, points_sojkapoints_sojkaPointsSojkaPointsSojkaPointsSojkapoints_sojka

Literatur

C. Harris, M. Stephens: „A combined corner and edge detector“. Proceedings of the 4th Alvey Vision Conference, pp. 147-151, 1988.
V. Gouet, N.Boujemaa: „Object-based queries using color points of interest“. IEEE Workshop on Content-Based Access of Image and Video Libraries, CVPR/CBAIVL 2001, Hawaii, USA, 2001.

Modul

Foundation