基于改进Faaster R-Cnn的手机屏幕缺陷检测方法研究
2023-01-20査云威陈志豪李伟朝
査云威 陈志豪 李伟朝
关键词:手机屏幕;缺陷检测;Faster R-cnn;注意力机制
中图法分类号:TP391 文献标识码:A
1引言
随着科技的发展,我国逐步成为制造业强国,对工业产品的要求越来越高。以手机屏幕为例,在手机屏幕的制作工艺过程中,由于作业环境和技术等因素的影响,一些产品总会出现一些不可避免的缺陷,如屏幕会产生气泡、划痕、锡灰等。目前,大多数手机屏幕的缺陷检测系统都是基于传统的计算机视觉,较少使用深度学习的方法对手机屏幕进行缺陷检测。为此,本文引入了深度学习缺陷检测方法,在用残差网络Resnet50作为Faster R-cnn的backbone的基础上,在Resnet50的不同Block中加入卷积注意力模块CBAM( Convolutional Block Attention Module),实验结果表明,改进后模型检测效果明显提升。
2算法模型
本文用缺陷检测的典型代表Faster R-cnn作为基本模型,用残差网络Resnet50代替VGG16作为FasterR-cnn的backbone,在Resnet50的不同Block中加入卷积注意力模块CBAM。
2.1 Faster R-cnn
由于性能优越,Faster R-cnn是two-stage目标检测模型中的杰出代表,其基本结构如图1所示。主要分为以下三个模块:特征提取网络;RPN(Region Proposal Network)层,即区域选择网络;Rol Pooling层,即区域池化网络。特征提取网络主要采用深层卷积神经网络提取图形中的特征信息,用于缺陷检测中的位置回归和分类。图片通过本层,经过一系列的卷积池化操作后,最后得到feature map。我们可以把RPN层看作是一种全卷积网络,此层是端对端的训练方式,最终结果是为了得到推荐候选区域Proposals。而在区域池化网络中,特征图经过该网络后会得到大小相同的候选框,保证全连接层的正常运行,选用分块池化的方式将候选框统一为固定尺寸。最后,使用最大池化的方式输出固定尺寸的特征图。
2.2注意力机制CBAM
卷积注意力机制模块CBAM模拟人的大脑皮层对重点事物特别关注的特性,以提高准确度。其本质是通过网络对输入图片的训练学习,学习图像的特征,产生一组特征权重系数,并强调图形的重点语义区域,而对不相关的背景区域减少注意力资源的机制。CBAM注意力机制是一种混合域注意力机制,分別在通道域和空间域上进行注意力特征权重的生成。
在通道域注意力模块中,输入的特征图F,高为H,宽为W,通道为C,先进行一次基于width和height的全局最大池化。同时,进行一次基于width和height的全局平均池化,分别得到AvgPoolhw和Maxpoolhw,再将AvgPoolhw和Maxpoolhw输入共享全连接层中,而后分别输出对应的特征图,将输出的特征作基于element-wise的加和操作后,用sigmoid激活函数,生成通道注意力特征,即M_c。最后,将M_c和输入特征图F做element-wise乘法操作,生成空间注意力模块需要的输入特征F′,具体如图2所示。
F′输入空间域注意力模块中,先分别进行基于通道的全局最大池化和全局平均池化操作,得到两个高为H,宽为W,通道为1的特征图,然后先后将这两个特征图做concat操作得到高为H,宽为W,通道为2的特征矩阵,再经过7×7的卷积操作,把通道维度降到一,即高为H,宽为W,通道为1。同样,经过sigmoid激活函数,得到空间注意力特征,即M_s。最后,将该特征和该模块的输入特征F′做乘法,得到最终生成的特征权重,具体如图3。
3数据处理及评价指标
本文的数据集来源于广东省某手机屏幕制造厂商,由4631张带有缺陷的屏幕图像组成,包括1124张正常样本,3507张带缺陷的样本,1654个气泡缺陷,1393个划痕缺陷和1034个锡灰缺陷。用labelimg工具对缺陷样本进行标注,标注的信息包括缺陷在图片中的像素位置(由xml文件记录),缺陷类别(气泡bubble、划痕scratch、锡灰tin ash)和缺陷图像文件名。而对于正常的样本图像不做缺陷标注。
本实验把3704张图片作为训练集,927张图片作为测试集。IoU(Intersection over Union)是衡量目标检测结果中预测框和真实框重合程度的指标,它反映了目标检测算法的准确度。其中,IoU的定义如下:其中,Area(A)代表真实标准框面积,Area(B)代表模型预测框面积。IoU的值越高,说明模型预测框和真实标准框重合面积占总面积越高,重合程度更高,预测越准确,性能越高。
当IoU比值比TP阈值高,则表示模型对于图片缺陷区域的预测是正确的,TP(True Positives)加一;如果比TP阈值低,则表示模型对于图片缺陷区域的预测是错误的,FP(False Positives)加一。根据TP,FN,FP计算出评价模型性能的其他指标,分别为Recall,Precision,AP值,公式如下:
Precision,又称精确率,表示被正确预测的缺陷样本在所有图片的占比,精确率反映模型的误检程度,Precision值越高也表明模型的误检率越低。召回率Recall表示的是被正确预测的缺陷样本在带缺陷的图片样本中的占比,反映模型的漏检程度,召回率越高,模型的漏检率越低。AP值则是由Recall,Precision两个维度分别作为横纵坐标下围成的P-R曲线下的面积,AP反映检测模型的综合性能,AP的值越大说明手机屏幕缺陷检测模型的综合性能越好。
4实验部分
4.1实验设计
本文模型是在Windows平台利用Pytorch1.8.0实现的,训练PC主要配置为i7-12700 2.10GHz
GPU(GTX-3060),内存64GB。在训练过程中,动量值、初始学习率、训练轮次分别设置为0.9,0.001,400。
4.2对照实验
本文拟用残差网络Resnet50作为Faster R-cnn的backbone网络层(图4),分别选取了Blockl,Block2和Block4作为插入CBAM的模块。
表1的实验数据以不同的插入方式分组为行,以固定阈值为列,在每种不同的插入方式中,记录IoU阈值在0.1~0.9下模型的Recall,Precision,AP值。实验中在每个阈值下最高的AP值均用下划线标出。分析表1可以得出,在各IoU阈值情况下,与baseline对比,插入CBAM模型的RecallPrecision,,AP值都得到不同程度的提升,其中AP值提高了1.21%~6%,即插入CBAM注意力机制的Faster R-cnn检测模型的综合性能越好。一般认为,IOU阈值为0.3时模型的检测能力更接近工业要求,此时AP值最高的改进模型为Block4后加入CBAM模块的Faster R-cnn模型。在IoU=0.3时,相较于baseline,Recall值提升了3.33%,Precision值提升了5.18%,AP值提高了6.52%。
5结束语
为了提高工业生产过程中检测手机屏幕缺陷的准确率,本文改进Faster R-cnn模型,用残差网络代替vgg16,然后以不同方式在特征提取网络添加CBAM注意力机制。分析实验数据表明,在模型加入CBAM注意力机制后,各个IoU阈值上模型的各项指标较原始模型都有明显提升。由此表明,本文改进后的Faster-Rcnn在手机屏幕缺陷检测工业领域具有重要意义。
作者简介:
查云威(1998—),硕士,研究方向:计算机视觉。