points_harris — 使用哈里斯(Harris)算子检测兴趣点。
points_harris extracts points of interest from an image. The Harris
operator is based upon the smoothed matrix
where stands for a Gaussian smoothing of size
SigmaSmooth and and are
the first derivatives of each image channel, computed with Gaussian
derivatives of size SigmaGrad. The resulting points are the
positive local extrema of
If necessary, they can be restricted to points with a minimum filter
response of Threshold. The coordinates of the points are
calculated with subpixel accuracy.
points_harris uses a special implementation that is
optimized using SSE2 instructions if the system
parameter 'sse2_enable' is set to 'true' (which is
default if SSE2 is available on your machine). This implementation is
slightly inaccurate compared to the pure C version due to numerical issues
(for 'byte' images the difference in Row and Column is in
order of magnitude of 1.0e-5). If you prefer accuracy over performance
you can set 'sse2_enable' to 'false' (using
set_system) before you call points_harris. This way
points_harris does not use SSE2 accelerations. Don't forget to set
'sse2_enable' back to 'true' afterwards.
points_harris can be executed on an OpenCL device if both
SigmaGrad and SigmaSmooth induce a filter size of no more
than 129 pixels. This corresponds to a value of less than 20.7 for
both parameters. As with the SSE2 version, the results of the OpenCL
implementation may diverge slightly from that of pure C version due to
numerical issues.
请注意,若使用域缩减后的图像作为输入,滤波器算子可能会返回意外结果。请参阅 滤波器 一章
Image (输入对象) (multichannel-)image → object (byte* / uint2* / real*) *允许用于计算设备
输入图像。
SigmaGrad (输入控制) real → (real)
Amount of smoothing used for the calculation of the gradient.
默认值: 0.7
建议值: 0.7, 0.8, 0.9, 1.0, 1.2, 1.5, 2.0, 3.0
建议增量: 0.1
限制:
SigmaGrad > 0.0
SigmaSmooth (输入控制) real → (real)
Amount of smoothing used for the integration of the gradients.
默认值: 2.0
建议值: 0.7, 0.8, 0.9, 1.0, 1.2, 1.5, 2.0, 3.0
建议增量: 0.1
限制:
SigmaSmooth > 0.0
Alpha (输入控制) real → (real)
Weight of the squared trace of the squared gradient matrix.
默认值: 0.08
建议值: 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08
值范围:
0.0
≤
Alpha
最小增量: 0.001
建议增量: 0.01
Threshold (输入控制) number → (real / integer)
Minimum filter response for the points.
默认值: 1000.0
限制:
Threshold >= 0.0
Row (输出控制) point.y-array → (real)
Row coordinates of the detected points.
Column (输出控制) point.x-array → (real)
Column coordinates of the detected points.
points_harris returns 2 (H_MSG_TRUE)
if all parameters are correct
and no error occurs during the execution.当输入为空时,可设置行为通过算子 set_system('no_object_result',<Result>)。如有必要,则抛出异常。
points_foerstner,
points_lepetit,
points_harris_binomial
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.
基础