HALCON 20.11:学习笔记---一维测量(Measuring)

88 篇文章 133 订阅

HALCON 20.11:学习笔记---一维测量(Measuring)

本章主要提供有关一维测量的信息。

一维测量的概念

通过一维测量可以沿着预定义的线或弧定位从亮到暗或从暗到亮的过渡边缘。这使您可以快速、轻松地高精度测量零件的尺寸。注意,如果您想要测量几何图元(如圆、椭圆、矩形或线)的尺寸,并且位置、方向和几何形状的近似值是已知的,那么二维测量可能是一个合适的替代方法。

沿着直线(1)或弧线(2)测量边缘和它们之间的距离

下面简要介绍使用一维测量所需的步骤。

生成测量对象

首先,必须生成一个测量对象来描述感兴趣的测量区域。如果测量应沿直线进行,则测量对象由矩形定义。如果测量应沿圆弧进行,则测量对象定义为圆弧。测量对象由算子生成:

  1. gen_measure_rectangle2
  2. gen_measure_arc

注意,您可以使用基于形状的匹配(参见匹配/基于形状)来自动对齐测量对象。

执行测量

然后进行实际测量。为此,通常使用以下算子之一:

  1. measure_pos算子提取垂直于被测对象主轴的直线边,并返回边缘中心的位置、边缘振幅和连续边缘之间的距离。
  2. measure_pairs算子提取垂直于测量对象主轴的直线边对,返回边对的边缘中心位置、边对的边缘振幅、边对的边缘之间的距离以及相邻边对之间的距离。
  3. measure_thresh算子沿着测量对象的主轴提取具有特定灰度值的点,并返回它们的位置和连续点之间的距离。

如果有额外的边不需要测量,可以应用模糊测量。首先必须定义描述好边特征的所谓模糊规则。可能的特征是位置、距离、灰度值或边缘的振幅。这些函数是用create_funct_1d_pairs创建的,并通过set_fuzzy_measureset_fuzzy_measure_norm_pair传递给工具。然后下面算子将根据这些规则,提取出最合适的边缘:

  1. fuzzy_measure_pos算子提取垂直于测量对象主轴的直线边,返回边缘中心的位置、边缘振幅、模糊分数和连续边缘之间的距离。
  2. fuzzy_measure_pairs算子提取直线边缘对垂直于主轴的测量对象,并返回边缘对的第一和第二的位置边缘,边缘对的边缘振幅,边缘对的中心位置,模糊分数,边缘对的边缘之间的距离,以及连续的边缘对之间的距离。。
  3. fuzzy_measure_pairing类似于fuzzy_measure_pairs,但它也可以使用参数Pairing来提取交错和包含的成对。

除了自动提取测量对象内的边缘或点外,您还可以提取垂直于矩形或环形弧的一维灰度值轮廓,并根据您的需要评估该灰度值信息。利用该算子可以提取测量对象内的灰度值轮廓:measure_projection

销毁测量对象句柄

当您不再需要测量对象时,可以通过传递句柄来销毁它:close_measure

进一步的操作

除了上面提到的算子,您可以使用reset_fuzzy_measure丢弃一套之前通过set_fuzzy_measureset_fuzzy_measure_norm_pair设置的模糊函数的模糊集,translate_measure将测量对象的参考点转换到指定位置,write_measureread_measure将测量对象写入文件并从文件中重新读取,serialize_measuredeserialize_measure将测量对象序列化和反序列化。

算子列表

close_measure:删除测量对象。

deserialize_measure:对序列化的度量对象进行反序列化。

fuzzy_measure_pairing:提取垂直于矩形或环形弧的直边对。

fuzzy_measure_pairs:提取垂直于矩形或环形弧的直边对。

fuzzy_measure_pos:提取垂直于矩形或环形弧的直边。

gen_measure_arc:生成提取垂直于环形弧的直边的测量对象。

gen_measure_rectangle2:生成提取垂直于矩形的直边的测量对象。

measure_pairs:提取垂直于矩形或环形弧的直边对。

measure_pos:提取垂直于矩形或环形弧的直边。

measure_projection:提取垂直于矩形或环形弧的灰度值轮廓。

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

read_measure:从文件中读取度量对象。

reset_fuzzy_measure:重置模糊函数。

serialize_measure:序列化度量对象。

set_fuzzy_measure:指定一个模糊函数。

set_fuzzy_measure_norm_pair:为边对指定一个归一化模糊函数。

translate_measure:转换测量对象。

write_measure:将度量对象写入文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值