今天我们来讲解图像检测模块中的Blob分析功能。在展开内容之前,先了解三个小问题:什么是图像检测?什么是Blob分析?Blob分析的用途是什么? 什么是图像检测? 图像检测,简单理解就是根据产品已知的特征对目标进行提取、筛选、分类等。 打开SciSmart智能视觉软件,在主界面右下方工具箱栏点击图像检测的图标。在图像检测功能模块列表中可以看到,除了Blob分析,还有划痕检测、边缘提取、轮廓操作等工具,如图1所示: 图1 图像检测工具箱 什么是Blob分析? Blob是指图像中的具有相似颜色、纹理等特征所组成的一块连通区域。Blob分析是将图像进行二值化,分割得到前景和背景,然后进行连通区域检测,从而得到Blob块的过程。 Blob分析的用途是什么? Blob分析为机器视觉应用提供图像中斑点的数量、位置、形状和方向,还可以提供相关斑点间的拓扑结构。Blob分析可应用于特定目标定位、缺陷检测、数量统计等,主要适用于二维目标图像、高对比度图像,以及存在缺陷检测、数量范围和旋转不变性的场景需求。同时,Blob分析不适用于低对比度图像,以及必要的图像特征不能用2个灰度级描述的图像等。 一、Blob分析工具界面 点击Blob分析中的“设置”按钮,打开设置参数界面,如图2。 图2 Blob工具界面示意图 二、Blob分析的参数设置及解析 1、参数设置 SciSmart智能视觉软件中Blob分析工具界面参数设置,如图3。 图3 Blob分析工具参数栏示意图 2、参数解析 2.1 图3中的参数1二值化和参数2形态学,是针对图像进行预处理。 2.2 图3中的参数3详解。 2.2.1 忽略靠近边界的对象: 图4中蓝色框为ROI,勾选表示忽略靠近图像边缘或者ROI边界的Blob块区域,否则靠近边界的Blob块将被保留,进行后续的计算。 图4 忽略靠近边界对象效果图 2.2.2 填充孔 勾选表示填充轮廓区域内的孔洞,如图5。 图5 填充孔效果图 2.2.3 Blob筛选 勾选表示结果图像将输出一张二值图,符合筛选条件的Blob作为白色区域输出,并将此结果图像显示在图像控件上;否则结果图为源图,将源图显示在图像控件上,并以绿色区域表示符合筛选条件的Blob块。 图6 Blob筛选效果图 2.3 图3中的参数4筛选Blob详解 面积:Blob的面积,单位为像素。 中心X,Y:Blob的中心X,Y坐标。 重心X,Y:Blob的重心X,Y坐标。 方向:Blob几何重心的方向。 长宽比:Blob外接矩形的长宽比。 孔洞数:表示一个Blob内有多少个孔洞(孔洞指Blob轮廓内与之不连通的区域)。例如一个白色连通区域内有3个不连通的黑色区域,则孔洞数为3。 角度:外接矩形与水平轴的夹角。 外矩宽度:Blob的最小外接矩形的宽度。 外矩高度:Blob的最小外接矩形的高度。 轮廓长度:Blob块的轮廓的长度。 紧凑度:Blob的紧凑度,范围是[0, 10000]。 对称性:以经过中心和重心的一条直线为分界线,求直线两侧的对称性,对称性数值越接近0,表示Blob块越对称。 中重距离:中心到重心的距离。 3、数据输出: 在Blob分析工具界面将参数设定好,分析到目标数据后,点击“确定”退出,切换到输出界面:勾选想要进行输出的测量值,才能在其它数据处理中对测量值进行调用。 图7 数据输出界面 三、应用场合 图8 应用场合效果图 1、适用于初定位,中心坐标数据可在ROI中引用,做基准定位使用。 2、适用于有无检测、缺陷检测等应用场景。 |
|