张君扬,景军锋
(西安工程大学 电子信息学院,陕西 西安 710048)
短切毡[1]是玻璃纤维短切原丝毡的简称,是将连续玻璃纤维原丝短切成50~75 mm的丝段在平面上随机无定向均匀分布,并加以适当的化学粘结剂粘合而制成的薄毡状材料,它是复合材料中的一种主流增强材料.因其具有良好的机械力学和化学性能,以及很好的冲模性和覆膜性,逐渐代替一些钢铁材料,被广泛应用于多种领域[2].目前,工业上对短切毡的质量提出越来越高的要求.在质量检测中,研究短切毡缺陷的分类,对于判别在生产过程中产生的缺陷类型,找出原因并修复具有重要意义.
目前,针对图像缺陷的分类问题,学者们进行了许多研究,提出不同的分类方法,主要集中在两个方面:一方面是基于人工提取特征[3-5]的图像分类方法.文献[6]提出一种基于局部与全局描述疵点纹理特征相结合的织物疵点分类算法,完成对织物特征向量的提取,取得较好的分类效果,但该算法在执行过程中需要消耗大量的计算资源.实时性较差.文献[7]应用RBF训练算法,提取织物疵点的特征参数,并利用人工神经网络判断织物疵点的类别,然而该方法的分类精度较低;另一方面是基于深度学习[8-9]的图像分类方法.深度学习作为机器学习[10]的一个新的领域,在给定大量的输入图像的前提下,由机器学习算法自动提取出图像的特征,并将特征提取[11]融入到模型建立的过程中,从而减少人工提取特征造成的不完备性.使用深度学习的方法来解决图像的分类问题已经成为学者们的研究热点.YING等[12]使用三层深度信念网络训练模型进行分类,经特征选择和参数优化之后,首先采用10倍交叉验证实验,分类的准确率达到97.2%,但模型的训练过程非常耗时.
针对上述问题,本文提出一种基于深度学习和分段线性插值相结合的缺陷分类方法.首先采用深度时空推理网络(DeSTIN)自动地分层学习,提取样本的原始特征,避免传统算法中的人为设计特征的复杂性和局限性.然后利用分段线性插值创建高维度信息的特征集合,提高原始图像特征的维度,改善原始图像的特征表示.最后使用Softmax分类器判断缺陷的类型.实验结果表明,提出的算法对短切毡缺陷可达到准确分类,缩短时间的目的,具有较高的准确性和适应性.
特征提取是图像分类任务的一个主要阶段,分类结果在很大程度上依赖于选取的特征是否能够合适地表征图像中包含的有用信息.在采集到短切毡的缺陷图像后,提取和使用短切毡缺陷的信息特征是成功构建一个有效的缺陷分类器的关键.在分析短切毡成型原因后,采用构建深度时空推理网络(DeSTIN)对短切毡缺陷的图像规律进行无偏差的估计,从而达到自动提取特征的目的,深度时空推理网络是深度学习的一种实现形式,属于深度神经网络模型[13-14].
图 1 DeSTIN网络结构图Fig.1 Structure diagram of DeSTIN network
DeSTIN是一种金字塔型的深度学习网络,它融合了无监督学习和贝叶斯推理[15],该网络是一个多层次的阶梯式结构,每个层次都由一组功能相同的节点构成.其工作原理为在DeSTIN的底层直接输入短切毡的原始图像,底层节点学习观测到的数据序列,构建一个信念状态空间来寻找和描绘输入数据中存在的时间和空间规律,生成信念状态.然后,将底层节点生成的信念状态作为输入数据传递给上一层节点,构建该层相应的信念状态空间,继续捕获这些输入数据的内在规律.依次类推,将每层节点生成的信念状态输入给上一层节点,直到顶层,形成一个阶梯结构.DeSTIN顶层的输出包含短切毡缺陷图像的特征与规律,作为有监督学习算法的输入,从而进行后续的缺陷分类[16]处理.
DeSTIN网络结构如图1所示,该网络模型是一个压缩形式,仅用来表征数据传输的主要规律.图1中每一层节点都是一个聚类集合,包含一定数量的聚类中心,每个节点的聚类中心都是一个与该层节点输入数据维数相同的向量.DeSTIN的聚类算法采用Winner Takes A11的竞争学习机制.通过计算和比较输入数据与每个聚类中心的欧式距离,找出距离最小的优胜聚类中心,进行聚类更新.更新后,对当前时刻状态的静态相似度Pr(o|s′)进行计算,即
Pr(o|s′)=(dj)-1/∑i(dj)-1.
(1)
式中:o表示当前节点数据的观测值;s′表示当前时刻状态;dj表示数据观察值到聚类中心的距离.
DeSTIN基本的信念更新规则为
(2)
式中:b为当前节点的信念状态;b′为更新后节点的信念状态;c为上一层节点的信念状态;s表示上一时刻状态;s″表示下一时刻状态.给定信念状态c的公式为
c=argmaxsb.
(3)
在信念状态更新过程中,当前节点的观测数据o的信念状态b映射到下一时间阶段形成新的信念状态b′,需要学习Pr(o|s′))和Pr(s′|s,c)这两个核心结构.前者通过聚类学习算法,利用有限数量的聚类中心来表示聚类集合中的信念状态;后者需要在给定的信念状态c的条件下,在经验的基础上通过试验来调整参数,得到从上一时刻状态s到当前时刻状态s′的转移概率,两者共同形成1个鲁棒性较好的结构,自动地学习复杂的数据表达形式.DeSTIN的输入是一个图像,其高维信号表示为
(4)
在经过给定的网络层传输之后,短切毡的原始图像转化为表示其特征向量的值,这些值为Voriginal=(O1,O2, …,On)T.
为了保证短切毡缺陷分类的准确性,提取短切毡缺陷的特征向量希望具有充分的维度.因此使用分段线性插值对深度时空推理网络(DeSTIN)提取的短切毡缺陷的特征进行升维,以满足特征提取过程中对特征维度的需求.
分段线性差值[17]的基本思想是给定特征向量Voriginal=(O1,O2, …,On)T和一个数据集合M={(x0,y0),(x1,y1),(x2,y2),…,(xk,yk)},(k≥n),设置{x0,x1,x2,…,xk}的值为特定连续的整数,将Voriginal值分配给{y0,y1,y2,…,yk}的1个子集.使用分段线性差值生成M集合中其他的(k+1-n)个缺失值,插值作用于Voriginal,直接生成额外的矢量元素Vadditional=(I1,I2, …,In)T.
分段线性插值函数可表示为基函数的组合形式
(5)
式中:P(x)表示插值函数;ωj(x)表示插值基函数;yj表示给定函数值.
基函数为
(6)
(7)
(8)
图 2 DESTIN算法流程图Fig.2 Flow chart of DESTIN algorithm
在短切毡缺陷分类的过程中,单独使用DeSTIN提取短切毡缺陷的特征将会引入复杂的计算,影响整个特征提取过程的效率,因此需要权衡特征提取的工作量与分类结果的有效性之间的关系.本文将简单的DeSTIN与分段线性插值串联在一起,待分类的短切毡原始图像经过DeSTIN处理,利用分段线性插值将得到的短切毡低维特征向量转换为高维度的特征集合,即
VD=(O1,I1,O2,I2,…,Im,…,On)T.
(9)
DESTIN算法工作流程如图2所示.DeSTIN和分段线性插值的综合使用显著增加短切毡缺陷图像特征向量的维数,而不会产生过多的计算量.将扩展得到的特征输入到Softmax分类器进行短切毡缺陷分类,提高分类的准确性.
短切毡在生产过程中由机械故障和人为因素等影响,会产生多种类型的缺陷,如分散不良、并条、污渍和破洞.因此短切毡缺陷分类是一个多分类问题,将提取的缺陷特征作为新的输入数据,通过有监督学习的方法来构建分类器.
本文采用Softmax回归模型[18],Softmax回归模型广泛应用于深度学习中解决多分类问题.训练样本集合{(x(1),y(1)),(x(2),y(2)),…,(x(m),y(m))},其中,类别标记y∈∀k值,即y(m)∈{1,2,…,k}.给定一个测试输入x,x被判定为j的概率为p(y=j|x),最大p值对应的j值就是x的类别,对于一个k分类问题,将会输出一个k维向量(向量元素的和为1)来表示k个概率的估计值,该模型函数的输出为
(10)
在Softmax回归模型的代价函数中添加一个权重衰减项,用来惩罚过大的参数值,构成一个严格的凸函数,保证得到全局的最优解.新的代价函数为
(11)
实验在PyCharm 2017环境下,处理器为Intel(R) Core(TM)i5-2400CPU@ 3. 10 GHz的计算机下完成.在实验室环境下,使用工业相机对短切毡的缺陷样本进行采集,采集到的图像大小为256×100像素.深度学习中需要大规模的训练样本进行特征参数的学习与提取,以避免样本量不足时出现的过拟合问题.利用数据增强[19]方法,对采集到的图像进行90°/180°/270°的旋转以及在水平、垂直方向上作镜像变换等操作,扩充样本数据.数据增强后的短切毡缺陷样本集见表1.
目前,工业上短切毡的缺陷主要分为分散不良、并条、污渍和破洞4种类型,选取8 000张短切毡的缺陷样本进行实验,设定训练集占比75%和测试集占比25%. 从表1可以看出, 4种缺陷样本数量各2 000张,在每种样本图像中随机选取1 500张作为训练集,其余500张作为测试集.将带标记的短切毡图像输入到DeSTIN网络中并提取特征,利用分段线性插值扩充特征,输出的特征送到Softmax多分类器中进行训练.
表 1 短切毡缺陷样本集
对短切毡的分散不良、并条、污渍、破洞4种缺陷类型进行训练,得到相应的模型,每种缺陷类型训练后的结果如图3所示.
(a) 分散不良 (b) 并条 (c) 污渍 (d) 破洞图 3 部分短切毡训练结果Fig.3 Training results of partial chopped strand mats
类型精确率/%召回率/%调和平均数/% 分散不良91.9596.0093.93 并条91.2694.0092.61 污渍10092.6096.16 破洞100100100 平均值/%95.8095.6595.72
从图3可以看出,在训练集中,短切毡的原始图像经过DeSTIN和分段线性插值的综合处理,显著增加了图像特征向量的维数.在此基础上,利用Softmax回归模型构建训练分类器,对分散不良、并条、污渍和破洞这4种缺陷类型进行学习,每种短切毡图像的缺陷类型的学习率达到100%.最终得到一个训练效果好、精度高的四分类模型.
输入短切毡的测试集样本图像到分类模型中,对训练好的短切毡分类模型进行测试结果见表2.从表2可以看出,该模型对破洞缺陷具有较好的分类效果,分类准确率达到100%,而对分散不良、并条和污渍这3种缺陷类型分类的准确率分别为93.93%,92.61%和96.16%.其中,并条的分类准确率仅为92.61%,这是因为在短切毡生产过程中,玻璃纤维由于分散不均,聚集成一束而形成并条缺陷,易于与分散不良类型混淆,模型难以识别;而破洞的分类准确率高达100%,原因是破洞类型的短切毡具有十分明显、易于区分的特征.部分短切毡的测试结果如图4所示.
从图4可以看出,该模型对分散不良、并条和污渍3种缺陷类型出现误检现象.图4(a)中模型将标记为分散不良的样本判定成并条的百分比为59.2%,分类模型自动将其归为并条类型;图4(b)中模型将标记为并条的样本判定成分散不良的百分比为58.4%,分类模型自动将其归为分散不良类型;图4(c)中模型将标记为污渍的样本判定成分散不良的百分比为57.7%,分类模型自动将其归为分散不良类型.出现误检现象有以下原因:一种是由于人工标记的缺陷样本类型不够精准,训练样本数量不够,模型的学习与构建存在一定的偏差;另一种是用于测试的缺陷样本特征比较模糊,符合两种及以上的缺陷类型,相似度较高,分类器无法正确识别缺陷的类型.但是对于绝大多数的缺陷样本,该模型的分类准确率较高,尤其是破洞缺陷分类实现零误检,整个模型的平均准确率达到95.72%,对于缺陷分类具有一定的适应性.短切毡缺陷分类结果的混淆矩阵及可视化图如图5所示.图5表明,该模型误将部分分散不良类型判别为并条,部分并条类型误判为分散不良,部分污渍类型误判为分散不良或并条.
(a) 分散不良 (b) 并条 (c) 污渍 (d) 破洞图 4 部分短切毡测试结果Fig.4 Test results of partial chopped strand mats
图 5 混淆矩阵及可视化Fig.5 Confusion matrix and visualization
在相同的实验条件与样本数据集下,分别采用主成分分析法(PCA)选择短切毡缺陷图像的灰度特征值[20]和单独使用DeSTIN提取特征对短切毡缺陷进行分类,与文中提出的DeSTIN算法相比,准确率及运行时间结果比较见表3.
从表3可以看出,使用传统的PCA和Softmax分类器对短切毡缺陷进行分类,平均准确率为87.31%,单张样本的处理时间为107 ms,使用DeSTIN和Softmax分类的平均准确率为92.50%,单张样本的处理时间为84 ms,而文中DeSTIN算法的分类平均准确率达95.72%,单张样本的处理时间为68 ms.相比人工提取特征的方法,文中算法平均处理时间减少39 ms,准确率提高10%左右;在特征提取的过程中,与单独使用DeSTIN提取有效特征相比,使用DeSTIN和分段线性插值提取相同维度的特征,特征提取的时间减少16 ms,平均准确率提高3%左右.实验结果表明,本文算法具有较高的准确率,检测时间较短,能够实现短切毡缺陷的有效分类,满足工业生产需求.
表 3 短切毡分类模型结果比较
本文提出一种基于深度学习和分段线性插值的短切毡缺陷分类方法.利用DeSTIN网络和分段线性插值提取短切毡缺陷的特征,避免了人工设计特征的不确定性和局限性,提高了特征提取的效率.为了提高分类的准确性,采用Softmax分类器进行缺陷分类,构建出一个高精度的四分类模型.实验结果表明,该方法能够高效、快速地提取短切毡的缺陷特征,为后续缺陷分类奠定良好的基础,具有一定的有效性和适应性,对于短切毡的缺陷分类准确率达到95.72%,具有重要的工业应用前景.