名称
fuzzy_measure_pairing - 提取垂直于矩形或环形弧的直边对。
用法
fuzzy_measure_pairing(Image : : MeasureHandle, Sigma, AmpThresh, FuzzyThresh, Transition, Pairing, NumPairs : RowEdgeFirst, ColumnEdgeFirst, AmplitudeFirst, RowEdgeSecond, ColumnEdgeSecond, AmplitudeSecond, RowPairCenter, ColumnPairCenter, FuzzyScore, IntraDistance)
描述
fuzzy_measure_pairing用于提取垂直于矩形或环形弧长轴的直边对。
提取算法与fuzzy_measure_pairs相同,但也可以使用参数Pairing提取交织和包含对。 目前只有'no_restriction'可用,它返回所有可能的边缘对,允许交叉和包含对。
NumPairs只返回得分最高的边缘对个数,而0表示返回所有可能的边缘组合。
选定的边将作为单个点返回,这些点位于矩形或环形弧的长轴上。 相应的边缘振幅在AmplitudeFirst和AmplitudeSecond中返回,FuzzyScore表示模糊分数。 另外,每个边缘对之间的距离在IntraDistance中返回,对应于EdgeFirst [i]和EdgeSecond [i]之间的距离。
注意
只有边缘是直的并且垂直于矩形或环形弧的长轴,fuzzy_measure_pairing返回的结果才有意义。 因此,它不应该用于从曲面对象中提取边缘。 此外,用户应确保矩形或环形弧尽可能接近垂直于图像的边缘。 此外,西格玛不能大于约0.5 *Length1(对于Length1请参见gen_measure_rectangle2)。
应该记住,为了效率的原因,fuzzy_measure_pairing会忽略Image的ROI域。 如果图像中的特定区域应该从measurement中排除,则应该生成具有适当修改的参数的新measure对象。
并行
● 多线程类型:可重入(与非独占算子并行运行)。
● 多线程范围:全局(可以从任何线程调用)。
● 不并行处理。
参数
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.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.4
AmpThresh (input_control) number → (real)
最小边缘幅度。
Default value: 30.0
Suggested values: 5.0, 10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 90.0, 110.0
Typical range of values: 1 ≤ AmpThresh ≤ 255 (lin)
Minimum increment: 0.5
Recommended increment: 2
FuzzyThresh (input_control) number → (real)
最小模糊值。
Default value: 0.5
Suggested values: 0.1, 0.3, 0.5, 0.7, 0.9
Typical range of values: 0.0 ≤ FuzzyThresh ≤ 1.0 (lin)
Recommended increment: 0.1
Transition (input_control) string → (string)
选择边缘对的第一个灰度值转换。
Default value: 'all'
List of values: 'all', 'negative', 'positive'
Pairing (input_control) string → (string)
配对约束。
Default value: 'no_restriction'
List of values: 'no_restriction'
NumPairs (input_control) number → (integer)
边缘对的数量。
Default value: 10
Suggested values: 0, 1, 10, 20, 50
Typical range of values: 0 ≤ NumPairs
Recommended increment: 1
RowEdgeFirst (output_control) point.y-array → (real)
(边缘对)第一条边的Row坐标。
ColumnEdgeFirst (output_control) point.x-array → (real)
(边缘对)第一条边的Column坐标。
AmplitudeFirst (output_control) real-array → (real)
(边缘对)第一个边的边缘幅度(带符号)。
RowEdgeSecond (output_control) point.y-array → (real)
(边缘对)第二个边的Row坐标。
ColumnEdgeSecond (output_control) point.x-array → (real)
(边缘对)第二个边的Column坐标。
AmplitudeSecond (output_control) real-array → (real)
(边缘对)第二个边缘的边缘幅度(带符号)。
RowPairCenter (output_control) point.y-array → (real)
边缘对的中心的Row坐标。
ColumnPairCenter (output_control) point.x-array → (real)
边缘对的中心的Column坐标。
FuzzyScore (output_control) real-array → (real)
边缘对的模糊评估分数。
IntraDistance (output_control) real-array → (real)
边缘对内的距离。
结果
如果参数值正确,则算子fuzzy_measure_pairing将返回值2(H_MSG_TRUE)。 否则会引发异常。
Possible Predecessors
gen_measure_rectangle2, gen_measure_arc, set_fuzzy_measure
Possible Successors
close_measure
备选算子
edges_sub_pix, fuzzy_measure_pairs, measure_pairs
See also
fuzzy_measure_pos, measure_pos
模块
1D Metrology
HDevelop例程
inspect_bottle_label_360_degree.hdev 将一个瓶子的四个图像组合成拼接图像,显示瓶子的标签展开图。