基于区域神经网络的TFT-LCD电路缺陷检测方法

2018-08-07 10:47何俊杰陈松岩
计算机与现代化 2018年7期
关键词:网络结构卷积尺寸

何俊杰,肖 可,刘 畅,陈松岩

(厦门大学物理科学与技术学院,福建 厦门 361001)

0 引 言

薄膜晶体管液晶显示器(TFT-LCD)是微电子与液晶显示巧妙结合的一种显示设备,因其低功耗、高分辨率、大尺寸的特点,被广泛应用于计算机、电视、手机等重要领域。大部分的TFT-LCD组件包含大量复杂的电子线路,产生的缺陷范围可能小于0.01 mm2并且很容易被周围的线路遮挡覆盖。缺陷的特征具有很低的对比度和模糊的边缘,有些甚至连人眼都很难分辨出来。由于其制作工艺复杂,并且人工质量检测受主观因素干扰难以达到统一的判断标准,自动光学检测(AOI)已经成为一项极其重要的步骤。近年来,机器视觉已经在工业检测上取得了巨大的进步。大多数视觉系统能达到稳定、快速和自动化的程度,但是对于复杂的图像,尤其受光照不均、重复纹理背景等的影响,它们仍然有很大的误报率。

传统的目标检测算法主要根据人工设计,提取特定的图像特征以达到匹配或者分割目标的目的,主要有SIFT、HOG、LBP[1-3]等。朱光等[4]利用一维傅里叶变换和全尺寸小波变换提取缺陷特征信息,在复杂背景下可以较为准确地检测出TFT-LCD表面缺陷。苏小红等[5]针对TFT-LCD微米级缺陷的问题,提出基于局部图像模板匹配的图像配准方法,实现亚像素级上的图像配准,在微米级上达到快速自动检测。而在模式识别方法中,Gall等[6]在2009年提出的Hough Forest算法,将随机森林(Random Forest)和霍夫变换结合起来,通过训练特定目标类别,对物体的中心进行投票,选取局部极值作为物体的中心来达到检测任务。Felzenszwalb等[7]提出的可变形组件模型(Deformable Parts Model,DPM)方法,用训练好的组件滤波器对DPM特征图进行卷积操作,从而对得到的响应图进行目标检测。传统的检测算法和模式识别算法通常利用像素间的相关性,在低层次特征空间完成检测任务,所需样本数量少,检测速度快,但是抗干扰能力差,缺乏泛化能力,不会随着样本的增加而提高准确率,当工业生产中产生新的无规则缺陷时,极容易被忽略而造成产品质量下降。

近年来,深度学习引起了人们的广泛关注,结合区域信息的卷积神经网络在目标检测领域中取得良好的效果。R-CNN[8]、Fast R-CNN[9]、SPPnet[10]、Faster R-CNN[11]等一系列神经网络检测算法代表了目标检测的前沿水平,同时也成为工业检测领域的一个研究热点。本文针对TFT-LCD电路缺陷检测的问题,提出一种基于改进的Faster R-CNN缺陷检测模型。通过构建多层的区域提议网络(Region Proposal Network)生成精确的候选区域,根据区域特征和样本分类实现对目标缺陷的识别和定位。同时深入分析不同网络结构对检测性能的影响,在实际构建的6类电路缺陷数据集(共172800张图片)上进行实验,验证了本文检测模型的可行性和有效性。

1 基于区域的卷积神经网络

卷积神经网络通常用于图像分类任务,Girshick等[8]在2014年提出R-CNN算法,开创性地将目标候选区域和卷积神经网络的监督式训练结合起来,成为神经网络在目标检测领域的开山之作。基于区域的卷积神经网络(R-CNN)避免了传统目标检测算法利用滑动窗口依次判断图像所有区域所带来的巨大计算量和较高的误判率,它预先提取一系列可能是物体的候选区域,之后在这些候选区域上利用卷积神经网络进行特征提取与目标判断。R-CNN算法进行目标检测分为4个步骤:

1)使用selective search[12]方法从一张图像上生成2000个左右的候选区域。

2)对每个候选区域,使用卷积神经网络CNN进行特征提取。

3)将特征向量送入每一类的SVM分类器,判断所包含的物体的所属类别。

4)使用回归器精细修正候选框的边框位置。

在训练阶段,R-CNN要进行2次神经网络的训练。首先,在预训练阶段使用一个较大的训练集进行分类训练得到每张图像中物体的类别,文献[8]中大多直接采用在ILSVRC 2012上训练好的ImageNet网络模型。由于液晶屏边框缺陷类型与生活中的物体相差甚远,并且直接采用ImageNet网络不利于对网络结构作出调整。为此,本文采用实际采集的液晶屏边框电路数据集进行分类训练,得到多种网络结构的预分类模型,提高后续目标检测的可靠性和准确性。其次在预分类模型的基础上进行网络调优训练。对训练集的每一张图像,通过选择性搜索的方法获取2000个候选区域,并将候选区域归一化成相同尺寸(224×224)作为卷积神经网络的输入;在CNN上进行特征提取得到固定长度的特征向量集合;以特征向量集合和多个类别标签作为输入,训练SVM分类器;最后通过回归器对目标的边框和位置进行精修。

通过神经网络强大的图像特征提取能力,结合检测目标的位置信息,R-CNN算法在准确率和检测效率上都优于传统的目标检测算法,但是由于候选区域的选择过于耗时,造成在准确率不断提高的同时,检测速度始终很慢,不能用于实际工业检测中。因此,Girshick等[9]于2015年提出Faster R-CNN,通过区域提议网络(RPN)产生候选区域,实现端到端的检测,不仅提高了准确率,而且大大缩短了检测时间,满足一般工业检测的要求。

2 TFT-LCD电路缺陷检测模型

2.1 模型结构

图1 Faster R-CNN通过构建联合网络来实现端到端的训练

本文的电路缺陷检测算法过程基于Faster R-CNN,用区域提议网络替代选择性搜索算法,在最后一层卷积层的特征图上进行滑窗操作并映射回原图得到相应的候选区域。与R-CNN相比,Faster R-CNN具有如下特点:1)区域提议网络具有”attention”机制,使得后续的检测网络能够选取更为精确的候选区域进行训练和检测,在避免因选择性搜索算法造成时间和空间开销较大的同时提高检测精度;2)采用SPPnet的方式引入空间金字塔池化层,让神经网络可以接受任意尺寸的图像输入,从而使整个网络系统变得更为灵活。

由于电路存在的缺陷目标较小,图像背景较为复杂,不同于行人、车辆等传统的检测目标,本文对Faster R-CNN的结构进行改进。原本的区域提议网络只通过一层卷积层对共享卷积产生的特征图提取256维的特征向量,此特征向量是整个区域提议网络的核心,用于预测候选区域的类别和位置参数,如图1的RPN(Region Proposal Network)部分所示。本文对区域提议网络进行调整,增加RPN的卷积层为三层结构,每层都使用3×3尺寸的卷积核,使得最后提取的特征向量能反映候选区域的深层特征,在不增加特征维数的同时,提高对细微目标的检测能力。改进后的RPN结构如图2所示。

图2 改进的三层RPN网络结构

整个结构把区域生成网络和检测网络融合到一个深度网络框架之内,如图2所示。其目标检测算法训练阶段流程如下:

1)使用CNN的基础部分(卷积核+池化+激活函数)对原图像进行特征提取得到特征图;该特征图被后续的区域提议网络和全连接层共享。

2)区域提议网络为全卷积网络,用3×3尺寸的卷积核对特征图进行滑窗得到新的feature map,feature map上的每个特征点称为“锚点(anchor)”,将每个锚点映射回原始图像,采用3种不同尺寸和3种不同比例(1:1,1:2,2:1)组合成9种不同尺度的检测区域。锚点反应了对应原始图像检测区域的深层特征,由此可以判断检测区域包含目标的概率值,并计算包含目标位置的偏移量以获取精确的候选区域(Region Proposal)。

3)将得到的CNN特征图和候选区域一同输入ROI池化层,综合这些信息后提取候选区域特征图(Proposal Feature Maps)送入后续的全连接层。

4)全连接层的最后一层是具有2个分支的输出层,第一个分支输出检测目标的类别,其类别代价函数softmax表达式为:

其中,i是每个特征向量的索引,Pi为候选区域中目标/背景(IOU)的概率值,而Pi*为二进制标签,当候选区域含有目标时Pi*=1,否则Pi*=0。

第二个分支输出目标的位置偏移量,利用边框回归得到精确的目标检测框,其回归代价函数表达式为:

其中,ti是一组向量,表示预测的检测框的4个参数化坐标,ti*是训练时人工标注的真正目标的坐标向量;R是表示距离的损失函数Smooth-L1 Loss,表达式为:

上述的训练流程通过卷积特征共享融合2个网络,执行多任务损失函数同时完成目标的分类和定位,整个网络不仅打破了计算候选区域的时间瓶颈,而且提高了准确率。在目标检测阶段,Faster R-CNN对整张图像进行卷积运算获取特征图,然后通过区域提议网络生成大量候选区域,并进行非最大值抑制(nms)[13]保留有效的候选区域,输入ROI池化层后在全连接层输出检测结果。

2.2 网络结构设计

由于不同的网络结构具有不同的性能和特征提取能力,对缺陷检测的准确性和检测效率有很大的影响。在神经网络中卷积核的大小代表了感受野的范围,当目标以细微的形式出现或者背景环境变得复杂时,感受野范围的大小影响到神经网络能否在关键位置提取关键的特征。此外,神经网络的深度(层数)也是影响检测性能的一项重要因素。本节根据一些著名的卷积神经网络(zfnet[14],alexnet[15],vggnet[16])重新设计用于薄膜晶体管液晶显示器边框电路缺陷检测的基础网络结构,研究不同的卷积核尺寸和网络层深度对本文提出的检测模型在缺陷检测性能上的影响。

表1 在8层网络深度下不同卷积核尺寸的网络结构配置

NetworksSize-1Size-2Size-3Conv_1<11,11><7,7><3,3>Conv_2<7,7><5,5><3,3>Conv_3<5,5><3,3><3,3>Conv_4<3,3><3,3><3,3>Conv_5<3,3><3,3><3,3>FC1-4096FC2-4096FC3

表1描述了8层网络深度下的卷积核尺寸配置。从Size-1~Size-3,减少卷积核尺寸来观察感受野对检测结果的影响。Size-1拥有最大的尺寸(11×11),而Size-3全部采用3×3最小的滤波窗口。为了有效考察不同卷积核尺寸的特征提取能力,在固定相同深度的前提下,为每个卷积层配置相同数目的256个卷积核。在卷积层后是Relu非线性激活函数和空间池化层。从最后一层卷积层(conv5)获得的特征映射图被载入候选区域网络。最后三层(layer6~layer8)是全连接(FC)层,每一层含有4096个神经元。表2中的配置代表了在相同的卷积核尺寸(3×3)下不同的网络层深度。Depth-1的结构与Size-1相同,Depth-2有16层网络深度,而Depth-3则达到了24层。从Depth-1至Depth-3,本文通过逐渐增加卷积层来研究网络层深度对工业检测结果的影响。

表2 在3×3卷积核尺寸下不同网络层深度的网络结构配置

NetworksDepth-1Depth-2Depth-3Conv_layerconv1_1 conv1_1conv1_2 conv1_1conv1_2conv1_3Poolingmax-poolingmax-poolingmax-poolingConv_layerconv2_1 conv2_1conv2_2 conv2_1conv2_2conv2_3Poolingmax-poolingmax-poolingmax-poolingConv_layerconv3_1conv4_1conv5_1 conv3_1conv3_2conv3_3 conv3_1conv3_2conv3_3conv3_4conv3_5Poolingmax-poolingmax-poolingmax-poolingConv_layer———conv4_1conv4_2conv4_3 conv4_1conv4_2conv4_3conv4_4conv4_5Pooling———max-poolingmax-poolingConv_layer———conv5_1conv5_2conv5_3 conv5_1conv5_2conv5_3conv5_4conv5_5Pooling———max-poolingmax-poolingFC1-4096FC2-4096FC3

网络结构中,激活函数采用的是Relu函数[17],具有单侧抑制特性以及类似生物神经元的稀疏激活性,极大地加快收敛速度。池化层采用max-pooling,对邻域内特征点取最大值。其位于卷积层之后,在对卷积层数据进行降维的同时将图像特征转化为更高层次的抽象表达。Dropout[18]方法让网络在训练时以一定的概率将隐含层节点暂时从网络中丢弃,被丢弃的节点不参与此次权重的更新,而在下一次样本输入时又重新工作。它可以有效减少过拟合现象,增强泛化能力。训练过程中Dropout的比例值设置为0.5,同时把学习率设为10-3以及64大小的批尺寸。预训练模型和用于检测的调优模型都具有相同的网络结构和网络参数,本实验中Faster R-CNN和本文模型的预训练分类模型都根据网络结构的变化,利用实际采集的液晶屏边框图像训练集重新训练获得,为后续的网络调优提供初始化参数。

3 实验结果与分析

3.1 数据集

原始数据集为实际工业生产流水线上采集的图像,包含6类缺陷,分别为断点、脏污、划伤、裂缝、破损、异物,每类有1800张6576×4384像素的原始图像,从中截取43200张大小为512×512像素的含有缺陷的图像。为了训练阶段计算方便,统一缩至224×224像素,同时为了避免数据集不足造成的过拟合现象,使用旋转、镜像分别成倍地扩充数据量,最终构建具有172800张TFT-LCD边框电路缺陷图像的样本集。这样,每一类缺陷都可以任意分布在样本集中,并具有不同的方向。样本生成后,从每类图像中均匀抽取500个样本共3000张图像还原至512×512像素作为测试集,剩余的169800个样本作为训练集。在预训练阶段,训练具有6类缺陷的分类神经网络模型;然后在调优阶段,在训练集上用人工标注生成每个图像的信息文件,其中包含图像的尺寸、缺陷的位置和类别。

3.2 实验结果及讨论

本文实验的硬件平台为Intel i5-7500四核CPU、NVIDIA GTX 980Ti独立显卡(6 GB显存)、8 GB内存和500 GB固态硬盘,Ubuntu16.04.3操作系统。R-CNN、Faster R-CNN和本文提出的检测网络都基于Mxnet深度学习框架实现。这一节分析多种网络结构对本文提出的检测模型的性能影响,在相同条件下与传统的DPM算法、R-CNN和Faster R-CNN进行了检测性能的比较,并得出检测结果。

表3 本文模型在不同卷积核尺寸下的检测结果

网络结构特征维数候选区域个数/个mAP/%用时/sSize-16×6×2569077.80.055Size-27×7×25613079.70.059Size-314×14×25615083.120.10

表3说明缩小卷积核尺寸可以提高检测精度。从Size-1到Size-3,缺陷检测的精度提高了5.32%。CNN使用大尺寸的卷积核在一次卷积步长上提取更大范围的图像特征。Size-1网络结构检测时间短但减少了特征维数。并且从表3中可以看出,通过RPN产生的候选区域并进行非最大值抑制(NMS)后,Size-1剩下了90个有效的候选区域,而Size-3则达到了150个。特征维数和有效的候选区域直接影响到了Faster R-CNN的目标检测精度。小尺寸的卷积核能够聚焦于有效的目标,并容易提取关键特征。在相同的网络层数下,Size-3使用3×3的卷积核尺寸,对于复杂电路缺陷的检测达到了83.12%的准确率。

表4 本文模型在不同网络层深度下的检测结果

网络结构特征维数候选区域个数/个mAP/%用时/sDepth-114×14×25615083.120.10Depth-27×7×25630094.60.12Depth-37×7×25626093.70.15

表4中的结果表明,增加卷积层数实现了很好的检测效果,含16层的Depth-2达到94.6%的检测精度。此外,算法对一张图像的检测时间在0.12 s,属于可接受时间范围内的实时工业检测。而随着网络层深度继续增加,由于特征表达的抽象化程度过高,一些干扰因素容易与缺陷特征相混淆。此外,添加更多的卷积层也会导致特征提取的饱和效应,使得24层的Depth-3检测精度与Depth-2相比减少0.9%。

对于细微或者模糊的缺陷,小尺寸的神经网络感受野在目标检测中能够更有针对性地提取有效的特征,而大尺寸的卷积核容易混合复杂背景特征,导致检测性能下降。对于含有复杂的、无规则的图像缺陷,一般的8层网络结构不具有检测优势。因此需要检测结构具有一定的网络深度和检测效率。从以上分析可知,使用16层的深度与3×3卷积核尺寸网络结构(Depth-2)来识别和定位液晶屏电路缺陷能够达到最佳效果。图3表示在不同网络层深度下2个损失函数逐渐优化的过程(用于分类的Softmax和区域回归的smooth-L1 loss)。可观察到Depth-2和Depth-3的损失函数随着迭代次数的增加逐渐减少并趋向稳定,尤其是Depth-2有着更好的优化趋势。

本文的检测模型与Faster RCNN、RCNN、DPM在相同的数据集上进行了检测效率的比较,前三者基于深度学习的神经网络算法都采用上述Depth-2的基础网络结构,而传统的DPM算法则在相同的硬件平台上基于MATLAB R2012a软件进行测试,检测结果如表5所示。

由表5可以看出,本文所提出的检测模型在检测精度和检测效率上都达到较高的水平,具有较好的鲁棒性和实时性,满足工业检测系统的要求。检测结果如图4所示,编号1~6分别表示TFT-LCD边框电路上断点(breakpoint)、脏污(pollutant)、异物(debris)、裂缝(crack)、破损(breakage)、划伤(scratch)共6类缺陷的检测结果,本文的检测模型成功识别出各类缺陷并显示缺陷在图像上的详细坐标,坐标以图像左上角为原点。

表5 相同条件下不同检测算法的比较

检测算法准确率/%召回率/%用时/s本文方法94.689.20.12Faster RCNN88.782.30.13RCNN78.472.53.4DPM65.661.27.32

图4 本文的检测模型在TFT-LCD边框电路上的缺陷检测结果

4 结束语

高性能的自动检测系统是制造业核心竞争力的关键。本文提出了一种改进的卷积神经网络结合快速区域训练的方法,应用于薄膜晶体管液晶显示器设备边框电路的缺陷检测。对神经网络不同感受野和网络层深度进行研究,为更有效地分类和定位复杂的工业图像缺陷提供了有价值的贡献。该检测模型在含有6种不同缺陷的数据集上采用小尺寸卷积核和16层深度的神经网络结构获得了很好的检测效果。由于目前人工智能在工业检测领域的应用才开展不久,更大规模的数据还在不断采集并且自身的硬件设备也在不断更新优化。下一步的工作是继续探索性能更优越的网络结构,同时不断对数据集进行扩充,进一步提高神经网络在自动光学检测领域的准确性和实用性。

猜你喜欢
网络结构卷积尺寸
CIIE Shows Positive Energy of Chinese Economy
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
D90:全尺寸硬派SUV
基于时效网络的空间信息网络结构脆弱性分析方法研究
基于互信息的贝叶斯网络结构学习
复杂网络结构比对算法研究进展
佳石选赏