基于互信息和高斯金字塔的笔芯护套密封性检测研究
2022-05-26李宏伟李志伟
李宏伟,李志伟,2*
(1.上海工程技术大学 电子电气工程学院,上海 201620;2.东华大学 信息科学与技术学院,上海 201620)
0 引言
圆珠笔笔芯护套由橡胶材料制作而成,安装在笔芯前端用于保护笔头免受损坏。笔芯护套不仅能够保护笔头免受外物碰撞而损伤,其良好的密封性也可使笔芯不易漏墨、溢墨。如果护套密封性不好,油墨会在笔芯离心过程中从笔头溢出而污染护套,更严重的可能会导致护套脱落,油墨污染离心机。因此,护套密封性是否良好决定了笔芯在离心过程中的安全性与可靠性。然而,传统的笔芯护套密封性检测方法为人工肉眼检测,不仅检测速度慢,而且由于人眼的视觉疲劳,易导致错检漏检,传统的人工检测方法已不能满足现代化生产对精度和效率的要求[1~3]。
机器视觉检测技术具有效率高、系统稳定性和连续性好、非接触测量等优点[4~7],但在轻工制笔行业尚未得到良好应用。在工业检测领域,基于机器视觉的模板匹配技术、归一化互信息和图像金字塔算法得以广泛应用,并取得了较好的应用效果[8~12]。互信息是信息论中一种有用的信息量,可用于配准多模图像,具有鲁棒性强、自动化程度高及无需图像预处理等优点,且归一化互信可解决两幅图像之间重叠部分多的复杂图像匹配问题。Jin[13]等人通过梯度和归一化互信息结合的方法进行印刷图像配准,配准误差小、精度高;Chen[14]等人采用基于区域贡献的归一化互信息与多分辨率策略相结合的方法,实现了三维图像和二维图像的精确配准。高斯金字塔是常见的一种图像金字塔,高斯金字塔中包含了一系列低通滤波器,通过对原始图像降采样和低通滤波器处理得到分辨率从下到上逐层降低的多尺度图列,能够对图像进行多尺度描述。如,Ren[15]等人采用灰度值金字塔算法,对经过灰度处理的原始图像进行高斯金字塔分解,实现了对各类零件在旋转、光照变化时的识别;Wu[16]等人将拉普拉斯金字塔和卷积神经网络相结合,采用区域拉普拉斯金字塔保存图像更多的细节并对卷积神经网络进行改进,实现了效果良好的融合人图像。尽管归一化互信息和图像金字塔算法各有自己的优点,然而尚未有将归一化互信息和图像金字塔相结合的方法应用于工业检测的报道,尤其是轻工制笔行业。
为满足现代化精益生产需要,解决笔芯护套人工检测效率低、易错检漏检等问题,提出一种归一化互信息与高斯金字塔相结合的方法,实现笔芯护套良好密封性的实时在线检测。首先进行需求分析,并设计笔芯护套密封性检测系统的总体软硬件框架;在灰度值匹配算法的基础上,将归一化互信息匹配与高斯金字塔分层处理有机结合,实现图像匹配速度加快,同时图像模糊不会引入其他噪声,有效克服光照等外界因素的影响。实际场景应用结果表明,所提方法具有检测精度高、误检率低、检测速度快等优点。
1 笔芯护套密封性检测需求及系统总体框架
图1展示了三种待测笔芯样品,其中图1(a)为护套密封性良好笔芯,此时护套完全包裹笔头且不易脱落;图1(b)为笔芯护套漏装或遗失,此时笔头完全暴露在外;图1(c)为护套密封不紧密笔芯,此时护套极易发生脱落,失去保护笔头的作用。实际生产中,需要将图1(b)和图1(c)之类的不符合生产要求的笔芯进行检测筛选并剔除。此外,依据实际生产需求,笔芯护套密封性检测还需满足如下要求:笔芯护套与笔芯前沿间隙(即密封间隙)不大于0.5mm;检测精度不低于0.1mm;检测速度每分钟最快可达300支笔芯,能与笔芯装配传输速率相匹配。
图1 护套密封效果图
依据检测需求,所设计的笔芯护套密封性检测系统硬件系统架构图如图2(a)所示,硬件系统包括平板光源、工业相机、图像采集卡、光源控制器、PLC控制器、工控机等。平板光源放置于待检测区域正下方,用于对检测区域提供强度可调的光照,发光区域长宽为180mm×100mm,能同时满足四支以上笔芯的检测。工业相机用于采集笔芯护套间隙的图像信息,本设计采用大恒MER-500-14GM工业CCD相机,该相机具有高分辨率、高清晰度、高精度、低噪声等特点,支持连续采集、软触发采集以及外触发采集三种工作方式,适合笔芯生产线的复杂环境。相机的分辨率为800×400,镜头的分辨率为0.1mm×0.1mm,能满足检测精度为0.1mm的检测需求。工控机通过人机交互界面,实现对在线采集的图像进行识别处理,并输出相应的处理结果给执行结构单元,对不合格产品进行剔除等操作。
图2 检测系统硬件架构图
图3为检测系统框架流程图,包括图像采集、图像处理、结果输出三个步骤。虚线框为图像采集模块,包括平板光源,工业相机和图像采集卡等,通过调节平板光源的光照强度可以得到不同光照下的实验结果;图像采集完成后经过工控机内的图像处理单元进行匹配,并输出检测结果;最后输出结果给PLC控制器完成笔芯的剔除等操作。
图3 检测系统框架流程图
2 笔芯护套密封性检测关键算法
由于安装流水线机械振动等原因会出现护套未安装或安装不紧密等缺陷。为检测笔芯护套密封性是否良好,本文提出一种基于互信息和高斯金字塔的护套密封紧密性检测方法,其关键算法流程如图4所示。
图4 关键算法流程图
首先,在采集的特征图像(Feature image)和目标图像(Target image)相似位置选取两个大小相同的感兴趣区域(Region of interest,ROI),ROI中包含匹配所需的灰度特征信息或梯度特征信息;其次,对选取的ROI进行归一化互信息匹配,对灰度值相似的特征进行匹配,同时保证其他特征信息被均等处理;然后,对归一化互信息处理后的特征区域进行灰度级相似特征提取,尽可能保留灰度值相近的特征;最后,对特征区域进行高斯金字塔分层处理,得到区域多尺度特征。经过归一化互信息和高斯金塔的结合处理后,得到灰度和梯度匹配的结果,设置相应参数,即可完成结果的标识和输出。
2.1 灰度值匹配算法
灰度值匹配[17,18]算法是机器学习中常用的方法之一,它是一种基于图像和模板之间灰度值相似度的匹配算法,适用于不模糊、不缺失、灰度值不变化的对象。规定模板图像在区域R内自由平移,当模板移动到某一位置时,其相似度量定义为S:
其中R为感兴趣区域,t(u,v)为模板中某一个像素点的灰度值,f(m+u,n+v)为图像移动至模板区域内的灰度值。为了将相似性度量具体化,引入模板灰度值与图像灰度值之间差的绝对值的和SAD以及差值的平方和SSD:
其中n为模板感兴趣区域像素点的总数量。相似性度量的值越大说明与模板差别大。
基于灰度值的匹配方法是初步的最基本的匹配方法,匹配结果受外界干扰影响大,为了提高匹配的鲁棒性,在此基础上进行相关性匹配能有效地提高匹配结果的稳定性,采用归一化互相关函数NCC来匹配图像与模板,表达式为:
其中mt、为模板所有像素点灰度值的平均值和方差,uf(m,n)与(m,n)为平移到当前位置图像所有像素点灰度值的平均值和方差。
2.2 归一化互信息匹配算法
互信息[19]是用来评价一个事件的出现对于另一个事件的出现所贡献的信息量,在灰度图像匹配中可以理解为一个图像中的灰度信息对于另一个图像灰度信息出现的贡献。归一化互信息是机器学习中度量两张图片相似度的方法,对两幅在灰度级数相似的图片有很好的匹配精度和匹配可靠性。该算法通过计算目标图像和模板的信息熵,然后计算联合的信息熵来表示目标图像和模板的匹配程度,联合信息熵的值越大代表模板和目标的相似性越高[20]。
模板图像的信息熵为H(X),目标图像的信息熵为H(Y),联合信息熵H(X,Y),表达式分别为:
其中X,Y分别代表模板和目标图像中的所有灰度级,概率密度pX(x)代表模板中某个灰度级的概率,概率密度pY(y)代表目标图像中某个灰度级的概率,联合概率密度pXY(x,y)代表模板图像的灰度级x在模板的相同坐标下在目标图像中灰度级为y的像素点个数与总像素点数的比值。然后计算归一化联合信息熵NMI(X,Y),表达式为:
2.3 高斯金字塔算法
高斯金字塔[21,22]是通过连续高斯平滑和降采样得到的一系列子图像,底层为原始图像,降采样将图像所有的偶数行和列去除得到上一层的图像,这样每层图像的大小都为下面一层的四分之一。G0表示原始图像,将G0作为金子塔的第零层,即最底层,构造高斯金子塔的第k层图像为:
式中:N为金字塔的层数;Rk和Ck分别表示高斯金字塔第k层图像的行数和列数;w(m,n)是一个5×5的低通窗口函数,且满足可分离性、归一性、对称性和奇偶项等4个约束条件,式(10)为一种常用5×5窗口的归一化低通掩模;
通过式(9)可依次得到G0,G1,…,GN。
图5为护套密封处灰度图像经过三层高斯金字塔分层后所得到的各子图像。其中0为原始图像,即第零层图像G0;1、2、3分别为分解的各层图像G1,G2,G3。从图中可以看出,随着层数的增加,图片的分辨率和大小逐层减小,形成了多尺度的护套图像。选取特征区域后,会在各个尺度上相同的位置进行匹配,增加了匹配的准确性。
图5 笔芯护套灰度图高斯金字塔分层图
3 实验结果及分析
所采用的检测环境为:Windows7 X64系统,Inter Core i5主频2.5GHz,8GB内存。用VS2015编译下的C++编程环境以及Qt5.11.0 MSVC2015和Halcon库实现本文算法,所涉及图像均在上海晨光文具股份有限公司笔芯装配车间现场采集。图6展示了待检测笔芯及采用两种不同特征模板的检测效果图。图6(a)中红色椭圆区域为待检测密封间隙区域;图6(b)为灰度特征模板,图中ROI下方选取的区域绿点部分周围有明显的灰度差异;图6(c)为梯度特征模板,图中ROI下方选取的区域中绿点部分具有明显“凸”起的部分,梯度特征明显。选取的两种不同模板的ROI,通过将“小”的间隙转换为“大”的特征点之间的距离,然后与测得的标准样品特征点之间的距离进行比较,进而得到密封间隙的长度。选取的特征区域经过图像金字塔处理会在分解的各层中进行匹配,得到护套区域的多尺度特征匹配结果,图中绿点代表匹配结果。实际测试场景中,采用梯度特征模板具有比采用灰度特征模板更高的精确度。
图6 两种模板
针对笔芯生产中的各类情况,对300支笔芯进行了模板学习和识别。首先对本文提出的方法在两种不同模板条件下分别与灰度值匹配算法、高斯金字塔匹配算法进行了比较,采用真正率(Pse)、真负率(Psp)和准确率(Pac)作为评价标准,其定义为:
上式中,TP表示合格产品被识别为合格的数量,FP表示不合格产品被识别为合格的数量,FN表示合格产品被识别为不合格的数量,TN表示不合格产品被识别为不合格的数量。Pse代表真正率,表示合格产品被检测为合格的比率;Psp代表真负率,表示不合格产品被检测为不合格的比率;Pac代表准确率,表示检测总的准确率。实验对10000支笔芯进行在线检测,不同算法处理结果如表1所示。
表1 实验测试结果(%)
从表1可以看出,选取模板b和模板的情况下,本文算法三项指标均为最高。剔除率分别为98.67%和98.34%,漏检率分别为1.33%和1.66%;准确率分别为97.35%和97.18%,误检率分别为2.65%和2.82%。选取模板b时,灰度值匹配算法的剔除率和准确率比高斯金字塔匹配算法更高,因为模板b下方选取的特征区域种灰度差异较大,提取灰度特征信息更有利。选取模板c时,高斯金字塔匹配算法比灰度值匹配算法的剔除率和准确率高,因为模板c下方的特征区域包含更多的梯度信息,更适合使用金字塔算法来提取特征点。从本文算法的结果可以看出,选择梯度模板的剔除率比灰度模板高0.33%,准确率高了0.17%,主要是因为高斯金字塔在分解图像的高层提取图像的准确率更高。
光照是检测过程中最重要的干扰因素,在照明条件变化时会对检测结果造成不同程度的影响。选取检测准确度更高的模板c,分别对其在强光、正常光、弱光下进行检测,为了验证本文算法检测的效果,将本文算法与归一化互信息、高斯金字塔、变换域特征和SIFT特征算法进行对比,实验结果如图7所示。实验图像合格的标准距离范围为375±10,单位为像素。图中绿色数字代表检测结果在误差允许范围内,数值越接近375表示结果越精确;“-1”代表模板匹配失败;红色数字代表检测结果在误差允许范围外。可以看出当光照改变时,基于变换域的特征匹配算法和归一化算法会出现匹配失败或者匹配误差较大的情况。当检测结果合格时,除本文算法外,其余算法特征区域匹配点会发生不同方向的偏移,导致检测结果不精确。
图7 不同光照条件下各算法实验结果
为了进一步展示本文算法的优势,我们进行了定量分析,表2给出了本文算法与当前各类匹配算法在上述图像下的定量结果检测对比,还对各算法的运行时间进行了评估。为了保证定量分析的标准一致,统一选取特征点距离为375个像素长度的图像,错误阈值为10个像素长度,即算法检测结果与标准距离相差10个像素以上即为误点匹配。最后统计各算法在上述实验条件下检测100次的平均误差率以及平均的运行时间。表2可以看出,不同光照条件下本文算法的匹配误差率分别为1.34%、1.07%、1.15%,均优于其他算法;随着光照的改变各算法匹配误差率都有不同程度的增加,光照因素对本文算法检测和SIFT结果影响不大,但会使变换域匹配算法和归一化互信息算法出现失配和匹配误差大的情况;从运行时间来看,本文所提算法平均运行时间为0.82s,相较于归一化互信息和高斯金字塔虽然有所增加,但在匹配精度上有了较大的改进;本文所提算法与深度学习方法SIFT相比,在匹配精度差异不大的情况下,运行时间明显更短。实际上,本文所选的两个特征区域较小,且特征区域中包含有明显的灰度或梯度特征,再经过归一化互信处理后区域内的特征也变少,此时高斯金字塔算法在进行多尺度分层时所涉及的运算量也较少,所以本算法相较于归一化互信息和高斯金塔算法所增加的运行时间也较少。
表2 实验测试结果对比(%)
综合实验结果分析得出,实验中目标的检测距离单位为像素值,所用相机的分辨率实际距离间的转换关系为1像素=0.8mm,检测结果精确到小数点后三位,实际整体检测精度高于0.1mm,能达到检测精度需求。在实际检测过程中,相机每次拍摄四支笔芯,以四支笔芯为一组进行匹配,算法每次匹配的时间约为0.8s,其检测速度最快约为300支/分钟,能满足检测速度需求。
4 结语
基于归一化互信息和高斯金字塔匹配算法,设计并实现一种笔芯护套密封性检测方法。通过分析处理在线采集的护套图像,准确、高效地检测出护套密封的缺陷。采用归一化互信息和高斯金字塔结合的方法,有效地找出护套区域多尺度匹配特征,相比传统的灰度值匹配和高斯金塔算法,该方法匹配准确度更高,并且能有效地解决光照因素的影响。实验结果显示,总体的检测漏检率和误检率仅为1.49%和2.73%,检测误差不超过0.1mm,检测效率最高为300支/分钟,能达到实际生产的检测要求。