基于机器视觉的小样本零部件表面DD

时间:2024-11-15 11:25:01 公文范文 来源:网友投稿

佟 鑫,郑 彤,于重重,叶 洋

(北京工商大学人工智能学院,北京 100048)

基于机器视觉的表面缺陷检测在国内外金属制造业、纺织制造业、印刷制造业、塑料制造业、木材制造业和玻璃制造业等工业领域有重要的实际意义。美国西屋电器公司首次采用电荷耦合器件摄像机对钢板进行表面缺陷检测[1]。康耐视公司提出自我学习识别系统,有效地改善了传统方法在训练速度和精度上的不足[2]。王志成等学者针对不同形状的表面缺陷特征建立缺陷数据库,通过计算待检测表面缺陷和数据库中缺陷的相似性来实现类似钢板等金属零部件的缺陷检测[3]。所构建的传统的缺陷检测方法系统能够实现相机自动拍照和图像检测,但是其不足之处在于检测精度依赖于缺陷数据库的数据质量,并且不能很好地适用于复杂场景下的表面缺陷检测。

随着神经网络理论的发展,数据量足够时,深度学习提取样本特征的优势逐渐显露出来,在机器视觉领域越来越多的学者选择基于深度学习的模型来处理机器视觉的表面缺陷检测问题。如果数据量较少很容易导致网络的泛化性极弱。由于现实场景中经常很难收集到数据量充足的数据样本,面临着一些小样本场景下的分类识别任务,小样本学习相关理论因此迅速发展[4-6]。在工业生产中,工业缺陷很少发生,而且缺陷的种类多种多样,因此,在这样的不平衡小样本数据集上训练神经网络,容易造成过拟合的问题,难以实际应用[7]。

针对上述问题,由于得到的真实的汽车零部件缺陷样本较少,首先对小样本汽车零部件数据进行了数据增强,对原本数量较少的零部件缺陷数据进行扩充。模型方面,本论文以Faster RCNN模型为研究基础,结合指导框区域候选网络、循环特征金字塔和特征组合关系检测器等结构提出一种小样本汽车零部件表面缺陷目标检测模型。

现有的目标检测思路可分为单步骤检测算法和双步骤检测算法,单步骤目标检测是指在单次阶段就能同时完成目标分类和目标定位,代表算法有YOLO(You Only Look Once, YOLO)系列算法[8]。双步骤目标检测是先通过算法预测出带有检测目标位置信息的候选建议框,然后在对这些框进行分类和进一步的回归。单步骤目标检测方法经常存在识别物体位置精准性差、召回率低的缺点。所以针对小样本目标检测任务应优先考虑双步骤检测方法。

最早的双步骤检测模型是RCNN模型[9],随着机器视觉领域软件和硬件的不断发展,SPP NET[10]、Fast RCNN[11]、Faster RCNN[12]等模型被不断提出。其中,Faster RCNN是较为成熟的常用双步骤目标检测算法,相比于单步骤目标检测模型,Faster RCNN网络可更精确地检测目标,可以解决多尺度、小目标问题。Faster RCNN的模型结构图如图1所示。

图1 Faster RCNN模型结构图[12]

从图1可以看出, Faster RCNN模型首先对输入图像进行了特征提取,之后,区域候选网络(Region Proposal Network, RPN)会根据所提取的特征图生成若干对应的候选检测锚框,然后对锚框进行分类和回归。

3.1 基于指导框结构的区域候选网络

区域候选网络位于Faster RCNN网络的前端,其主要作用是在输入的图像上产生一系列候选建议框。在区域候选网络中使用滑窗的方式会在特征图中生成大量建议框,但单一图片中的物体特征有限,导致生成的建议框中负样本过多。同时,区域候选网络在生成建议框时会认为先验假设框的尺寸或者宽高比为几个固定值,这些先验假设往往随着不同的数据集变化而变化的,使得公共数据集上的先验假设并不适用于零部件表面缺陷数据集。

为解决上述问题,本论文采用融入指导框区域候选网络[13](Guided Anchoring Region Proposal Network, GA-RPN)的方式,使用提取到的特征来指导建议框的中心位置和宽高比,让模型在提高生成建议框效率的同时还能够生成任意尺寸大小的候选建议框。指导框区域候选网络框架如图2所示。

图2 GA_RPN网络框架

由图3可知,指导框结构主要由建议框生成模块和特征自适应模块组成。建议框生成模块主要作用是用来预测特征的位置和特征形状,且在网络训练过程中只保留大于预先人为设置的阈值的预测概率值,并进一步筛选掉了与目标缺陷无关的锚框区域。

图3 指导框结构图

由于零部件表面缺陷形状的不确定性,同一类缺陷的形状也可能差异较大。为了能全面而准确地预测出缺陷在零部件上的位置,指导框结构中加入了对于目标缺陷的形状预测。通过形状预测结构可以得到一组偏移调整量(dw,dn),偏移向量的作用是使得预测锚框在最大程度上接近真实锚框,用来指导建议框尺寸的调整。其中,形状预测分支中产生的偏移调整量用于指导最后的锚框回归,最终得到最贴近缺陷形状的锚框位置信息。

为进一步改善目标检测网络的候选框生成中正负样本不均衡的问题,在训练时加入聚焦式损失函数,以减少产生的候选框中负样本候选框对模型检测结果的影响。聚焦式损失函数如式(1)所示。

(1)

式(1)中,α因子用于平衡正负样本,γ因子调节简单样本损失降低的速率。实验证明设置γ=2时是最优。

3.2 循环特征金字塔网络

为了提取更丰富的图像特征信息,采用循环金字塔网络[15]来从多尺度的角度对零部件表面缺陷进行特征提取。循环金字塔网络是由基本的特征金字塔网络组成的。特征金字塔网络主要的作用是进行特征提取,在各个尺度上对特征进行整合合并得到多个新的融合特征图[14]。循环特征金字塔网络将传统的特征金字塔网络融合后的输出再次输入到网络骨架中,进行二次循环得到新的特征图输出,循环特征金字塔网络如图4所示。

图4 循环特征金字塔[15]

这一过程可以表示为式(2)所示。

fi=Fi(fi+1,xi),xi=Bi(xi-1,Ri(fi))

(2)

在式(2)中,fi表示输出特征,其中i=1,…,S,S表示特征金字塔的层数。x0表示输入图像,Fi分别表示从顶端流向底端的过程。Bi表示在将特征转换连接回自下而上部分的主干网之前的特征,将上述操作在神经网络中转换为递归操作可以表示为式(3)。

(3)

3.3 组合特征关系检测器

不同于一般的分类或者检测网络,小样本任务训练数据集通常由支持集和查询集组合而成,训练过程中会分别从支持集和查询集中随机选择同一类别的样本形成训练组合(QN,SN),QN和SN分别代表数据集中类别种类均为N类的查询集样本图像和支持集样本图像。这样的设计方式使得小样本模型在训练的过程中更加注重同一类别样本特征之间的关系,有利于学习类间样本的相似性。

组合特征关系检测器是指在模型训练的过程中将查询集和支持集的特征组合起来形成一种组合特征关系检测器。针对零部件表面缺陷样本数据量较少,检测识别精度较低等问题,本文提出一种组合特征关系,此组合特征关系是指查询集特征和支持集特征图上像素级上进行的特征组合,分别为多对多关系、一对多关系、一对一关系。

本文构建的组合特征关系检测器结构图如图5所示。图5中有三行结构,第一行结构是多对多的关系结构,多对多关系中将支持集特征和查询集特征连接成新的融合特征,最后用包含ReLU的两层全连接层输出最后的分数。图5中第二行是一对一的关系结构,首先使用1×1×C大小的卷积层对支持集特征和查询集特征进行池化操作,对于得到的每一个新支持集特征和新查询集特征进行拼接操作,最后用全连接层获得分类评价分数。图5中第三行是一对多的关系结构,一对多的关系是指将多个查询集的样本特征和单一支持集特征连接到一起,支持集特征和查询集特征会生成一个新的融合特征,然后将拼接的新的特征输入到后续的卷积池化层。

图5 组合特征关系检测器结构图

3.4 小样本零部件表面缺陷目标检测网络

基于前文提出的GA-RPN结构、循环特征金字塔网络、多关系检测器,最终的小样本汽车零部件表面缺陷目标检测模型如图6所示。

图6 小样本汽车零部件表面缺陷目标检测模型

从图6中可以看到,从模型结构上来说,模型产生候选框的结构是一个GA-RPN结构,GA-RPN的结构主要是由建议框生成模块和特征自适应模块组成。支持集和查询集图像的特征需要通过GA-RPN来预测得到候选框。在网络的特征检测器方面,为充分学习来自查询集和支持集的特征关系,分别以不同的组合方式对特征进行拼接,然后进行训练检测,最终的结果由三种组合关系共同作用得到。

4.1 实验数据集增强

为了证明小样本汽车零部件表面缺陷目标检测模型的有效性,在FSOD公共数据集上进行实验,并构造汽车零部件表面缺陷数据集,进一步验证此模型的实际应用效果。

汽车零部件表面缺陷数据集为零部件工厂现场采集得到,采集到的原始零部件图像尺寸大、冗余背景多。直接使用原始图片进行模型训练会影响模型训练精度和速度,因此首先对零部件图像进行图像分割,得到各种缺陷图像。汽车零部件表面缺陷的类型有八种,分别是铁锈、有无花键、黑斑、裂纹、螺纹孔遮挡、有螺纹、无螺纹、划痕。每一类别的缺陷图像数据为40张,图像尺寸大小为200×200。为解决采集图像时光照不均这一问题,采用自动色彩均衡算法[16](ACE)对零部件图像进行增强。零部件表面缺陷数据集图像数量少,因此采用数据增强来扩充零部件表面缺陷数据集。通过图像旋转、裁剪、颜色变换等方法对数据进行增强后,将每类图片扩为400张,图像尺寸不变。部分零部件表面缺陷数据集展示如图7所示。

图7 数据集部分表面缺陷图片

4.2 实验评估方法与实验环境

在目标检测模型Faster RCNN模型中,交并比(Intersection-over-Union,IOU)是由区域生成网络产生的候选框(Candidate Bound)和原始目标在图像标注的真实位置框(Ground Truth)的交集和并集的比值,如式(4)所示。

(4)

模型训练时会预先设置IOU阈值,对于检测过程中得出的一系列IOU值,模型将IOU值大于阈值的检测目标TP,将小于阈值的检测目标认定为FP,目标的真实总数量为N。检测正确的总框数与累计的总框数之比为检测正确率(Precision),正确率计算如式(5)所示。

(5)

正确识别出的目标与测试集中所有该目标的个数之比是模型检测的召回率(Recall),召回率计算如式(6)所示。

(6)

对于数据集中的每一个类,将横坐标定为召回率,将纵坐标定为正确率,可得到该类的P-R曲线,平均精度(Average Precision,AP)的值通过计算P-R曲线的面积得到。此处使用的评价指标为平均精度均值(mean Average Precision,mAP),是通过对各类的平均精度取均值所得到的。

本文实验的硬件环境为:CPU是Intel i7 8700k,内存大小为16G×2,GPU为NVIDIA GTX1080Ti×4,系统环境是Ubuntu16.04,实验环境是基于深度学习框架Pytorch1.4.0完成的。

4.3 实验结果与分析

使用本文提出的小样本汽车零部件表面缺陷目标检测模型分别在公共数据集FSOD和零部件表面缺陷数据集上进行了实验,为证明多关系检测器的合理性,分别对每种关系以及它们的组合进行了实验。如表1所示,实验的结果给出了1way-1shot下训练的mAP结果。

表1 1way-1shot下模型mAP

从实验结果可以看出,总体来说模型在FSOD数据集的表现比在零部件表面缺陷数据集的表现好很多,这是由于FSOD数据集无论是在样本多样性还是在样本数量上都远优于零部件表面缺陷数据集。在相同数据集下,特征组合关系检测器的三种关系组合线性相加时模型准确率最高。

由于本论文针对零部件表面缺陷的检测主要是检测八种缺陷,缺陷种类较少,为进一步验证本论文所构建的小样本目标检测模型对零部件表面缺陷数据集的效果,因此在针对零部件表面缺陷的检测问题时,分别进行了策略为“1way-1shot”、“1way-5shot”、“2way-1shot”、“2way-5shot”的实验,然后利用剩余的样本对模型的检测结果进行评估。

下表2所示是各种零部件表面缺陷在1样本训练的模型下进行检测的实验结果。

表2 1way-5shot下各缺陷的mAP

从实验结果可以看出,在“1way-5shot”训练策略下,模型平均检测精确率最高,可以达到51.5%。

针对零部件表面缺陷数据集数据量少、缺陷部位不明显等问题,本论文结合目标检测模型理论和小样本学习思想构建出一种适合汽车零部件表面缺陷检测的模型,从数据和模型两个方面分别做了增强和改进。实验结果证明,本论文所构建的小样本目标检测模型对于零部件表面缺陷数据集有较好的检测效果。

猜你喜欢 样本表面特征 用样本估计总体复习点拨中学生数理化·高一版(2021年2期)2021-03-19太阳表面平静吗小学阅读指南·低年级版(2020年11期)2020-11-16如何表达“特征”疯狂英语·新策略(2019年10期)2019-12-13不忠诚的四个特征当代陕西(2019年10期)2019-06-03推动医改的“直销样本”知识经济·中国直销(2018年8期)2018-08-23抓住特征巧观察数学小灵通·3-4年级(2017年9期)2017-10-13随机微分方程的样本Lyapunov二次型估计数学学习与研究(2017年3期)2017-03-09村企共赢的样本中国老区建设(2016年1期)2016-02-283.《黑洞表面》(英/美)等新青年(2015年2期)2015-05-26神回复意林(2014年17期)2014-09-23

推荐访问:样本 零部件 表面