local_max_sub_pixT_local_max_sub_pixLocalMaxSubPixLocalMaxSubPixlocal_max_sub_pix (算子)

名称

local_max_sub_pixT_local_max_sub_pixLocalMaxSubPixLocalMaxSubPixlocal_max_sub_pix — 图像中局部最大值的亚像素精度检测。

签名

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

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

描述

local_max_sub_pixlocal_max_sub_pixLocalMaxSubPixLocalMaxSubPixLocalMaxSubPixlocal_max_sub_pix extracts local maxima from the image ImageImageImageImageimageimage with subpixel precision. To do so, in each point the input image is approximated by a quadratic polynomial in x and y and subsequently the polynomial is examined for local maxima. The partial derivatives, which are necessary for setting up the polynomial, are calculated either with various Gaussian derivatives or using the facet model, depending on FilterFilterFilterFilterfilterfilter. In the first case, SigmaSigmaSigmaSigmasigmasigma determines the size of the Gaussian kernels, while in the second case, before being processed the input image is smoothed by a Gaussian whose size is determined by SigmaSigmaSigmaSigmasigmasigma. Therefore, 'facet'"facet""facet""facet""facet""facet" results in a faster extraction at the expense of slightly less accurate results. A point is accepted to be a local maximum if both eigenvalues of the Hessian matrix are smaller than -ThresholdThresholdThresholdThresholdthresholdthreshold. The eigenvalues correspond to the curvature of the gray value surface.

注意

请注意,若使用域缩减后的图像作为输入,滤波器算子可能会返回意外结果。请参阅 滤波器 一章

执行信息

参数

ImageImageImageImageimageimage (输入对象)  singlechannelimage objectHImageHObjectHImageHobject (byte / int1 / int2 / uint2 / int4 / real)

输入图像。

FilterFilterFilterFilterfilterfilter (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Method for the calculation of the partial derivatives.

默认值: 'facet' "facet" "facet" "facet" "facet" "facet"

值列表: 'facet'"facet""facet""facet""facet""facet", 'gauss'"gauss""gauss""gauss""gauss""gauss"

SigmaSigmaSigmaSigmasigmasigma (输入控制)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Sigma of the Gaussian. If FilterFilterFilterFilterfilterfilter is 'facet', SigmaSigmaSigmaSigmasigmasigma may be 0.0 to avoid the smoothing of the input image.

建议值: 0.7, 0.8, 0.9, 1.0, 1.2, 1.5, 2.0, 3.0

限制: Sigma >= 0.0

ThresholdThresholdThresholdThresholdthresholdthreshold (输入控制)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Minimum absolute value of the eigenvalues of the Hessian matrix.

默认值: 5.0

建议值: 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0

限制: Threshold >= 0.0

RowRowRowRowrowrow (输出控制)  point.y-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Row coordinates of the detected maxima.

ColumnColumnColumnColumncolumncolumn (输出控制)  point.x-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Column coordinates of the detected maxima.

结果

local_max_sub_pixlocal_max_sub_pixLocalMaxSubPixLocalMaxSubPixLocalMaxSubPixlocal_max_sub_pix returns 2 ( H_MSG_TRUE) if all parameters are correct and no error occurs during the execution. 如果输入为空则可设置行为通过 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>)。如有必要,则抛出异常。

可能的后继

gen_cross_contour_xldgen_cross_contour_xldGenCrossContourXldGenCrossContourXldGenCrossContourXldgen_cross_contour_xld, disp_crossdisp_crossDispCrossDispCrossDispCrossdisp_cross

替代

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

另见

local_maxlocal_maxLocalMaxLocalMaxLocalMaxlocal_max, plateausplateausPlateausPlateausPlateausplateaus, plateaus_centerplateaus_centerPlateausCenterPlateausCenterPlateausCenterplateaus_center

模块

基础