边缘对模型缺陷检测模块可将实际提取到的边缘对与预先建立的边缘对模型作比较,分析边缘对的存在性、位置、宽度等信息,判断是否存在边缘断裂等边缘对缺陷。该模块常用于待检边缘区域呈现不规则分布的情况,例如呈曲线分布。
本节内容包含:
该模块算法包括宽度缺陷检测、位置缺陷检测、断裂缺陷检测、阶梯缺陷检测和气泡缺陷检测。
该模块的边缘检测基于卡尺工具。
将查找到的边缘对与模型中的边缘对进行比较,判断边缘对是否存在宽度缺陷,包括宽度过窄和过宽,如下图所示存在宽度过宽缺陷。
将模型中的边缘对信息与检测出的边缘对作比较,如果超过一定数量的连续多个卡尺内理想边缘对中心位置与实际边缘对中心位置的差值大于预设的阈值((即下文参数配置中的位置偏移阈值),则当前卡尺位置存在边缘对位置缺陷。
如果实际查找边缘点对失败,则判定当前卡尺区域为候选断裂点,并将卡尺中心赋值为边缘点对;如果相邻的断裂点长度满足缺陷长度阈值,则认为存在断裂缺陷。
将检测出的边缘对与基准模型中的边缘对进行对比。如果相邻点在垂直方向上的偏离距离大于预设的阈值(即下文参数配置的阶梯偏离高度),则判定为阶梯点。如果相邻阶梯点的尺寸大于预设的阈值(即下文参数配置的最小阶梯长度,则认为是阶梯缺陷区域。
将模型边缘对平均灰度与查找到的边缘对的平均灰度进行比较,如果两者差值大于预设的阈值(即下文参数配置中的灰度合格阈值),则判定为缺陷候选点;如果相邻缺陷候选点的个数超过预设的阈值(即下文中的气泡缺陷长度,则判定相邻缺陷候选点所在位置存在气泡缺陷。
平均灰度的定义为:边缘点对连线上逐点的灰度均值(双线性插值)。
该模块的边缘模型的创建与配置步骤,与边缘模型缺陷检测的边缘模型基本一致。两者区别在于该模块的边缘模型除了可通过手动绘制轨迹生成,也可通过设置起始范围自动生成,具体过程如下:
单击起始范围处的圆形图标,并在模型图像上绘制圆形起始范围。
单击生成轨迹自动生成边缘对模型。
以下仅介绍该模块的运行参数详情。通过配置运行参数,可定义当前模块如何处理输入的数据。
设置需查找的边缘对类型。
该值描述卡尺(可理解为“用于检测边缘点的ROI”)的高度。当边缘查找不准确时可适当增大该值。
该值描述卡尺的宽度。在一定范围内增大该值可以获取更加稳定的边缘点。噪点较多时建议取较大值,但相应的耗时将增大。
设置边缘对的理想宽度。
边缘阈值即梯度阈值,取值范围0~255。仅梯度大于该值的边缘点可被检测到。数值越大,抗噪能力越强,得到的边缘数量越少,甚至导致目标边缘点被筛除。
定义待查找的两条边缘的极性。极性指灰度变化的类型,可设置为从黑到白、从白到黑或任意极性。此处的“黑”和“白”分别用来描述灰度值的低和高。
开启后,该模块将输出的边缘0和边缘1之间中点的X/Y轴坐标以及中点状态(1:正常,0:异常)。
如果存在连续位置偏移缺陷点,且由这些缺陷点构成的轮廓的长度大于该参数值,则判定这些缺陷点所在区域存在位置偏移缺陷。
开启后将检测宽度缺陷是否在合格比例内。
开启并配置如下参数后,该模块可检测位置偏移缺陷。
开启后将检测边缘断裂缺陷。
开启并按需配置如下子参数后,可检测锯齿类缺陷。该类缺陷尺寸和面积较小,且偏离幅度较低。
开启后,算法基于建模时的理想边缘灰度信息提取边缘,具体机制如下:
根据模型边缘灰度信息,对检测卡尺输出的边缘进行评分,其中平均灰度和灰度邻域评分各占0.5的权重,卡尺输出的后续边缘所占权重依次递减20%。最后统计评分信息,将得分最高的边缘输出。
用于增强边缘和抑制噪声,最小值为1。当边缘模糊或有噪声干扰时,增大该值有利于使得检测结果更加稳定。但如果边缘与边缘之间距离小于滤波尺寸,边缘位置的精度将受影响,甚至可能丢失边缘。
距离阈值,用于边缘点修正,去除干扰点。若为0,则不作边缘点修正,若大于0,则在该距离阈值内寻找更符合边缘趋势的边缘点。
该模块输出结果中各项参数详情,请参见边缘对模型缺陷检测的输出结果。