灰度分布曲线与冰勺头部劈裂检测

2023-12-28 02:51苑玮琦
微处理机 2023年6期
关键词:像素点头部线段

顾 鸣,苑玮琦

(1.沈阳工业大学视觉检测技术研究所,沈阳 110870;2.辽宁省机器视觉重点实验室,沈阳 110870)

1 引 言

冰勺是一种用于食用冰激凌等冷饮的工具,主要由桦木制成。冰勺在制作过程中受到机器切割磨损可能会出现劈裂。冰勺的劈裂可能会造成使用者口、舌的划伤,严重威胁人身健康。目前很多厂家对冰勺缺陷检测以人工为主,检测效率和准确率已经无法达到现代工业化的需求。在工业上,基于机器视觉对缺陷的检测可在一定程度上提高生产检测效率[1]。该项技术对冰勺检测也同样适用。目前针对木材劈裂这类缺陷的检测算法主要包括裂纹提取和裂纹分类两种[2],而对于裂纹提取的方法相对较少。李德健[3]提出通过投影与局部阈值分割相结合的方法检测劈裂缺陷。李绍丽[4]运用Canny 算子提取出雪糕棒正面劈裂、纹理以及矿物线的边缘。上述方法在提取宽劈裂的效果较好,但对相对较窄的劈裂容易出现漏检。曹心宁等人[5]针对裂缝目标与背景的灰度对比度不明显、小裂缝无法识别等问题,提出了连通域长、短轴比值的裂缝检测方法,但该方法漏检率较高。由于裂纹呈现出线状特征,对此有学者提出运用线检测方式来检测裂缝,如采用Hough 变换[6]、高斯线检测[7]等,但冰勺头部图像光照不均匀、背景复杂,在运用线检测时会造成大量误检。综上所述,对于裂口闭合紧实、光照不均匀、背景复杂的情况,现有的检测方法会造成误检甚至漏检。

2 冰勺头部劈裂检测算法原理

冰勺示意图如图1 所示。冰勺劈裂从冰勺的正面和侧面头部都能观测到。由于冰勺正面存在与劈裂特征相似的矿物线,所以在进行检测时会造成一定的误检。通过对冰勺头部图像的大量观察发现,冰勺头部只存在劈裂这一种缺陷,所以针对头部图像进行劈裂检测会大大提高检测准确性。

图1 冰勺示意图

灰度分布曲线是由多个凹线段和凸线段交替组成。凹线段是由一个灰度极小值点和两侧相邻的灰度极大值组成的曲线,线段中极小值点及附近的像素代表图像中的暗区域;凸线段是由一个灰度极大值和两侧相邻的灰度极小值组成的曲线,线段中的极大值点及附近的像素代表图像中的亮区域。

灰度极值点被定义为:如果当前像素点的灰度值大于其前一个像素点的灰度值和后一个像素点的灰度值,那么当前的像素点为灰度极大值点;如果当前像素点的灰度值小于其前一个像素点的灰度值和后一个像素点的灰度值,那么当前的像素点为灰度极小值点。

如图2 所示为某个冰勺的侧面头部区域的灰度分布曲线。图2(a)为横穿这一冰勺头部的灰度分布曲线,其中方框内为劈裂所在位置。图2(b)为劈裂位置凹线段示意图,其中,f(a)为凹线段的极小值,f(b)、f(c)为凹线段的极大值。

图2 冰勺头部横向灰度分布曲线

定义当中幅值大的为相对幅值fr(a),幅值小的为绝对幅值fa(a),如下式所示:

当一条线段的相对幅值远大于绝对幅值时,该线段反映了目标的边界特征;当一条线段的相对幅值与绝对幅值接近时,该线段反映了目标或者干扰的完整特征。按照定义,劈裂位置有较大的绝对幅值特征,所以可以通过提取劈裂位置凹线段的绝对幅值来实现对劈裂的检测。

3 冰勺头部劈裂缺陷检测算法

3.1 冰勺头部图像噪声去除

由于冰勺头部背景复杂,灰度分布曲线上叠加了高频噪声。首先需将高频噪声平滑掉,将劈裂位置的幅值特征与正常位置的幅值差异最大化。在对图库中图像进行分析时发现,劈裂位置是暗区域,整列的灰度值都较低,而正常位置由于是明暗交替的情况,整列灰度值有高有低。根据高频噪声在灰度分布曲线上的特点,可采用垂直方向计算出的一列灰度值的平均值来代替此列灰度值,如下式:

其中,f(xi)代表冰勺侧面区域某列中每行的灰度值,n代表冰勺侧面头部区域此列灰度值个数代表每列的灰度均值,a 为列数。

利用该方法既平滑了高频噪声,又保留了曲线原来的变化趋势和劈裂位置的幅值特征。如图3 所示为计算均值前后的灰度分布曲线。可以看出劈裂位置(矩形框内)的灰度波动依然比较明显,但是背景正常位置的波动相对于计算均值之前明显减弱。

图3 垂直方向计算均值前后灰度分布曲线

3.2 冰勺头部灰度校正

冰勺侧面呈弯曲状,生产流水线的条形光源平行于侧面并与水平面呈一定角度打光,中间部分光照强度比两侧强,使冰勺头部中间灰度值高,两侧灰度值低,中间位置对比度通常高于两侧位置。为消除光照影响,设计一种方法对冰勺侧面头部灰度进行校正,对冰勺头部各位置的灰度做线性变换,消除光照对冰勺头部的影响。由于冰勺两侧的光照强度不同,所以需要将冰勺头部从中间分为两部分进行灰度校正。以冰勺侧面头部某行左半部分为例,使用灰度校正方法,示意图如图4 所示。

图4 冰勺头部左半边灰度校正示意图

如图4(a)可见,灰度值整体呈波动上升趋势。如果将冰勺侧面横向灰度分布曲线看成一个直角三角形的斜边,如图4(b)所示,根据直角三角形锐角的正切值,通过线性变换将冰勺侧面头部的横向灰度分布曲线上的灰度值修正为直角三角形斜边在水平方向的投影值,这样在改变灰度分布曲线整体趋势时不影响其局部的变化趋势,即避免了由于光照影响导致的两边灰度值低、中间灰度值高的情况。灰度校正的公式如下:

为了确定公式(4)中的正切值,将图4(a)的灰度分布曲线运用最小二乘法按行拟合成一条直线,即方程y=kx+b。具体操作方法为:将冰勺头部图像的每行像素的坐标看作xi,对应坐标的灰度值看作yi,拟合直线如图5 所示。拟合直线的斜率即为正切值。

图5 拟合直线

灰度校正后的灰度分布曲线如图6 所示。曲线整体校正到一条水平线上,局部趋势并没有改变,从而消除了光照分布不均匀导致的灰度分布曲线中间高、两边低的情况。右半边灰度校正方法同理。

图6 校正后灰度分布曲线

3.3 冰勺头部劈裂特征提取

通过对凹线段绝对幅值的计算,获得了灰度分布曲线所有凹线段的幅值。冰勺头部劈裂位置具有较大的绝对幅值,因此,可以在绝对幅值序列中通过一定分类方法选择较大的绝对幅值,从而实现劈裂特征提取。将绝对幅值序列按照幅值大小和出现的频数描绘在直方图上,如图7 所示,即为冰勺头部某行的绝对幅值直方图。图中横坐标代表绝对幅值,纵坐标代表绝对幅值出现的频数。方框内为背景位置的绝对幅值。箭头位置代表劈裂位置的绝对幅值。

图7 绝对幅值直方图

在统计学中,如果一组样本数据符合正态分布或近似正态分布,样本的均值为,标准偏差为σ,一般情况下,正常数据会出现在概率区间内,超出此区域则为异常值,予以剔除[8]。但在检测缺陷时,如果一组数据中存在异常值,那么在图像上显示的一般为缺陷区域。由于劈裂位置凹线段的绝对幅值相对于正常位置的绝对幅值属于异常值,对此,可利用3σ 准则提取劈裂位置的绝对幅值。

4 算法测试与结果分析

为了验证算法对冰勺头部劈裂检测的有效性,使用冰勺在线检测系统采集冰勺头部劈裂图像建立图库,共采集150 张,其中能正确检出148 张,2 张出现漏检。检测结果如图8 所示,包括正确检出与漏检两种情况。其中,漏检1 中劈裂位置与背景差异太小,从而造成漏检;漏检2 中劈裂分为两段,中间位置没有劈开,计算均值后没有突显出劈裂位置的幅值差异性,从而造成漏检。

图8 劈裂正确检出示例

上述测试结果表明,本算法对冰勺头部劈裂检测准确率较高,适用性较强,能够有效降低劈裂检测的漏检率,适合用于冰勺生产线上的在线检测。

5 结束语

研究针对冰勺头部劈裂特征进行分析,并设计出一种冰勺头部劈裂检测方法。经实际测试,结果表明本研究的方法能够有效避免冰勺头部由于光照因素导致的两侧位置对比度低以及背景复杂导致的劈裂特征不明显等问题,并运用自动阈值对劈裂特征进行提取,对冰勺劈裂检测有一定的实用价值。在后续研究中,还有待对冰勺头部开口特别小的劈裂情况做出进一步的研究。

猜你喜欢
像素点头部线段
头部按摩治疗老伴失忆
画出线段图来比较
基于局部相似性的特征匹配筛选算法
火箭的头部为什么是圆钝形?
怎样画线段图
我们一起数线段
数线段
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割