points_harris_binomialT_points_harris_binomialPointsHarrisBinomialPointsHarrisBinomialpoints_harris_binomial (Operator)

Name

points_harris_binomialT_points_harris_binomialPointsHarrisBinomialPointsHarrisBinomialpoints_harris_binomial — Detect points of interest using the binomial approximation of the Harris operator.

Signature

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   (Windows only)

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]]

Description

points_harrispoints_harrisPointsHarrisPointsHarrisPointsHarrispoints_harris extracts points of interest from an image ImageImageImageImageimageimage. The Harris operator is based upon the smoothed matrix where stands for a Binomial smoothing of size MaskSizeSmoothMaskSizeSmoothMaskSizeSmoothMaskSizeSmoothmaskSizeSmoothmask_size_smooth and and are the first derivatives of the image, computed with a Sobel filter of size MaskSizeGradMaskSizeGradMaskSizeGradMaskSizeGradmaskSizeGradmask_size_grad. The resulting points are the positive local extrema of If necessary, they can be restricted to points with a minimum filter response of ThresholdThresholdThresholdThresholdthresholdthreshold. By default the coordinates of the points are calculated with subpixel accuracy. This can be turned off by setting the parameter SubpixSubpixSubpixSubpixsubpixsubpix to 'off'.

Attention

Note that filter operators may return unexpected results if an image with a reduced domain is used as input. Please refer to the chapter Filters.

Execution Information

Parameters

ImageImageImageImageimageimage (input_object)  (multichannel-)image objectHImageHObjectHImageHobject (byte / uint2)

Input image.

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

Amount of binomial smoothing used for the calculation of the gradient.

Default value: 5

Suggested values: 3, 5, 7, 9, 11, 15, 21, 31

Typical range of values: 3 ≤ MaskSizeGrad MaskSizeGrad MaskSizeGrad MaskSizeGrad maskSizeGrad mask_size_grad ≤ 50

Recommended increment: 2

Restriction: MaskSizeGrad > 0

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

Amount of smoothing used for the integration of the gradients.

Default value: 15

Suggested values: 3, 5, 7, 9, 11, 15, 21, 31

Typical range of values: 3 ≤ MaskSizeSmooth MaskSizeSmooth MaskSizeSmooth MaskSizeSmooth maskSizeSmooth mask_size_smooth ≤ 50

Recommended increment: 2

Restriction: MaskSizeSmooth > 0

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

Weight of the squared trace of the squared gradient matrix.

Default value: 0.08

Suggested values: 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08

Typical range of values: 0.001 ≤ Alpha Alpha Alpha Alpha alpha alpha ≤ 0.1

Minimum increment: 0.001

Recommended increment: 0.01

Restriction: Alpha > 0.0

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

Minimum filter response for the points.

Default value: 1000.0

Restriction: Threshold >= 0.0

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

Turn on or off subpixel refinement.

Default value: 'on' "on" "on" "on" "on" "on"

List of values: '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)

Row coordinates of the detected points.

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

Column coordinates of the detected points.

Result

points_harrispoints_harrisPointsHarrisPointsHarrisPointsHarrispoints_harris returns TRUE if all parameters are correct and no error occurs during the execution. If the input is empty the behavior can be set via 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>). If necessary, an exception is raised.

Possible Successors

gen_cross_contour_xldgen_cross_contour_xldGenCrossContourXldGenCrossContourXldGenCrossContourXldgen_cross_contour_xld

Alternatives

points_foerstnerpoints_foerstnerPointsFoerstnerPointsFoerstnerPointsFoerstnerpoints_foerstner, points_harrispoints_harrisPointsHarrisPointsHarrisPointsHarrispoints_harris, points_lepetitpoints_lepetitPointsLepetitPointsLepetitPointsLepetitpoints_lepetit, points_sojkapoints_sojkaPointsSojkaPointsSojkaPointsSojkapoints_sojka

References

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.

Module

Foundation