石鑫华视觉 手机微信QQ:13450001061

图像编程

NI Vision Assistant视觉助手教程 9.5 最大夹钳

文章来源:石鑫华视觉网时间:2022-09-05 10:59:15 点击:259

NI Vision Assistant视觉助手教程

第九章 图像处理-Machine Vision机器视觉

第五节 Max Clamp最大夹钳

image.png

图1 最大夹钳函数Max Clamp

最大夹钳Max Clamp函数,Clamp字面意思是夹钳、钳子、夹子,只有夹具的作用,没有测量的作用,需要测量时钳子之间的距离时,就需要测量夹钳两条边之间的距离(夹钳函数实际上也是测量两边之间的距离)。但是我们可以更直接的理解其为卡尺、卡钳、测径器。在VBAI中,同样的这个函数工具,NI官方命名为Caliper即为卡尺、卡钳、测径器。而在视觉助手Machine Vision选项卡的下面还有Caliper的函数,但是其中主要是测量几何特征,如两点之间的距离、点到直线的距离、夹角、中分线之类的,同样的,这个Caliper函数在VBAI中又叫做Geometry几何。英文不好,不是很理解这些外国友的叫法。在后面的学习中,将根据作者的理解,视觉助手、VBAI中统一叫卡尺、最大卡尺、卡尺(耙子)、几何测量等。

最大卡尺函数的说明信息说其是测量分开的目标边缘之间的最大距离。最大卡尺函数,与下节中介绍的卡尺函数不同,其更多的还是依赖于边缘轮廓的最大值进行测量的,而卡尺函数,则依赖于找到的第一边缘与最后边缘进行测量的。

基于轮廓提取的卡尺函数只支持测量最大距离,而基于耙子的卡尺函数则可以测量最大尺寸也可以测量最小尺寸。卡尺在一个矩形区域里根据用户指定的相对于搜索轴的搜索角度范围来搜索轮廓。你还可以指定卡尺边界所需要的边缘极性。整个边界的边缘极性由沿搜索方向的边界的初始边缘极性决定。

卡尺函数将每个提取的轮廓当作一个独立的边界。例如,如果被检测的目标是一个白色的圆盘,该函数将确定一个上升的极性边界。创建一个ROI,没有包括整个圆盘,从而可以强制函数识别多个边界。如下图所示。

image.png

图2 基于轮廓的卡尺

1、  Rotated rectangle search region旋转矩形搜索区域

2、  Found clamp points找到的夹钳点

3、  Measured distance, within angle tolerance测量距离,在角度公差范围内

提取到一个轮廓后,夹钳选择相对的两个点,他们拥有平行的切线,然后计算这两个点之间的距离。

上面的图说明了一个基于轮廓提取函数查找对象之间最大距离的卡尺函数。可以参考后面关于轮廓提取函数的更多信息加深对此函数的理解。

点击最大卡尺函数,进入最大卡尺函数配置界面。主体函数略过,主要看看设置界面。

Settings设置

image.png

图3 最大卡尺配置界面

图3显示的是最大卡尺函数配置界面的状态,从中看到,默认状态下会有一个ROI,如果ROI中没有发现边缘,则会在设置界面中有警告信息“No Clamp Fount. Adjust Settings。”

image.png

图4 最大卡尺设置选项卡

Curve Extraction Parameters曲线提取参数

曲线提取参数中的条件用来提取ROI中的轮廓。而轮廓是最大卡尺测量的基础,因此这里的参数设置比较重要。

Edge Threshold边缘阈值

指定曲线上需要考虑的一部分边缘像素的最小对比度。这个值的范围从0~255。

image.png

图5 边缘阈值为127-找到两个边缘轮廓可以测量最大卡尺

image.png

图6 边缘阈值为128-找到一个边缘轮廓不可以测量最大卡尺

Minimum Length最小长度

指定想要提取的最小的曲线长度。以像素为单位。值越小,则边缘上的真实信息越丰富,但是提取的干扰轮廓也会越多。

image.png

图7 最小长度为10,中间有一段小轮廓(蓝色线)

image.png

图8 最小长度为20,中间没有多余的干扰轮廓

Search Step Size搜索步长

    指定该算法检测曲线的种子点的行和列之间的距离。类似于耙子中的Gap间距。有效值的范围从1到255。搜索步长对测量结果的影响有时是巨大的。如下图所示的:

image.png

图9 搜索步长为10-找到正确的边缘

image.png

图10 搜索步长为11-找到错误的边缘

Edge Filter Size边缘滤波器尺寸

如下图所示,边缘滤波器有Fine好、Normal一般、Contour Tracing轮廓跟踪。

image.png

图11 边缘滤波器尺寸

Fine好的滤波器尺寸,意味着滤波器尺寸比较大,对于边缘轮廓的提取比较有帮助,可以准确的提取轮廓,而Normal一般的尺寸,则可以较快速的提取轮廓,但是准确性方面可能不靠谱。Contour Tracing轮廓跟踪则相当于一个动态的滤波器,在较好的轮廓边缘位置,可以将滤波器尺寸缩小,在提高速度,而在较差对比度的边缘处,则需要加大滤波器尺寸,以准确的提取轮廓。

Subpixel Accuracy亚像素精度

是否使用亚像素精度来提取轮廓。关于亚像素精度的概念,参考9.1节。如果使用亚像素精度,可以提高轮廓提取的准确性,但是会增加轮廓提取的时候,特别在一些轮廓比较复杂的图像中,耗时的增加比较明显。

image.png

图12 未使用亚像素精度

image.png

图13 使用亚像素精度

更多内容,请购买全本教程:《基于Vision Assistant的图像处理实用教程》https://item.taobao.com/item.htm?id=538756535591

首页
84162741QQ
联系