points_harris_binomial T_points_harris_binomial PointsHarrisBinomial PointsHarrisBinomial points_harris_binomial (Operator)
Name
points_harris_binomial T_points_harris_binomial PointsHarrisBinomial PointsHarrisBinomial points_harris_binomial
— Detect points of interest using the binomial approximation of the Harris
operator.
Signature
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 )
Description
points_harris points_harris PointsHarris PointsHarris PointsHarris points_harris
extracts points of interest from an image
Image Image Image Image image image
. The Harris operator is based upon the smoothed matrix
where
stands for a Binomial smoothing of size
MaskSizeSmooth MaskSizeSmooth MaskSizeSmooth MaskSizeSmooth maskSizeSmooth mask_size_smooth
and
and
are
the first derivatives of the image, computed with a Sobel
filter of size MaskSizeGrad MaskSizeGrad MaskSizeGrad MaskSizeGrad maskSizeGrad mask_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 Threshold Threshold Threshold Threshold threshold threshold
. By default the coordinates of the points
are calculated with subpixel accuracy. This can be turned off by setting
the parameter Subpix Subpix Subpix Subpix subpix subpix
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
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Automatically parallelized on internal data level.
Parameters
Image Image Image Image image image
(input_object) (multichannel-)image →
object HImage HObject HImage Hobject (byte / uint2)
Input image.
MaskSizeGrad MaskSizeGrad MaskSizeGrad MaskSizeGrad maskSizeGrad mask_size_grad
(input_control) integer →
HTuple int HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Amount of binomial smoothing used for the calculation
of the gradient.
Default:
5
Suggested values:
3, 5, 7, 9, 11, 15, 21, 31
Value range:
1
≤
MaskSizeGrad
MaskSizeGrad
MaskSizeGrad
MaskSizeGrad
maskSizeGrad
mask_size_grad
Recommended increment:
2
MaskSizeSmooth MaskSizeSmooth MaskSizeSmooth MaskSizeSmooth maskSizeSmooth mask_size_smooth
(input_control) integer →
HTuple int HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Amount of smoothing used for the integration of the
gradients.
Default:
15
Suggested values:
3, 5, 7, 9, 11, 15, 21, 31
Value range:
1
≤
MaskSizeSmooth
MaskSizeSmooth
MaskSizeSmooth
MaskSizeSmooth
maskSizeSmooth
mask_size_smooth
Recommended increment:
2
Alpha Alpha Alpha Alpha alpha alpha
(input_control) real →
HTuple float HTuple Htuple (real) (double ) (double ) (double )
Weight of the squared trace of the squared gradient
matrix.
Default:
0.08
Suggested values:
0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08
Value range:
0.0
≤
Alpha
Alpha
Alpha
Alpha
alpha
alpha
Minimum increment:
0.001
Recommended increment:
0.01
Threshold Threshold Threshold Threshold threshold threshold
(input_control) number →
HTuple Union[float, int] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Minimum filter response for the points.
Default:
1000.0
Value range:
0.0
≤
Threshold
Threshold
Threshold
Threshold
threshold
threshold
Subpix Subpix Subpix Subpix subpix subpix
(input_control) string →
HTuple str HTuple Htuple (string) (string ) (HString ) (char* )
Turn on or off subpixel refinement.
Default:
'on'
"on"
"on"
"on"
"on"
"on"
List of values:
'off' "off" "off" "off" "off" "off" , 'on' "on" "on" "on" "on" "on"
Row Row Row Row row row
(output_control) point.y-array →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Row coordinates of the detected points.
Column Column Column Column column column
(output_control) point.x-array →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Column coordinates of the detected points.
Result
points_harris points_harris PointsHarris PointsHarris PointsHarris points_harris
returns 2 (
H_MSG_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_xld gen_cross_contour_xld GenCrossContourXld GenCrossContourXld GenCrossContourXld gen_cross_contour_xld
Alternatives
points_foerstner points_foerstner PointsFoerstner PointsFoerstner PointsFoerstner points_foerstner
,
points_harris points_harris PointsHarris PointsHarris PointsHarris points_harris
,
points_lepetit points_lepetit PointsLepetit PointsLepetit PointsLepetit points_lepetit
,
points_sojka points_sojka PointsSojka PointsSojka PointsSojka points_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