【机器视觉】 measure_thresh算子

【机器视觉】 measure_thresh算子00.目录文章目录00.目录01.概述02.签名03.描述04.注意05.参数06.结果07.附录01.概述measure_thresh-沿矩形或环形弧提取具有特定灰度值的点。02.签名measure_thresh(Image::MeasureHandle,Sigma,Threshold,Select:RowThresh,ColumnThresh,Distance)03.描述measure_thresh提取一维灰度值分布图内的灰度值等于指定的阈值

大家好,欢迎来到IT知识分享网。【机器视觉】

00. 目录

01. 概述

measure_thresh – 沿矩形或环形弧提取具有特定灰度值的点。

02. 签名

measure_thresh(Image : : MeasureHandle, Sigma, Threshold, Select : RowThresh, ColumnThresh, Distance)

03. 描述

measure_thresh提取一维灰度值分布图内的灰度值等于指定的阈值Threshold的点。 将灰度值轮廓投影到与参数MeasureHandle一起传递的度量矩形的长轴上,因此在灰度值轮廓内计算的阈值点对应于确定图像坐标上的矩形长轴。算子结果RowThresh和ColumnThresh返回这些坐标。

如果灰度值轮廓与阈值线相交数次,则参数Select将确定要返回哪些值。 可能的设置是“first”,“last”,“first_last”(第一个和最后一个)或“all”。 对于最后两种情况,Distance中返回计算点之间的距离。

通过平均所有线段的灰度值来创建灰度值轮廓,所述线段由度量矩形定义如下:

1.分段垂直于矩形的长轴,

2.它们有一个到矩形中心的整数距离,

3.线段限定在矩形内。

对于每一个线段,计算与长轴具有整数距离的所有点的灰度值的平均值。 由于测量矩形相对于图像坐标存在平移和旋转,输入图像Image通常在亚像素位置被采样。

由于这涉及可以在多个投影中重复使用的一些计算,所以使用算子gen_measure_rectangle2预先执行一次这些计算。 在这里,测量对象MeasureHandle被生成,并且可以选择不同的插值方案。

原文描述

measure_thresh extracts points for which the gray value within an one-dimensional gray value profile is equal to the specified threshold Threshold. The gray value profile is projected onto the major axis of the measure rectangle which is passed with the parameter MeasureHandle, so the threshold points calculated within the gray value profile correspond to certain image coordinates on the rectangle’s major axis. These coordinates are returned as the operator results in RowThresh and ColumnThresh.

For an explanation of the concept of 1D measuring see the introduction of chapter 1D Measuring.

If the gray value profile intersects the threshold line for several times, the parameter Select determines which values to return. Possible settings are ‘first’, ‘last’, ‘first_last’ (first and last) or ‘all’. For the last two cases Distance returns the distances between the calculated points.

The gray value profile is created by averaging the gray values along all line segments, which are defined by the measure rectangle as follows:

The segments are perpendicular to the major axis of the rectangle,

they have an integer distance to the center of the rectangle,

the rectangle bounds the segments.

For every line segment, the average of the gray values of all points with an integer distance to the major axis is calculated. Due to translation and rotation of the measure rectangle with respect to the image coordinates the input image Image is in general sampled at subpixel positions.

Since this involves some calculations which can be used repeatedly in several projections, the operator gen_measure_rectangle2 is used to perform these calculations only once in advance. Here, the measure object MeasureHandle is generated and different interpolation schemes can be selected.

执行信息

●  多线程类型:可重入(与非独占算子并行运行)。
●  多线程范围:全局(可以从任何线程调用)。
●  不并行处理。

04. 注意

只有边缘是直的并垂直于矩形或弧的长轴,measure_thresh返回的结果才有意义。 因此它不应该用于从曲面对象中提取边缘。 此外用户应确保矩形或弧线尽可能接近垂直于图像中的边缘。 此外,西格玛不能大于约0.5 * Length1(对于Lenth1请参见gen_measure_rectangle2)。

应该记住,为了效率的原因,measure_thresh会忽略Image的ROI域。 如果图像中的特定区域应该从measurement中排除,则应该生成具有适当修改的参数的新measure对象。

05. 参数

Image (input_object)   单通道图像 → object (byte / uint2 / real)
  输入图像。

MeasureHandle (input_control)    measure_id → (integer)
  Measure对象句柄。

Sigma (input_control)    number → (real)
高斯模糊Sigma。

Default value: 1.0
Suggested values: 0.0, 0.4, 0.6, 0.8, 1.0, 1.5, 2.0, 3.0, 4.0, 5.0, 7.0, 10.0
Typical range of values: 0.4 ≤ Sigma ≤ 100 (lin)
Minimum increment: 0.01
Recommended increment: 0.1
Restriction: Sigma >= 0.0

Threshold (input_control)    number → (real)
阈值。
Default value: 128.0
Typical range of values: 0 ≤ Threshold ≤ 255 (lin)
Minimum increment: 0.5
Recommended increment: 1

Select (input_control)    string → (string)
要选择的点。
Default value: ‘all’
List of values: ‘all’, ‘first’, ‘first_last’, ‘last’

RowThresh (output_control)    point.y-array → (real)
具有阈值的点的Row坐标。

ColumnThresh (output_control)    point.x-array → (real)
具有阈值的点的Column坐标。

Distance (output_control)    real-array → (real)
连续点之间的距离。

06. 结果

如果参数值正确,则算子measure_thresh返回值2(H_MSG_TRUE)。 否则,会引发异常。

HDevelop例程

程序示例


07. 附录

7.1 机器视觉博客汇总
网址:https://dengjin.blog.csdn.net/article/details/116837497

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/16044.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信