张永超, 陈隆杰, 郭 斌
(1.浙江机电职业技术学院, 浙江 杭州 310053; 2.浙江省计量科学研究院, 浙江 杭州 310018)
液晶屏作为电子设备中重要的组成部分,其应用范围越来越广。液晶屏生产过程中的质量缺陷,主要有表面缺陷和显示缺陷[1-2]。表面缺陷容易检测,显示缺陷由于字符种类多,同时在装配过程中由于碰撞、挤压以及焊接过程中出现问题,难以发现。目前液晶屏产品显示主要依靠人工方法观察,对于表面缺陷比较容易快速检测,对于显示缺陷,主观性强,检测效率低,无法保证统一性,难以满足智能化生产线的需求。
针对液晶屏检测,温招洋[3]等人采用DCT 和Otsu检测算法进行LCD 的缺陷分割,实现背景不均匀检测。何俊杰[4]等人采用区域神经网络对TFT-LCD 电路缺陷进行检测,能够达到实时检测的需求,但是没有对显示缺陷进行检测。何蓓[5]等人针对目前电能表实际使用中的需求,采用图像分割与定位技术进行电能表的检测,但是检测速度和精度无法满足实时性要求。蒋莉[6]等人采用形态学方法,对点阵液晶屏进行显示质量检测,主要针对单个显示单元进行检测,无法满足字符检测需求。刘昶[7]等人提出了一种基于CNN 和SVM组合分类器的字符识别方法,准确率高,但是适用于比较复杂的背景,并且需要大量的数据进行训练,耗费时间长。
本文针对产品质量检测中对于液晶屏显示检测的需求,提出了一种快速的基于机器视觉的液晶屏字符显示识别方法。选用家用膜式燃气表作为检测产品,通过定位液晶屏显示区域作为ROI 区域,通过投影变换对图像进行校正,消除由于拍摄角度引起的形变,采用动态阈值变换提取液晶屏显示区域进行图像处理,提取目标结果进行模板匹配,最终识别数字字符,数字字符与液晶屏显示数值进行比较,从而实现液晶屏产品显示字符的检测,并且通过实验验证本方法的准确性和有效性。
本文采集到的产品液晶屏显示图像如图1 所示,通过图像看出,由于相机拍摄角度问题,加之产品背面不能保证水平,难以保证相机与拍摄液晶平面保持垂直,从而导致液晶屏具有一定的角度差异,为了快速提高字符识别的准确性,需要对液晶屏进行校正处理。本次实验中首先将液晶屏显示区域作为一个整体,通过一系列的图像预处理进行液晶区域定位,顺利分割,得到ROI 区域,并且根据提取到的ROI 区域的四个角点进行透射变换,得到完整的校正图像,保证图像显示的字符与模板字符尽量保持一致。在提取到的ROI 区域中进行图像处理,采用动态阈值和形态学处理方法,将液晶屏显示字符进行快速提取,并且根据小数点确定显示位数,将显示字符采用归一化(NCC)的模板匹配方法进行匹配,得到需要的结果。将结果与显示结果进行对比,从而得到本次实验的检测结果。
由于产品中的很多区域不需要进行检测和识别,因此需要将液晶屏提取出来进行检测,通过图像看出,液晶屏显示区域与本次工业相机拍摄原始图像中的产品面板中的液晶屏,主要采用背光显示,灰度值较低,能够方便与其他部分分割。目前,常用的分割方法主要有全局阈值、自适应全局阈值及动态阈值等方法。由于本次实验中的液晶屏打光问题,液晶屏显示区域内部明暗不一致,直接用全局阈值分割容易产生较大的误差。采用自适应全局阈值由于设备拍摄角度和打光问题,也容易将液晶屏作为多个部分,从而造成液晶屏显示区域提取效果不理想。因此,根据图像的灰度均值和方差,采用动态阈值法能够得到较好的分割效果。
设μ(x,y)、σ(x,y)分别为像素点(x,y)在邻域M的均值及标准差函数,f(x,y)表示像素点(x,y)的灰度值,N 是邻域M 内的像素点总数,则:
根据实际的使用需求,将图像的低灰度值区域fdark设定为灰度值特定值的像素点集。则动态阈值法分割过程可以表示为:
式中:fdark为动态阈值法分割出的二值化区域:k 为系数,取值大于零。根据现场的实际需求进行相关参数的设计,表征灰度值偏离标准差的程度,如图2 所示。
液晶区域已经分割出,但是有很多无关区域,需要进行进一步的处理。通过实验看出,本次液晶屏提取的区域的边界与其余区域边界不清晰,需要进行进一步的分割。本次采用Blob 分析,将提取到的区域图像进行腐蚀,断开相连区域,公式为:
断开相连区域之后,得到多个区域目标,由于本次实验中的液晶屏具有明显的相关特征,根据检测需求,选择相关的面积特征和形状特征,提取相关的液晶屏显示区域,并且进行相关的膨胀操作,从而能够顺利的进行区域分割,结果如图3 所示。
由于提取到的液晶屏显示区域具有明显的角度变化,需要进行进一步分析,将显示字符进行校正。透视变换是将图片投影到一个新的视平面,也称作投影映射,它是二维(x,y)到三维(X,Y,Z),再到另一个二维(x′,y′)空间的映射。投影变换过程中,转换如式5和式6 所示。
由于本次投影得到图像液晶屏的ROI 区域为矩形,能够得到四个角点的坐标。因此,可以得到透视转换的转换参数,通过转换得到的转换图像如图4 所示。
得到液晶屏显示区域中,由于显示区域明显偏暗,直接进行识别容易出现误判。因此,需要采用图像处理技术进行图像增强。目前常用的图像增强技术主要有空间域方法和频域方法。频域方法主要采用傅里叶变换到频率域进行图像处理。空间域方法主要采用灰度拉伸方法直接进行图像处理。相比较频域方法,空间域方法更加直接快速。本次实验采用空间域方法进行图像增强,公式如式7 所示。
式中:fmax、fmin为本次需要待识别的液晶屏区域内最大、最小灰度值;gmax、gmin为灰度拉伸区间的最大灰度值和最小灰度值;g(x,y)为灰度拉伸后像素点(x,y)的灰度值,通过灰度拉伸,得到图像增强后的效果图如图5 所示。
通过图像增强,能够明显提升液晶屏显示区域的灰度范围,为后期顺利提取字符进行图像匹配提供了基础,保证了结果的准确性和快速性。
在图像处理过程中,为了精确快速识别图像字符,需要进行字符分割,得到准确的二值化图像。由于本次识别的过程中需要通过小数点确定识别位数,因此,需要进行小数点的顺利提取,在提取的液晶屏区域内通过阈值分割,所得图像如下页图6 所示。从图中可以看到,存在很多噪声,并且面积和大小相对于小数点来说难以区分,需要进一步采用形态学特征进行分割。数字字符具有面积特征,小数点具有圆形特征参数,其余干扰特征形状不规则。因此,通过识别得到合适的字符图像,经过一系列的操作,本次字符已经与背景进行成功的区分,如图7 所示。
关于字符的识别目前有多种方法,用得最多的是模板匹配法、穿线识别法以及多层神经网络等。作为经典的匹配方法,模板匹配具有运算速度快、环境稳定下匹配效果好等优点。由于通过前期的图像处理,已经能够实现液晶屏字符的顺利分割,无需进行神经网络的训练和学习,并且液晶屏显示属于标准化显示,字符形状及特征固定,考虑到识别速度的快速性,本次实验因采用图像匹配的方法进行。目前常用的图像匹配方法主要有基于灰度值匹配、基于相关性(NCC)模板匹配及基于形状匹配等方法。灰度值匹配的效果差,受干扰大,基于相关性匹配的方法可以实现本次检测。其中的基本原理公式如式8 所示。
式中:aij和bij分别是模板图像和待匹配图像在第i 行和第j 列的像素值,a¯和b¯分别为模板图像和待匹配的图像的像素平均值。通过公式可以看出,本次测试的NCC 的值在-1~1 之间,值越大,说明两幅图像灰度间的相关性越高。通常情况下,当NCC 达到最大时,两幅图像处于正确的匹配位置。采用NCC 相关性进行匹配,可以在一定程度上抑制光线问题带来的干扰。
为验证本方法的可行性,本次采用多次测量的方法进行数据实验,采用模板匹配中,首先,获得数字0到9 以及小数点字符的模板样本图像,并归一化所有模板为9×11 像素大小,如图8 所示。
其中每个字符出现的概率基本相同,采集的图像经过图像处理、字符识别后,得到相关的数据,并且把采集得到的数据存入电脑进行后续检测。本次实验的程序流程图如图9 所示。
识别结果如表1 所示。
表1 实验结果
从实验结果可以看出,该方法对液晶屏显示数字字符识别准确可靠,字符的总体识别率在96%以上,从而验证了本方法的可行性。
本文提出了一种基于机器视觉的液晶屏产品显示字符的检测方法,能够根据实际的检测需求,进行动态调整,并且通过透射变换解决产品不水平以及相机拍摄不能保证完全垂直平面,从而导致匹配失误的问题。采用归一化模板匹配的方法进行液晶显示的字符匹配,实验表明:本方法准确性高,可以推广其他相关的检测方向,并且能够跟相关的机械控制设备进行配合,实现全自动化检测。不足之处在于没有建立显示汉字字符模板,没有实现汉字字符的检测。后期可以根据需要进行相关的显示汉字模板匹配,实现液晶显示全字符检测。