APP下载

基于改进卷积神经网络的化纤丝饼表面缺陷识别

2020-05-08王泽霞陈振中

纺织学报 2020年4期
关键词:池化全局分类器

王泽霞, 陈 革, 陈振中

(东华大学 机械工程学院, 上海 201620)

化学纤维是一种常见的合成材料,因其强度高、密度小、弹性好等优点被广泛运用于各个领域,除传统的纺织服装领域外,其在国防航天、生物医用材料[1]、能源开发[2]等领域也有所涉及。为便于存放和运输,化学纤维通常卷绕在纸筒上形成丝饼,由于加工过程中速度过高、张力不均以及卷绕过程纸管跳动[3]等原因,生产出来的丝饼会产生各种表面缺陷,其中油污、绊丝、表面成型不良是最为常见的 3种缺陷,这些缺陷的存在不仅会影响丝饼的一等品率,且会影响后织造过程的顺利进行和织物的质量,因此,对化纤丝饼进行表面缺陷检测是一道必不可少的工序。

目前对于纺织品的缺陷检测大多是对纱线或织造之后的平面织物进行检测[4-6],而对卷绕之后的丝饼缺陷检测的研究内容还较少。各化纤工厂对丝饼的表面缺陷检测还是依靠检测人员在灯光照明条件下进行肉眼识别,这种人工检测方法受人为主观因素影响较大,易造成漏检和误检,且长时间的重复工作对人的身体危害很大。近年来,基于机器视觉的检测技术取得很大的发展,文献[7]采用机器视觉的方法设计了提取丝饼毛羽缺陷特征的卷积核,获取了毛羽特征,实现了对丝饼毛羽的检测。然而基于机器视觉的方法需要针对特定问题提取特定的特征,且最后的检测结果很大程度依赖于设计的特征,通用性不强。深度学习作为机器学习领域的新热点,通过对低层特征的层层组合,自动得到更抽象的高层特征表示,将特征提取与分类识别2个过程结合起来,在图像识别、语音识别领域都取得了突破性进展。

为此,本文提出基于改进卷积神经网络的化纤丝饼表面缺陷识别方法,首先对采集的丝饼图片进行分块操作,然后利用多个卷积层进行逐层特征提取,并用全局最大池化层替代传统的全连接层减少网络模型的参数,用softmax分类器进行分类。最后,针对丝饼样本易获取难标注的情况,提出一种主动学习方法,先标注少量样本训练网络,然后让网络主动挑选最具有价值的未标注样本,让具有丰富经验的丝饼缺陷鉴别工作人员进行类别判定和定标签,并添加到训练样本中重新对网络进行训练,如此迭代训练多次,实现对化纤丝饼表面缺陷的检测。

1 化纤丝饼表面缺陷识别算法

基于改进卷积神经网络的化纤丝饼表面缺陷识别主要分为3个步骤:1)对采集到的丝饼图像进行预处理,建立丝饼图像库;2)构建卷积神经网络模型,进行缺陷特征的提取和分类;3)利用主动学习方法挑选训练样本,减少网络所需标注样本数量。算法流程图如图1所示。

图1 算法流程图Fig.1 Algorithm flowchart

1.1 图像预处理

实验所用丝饼图像来自浙江省某化纤厂,采用工业CMOS相机采集,分辨率为2 048像素×1 536像素。由于丝饼缺陷相对于整个丝饼图像来说比较小,为突出各缺陷的特征,首先对采集到的丝饼图像进行分块处理。多次实验证明,尺寸为128像素×128像素的窗口可较好地表明要识别的丝饼缺陷,且避免了同一个样本中出现多种缺陷的情况。图2示出分块后的正常以及3种缺陷类型的丝饼样本。

图2 正常以及缺陷样本Fig.2 Normal and defective samples. (a) Normal; (b) Tripping filament; (c) Bad shape; (d) Stained yarn

为进一步扩充样本,对采集的丝饼图像进行移位和随机旋转,然后再进行分块以及标注,最后对分块之后的各类型样本进行水平翻转,再次实现数据扩充。数据增强方法的前提是不改变图像的原有标注,如果先分块标注,再进行旋转缩放操作,可能会导致原本有缺陷的样本变成无缺陷,如原样本为绊丝缺陷,缺陷在边缘,放大之后缺陷部分超出原来图像的边界,图像变为无缺陷样本,这会导致错标样本,不利于提升分类器性能。

由于丝饼图像采集过程中环境、相机等因素的影响,采集的图片会产生很多噪声,这些噪声的存在会影响后续的分类识别过程。为尽可能地去除这些噪声并保留丝饼缺陷图像的细节信息,提高图像的信噪比,对分块后的图像采用3像素×3像素的模板进行高斯滤波预处理。

1.2 卷积神经网络

1.2.1 卷积神经网络的构建

卷积神经网络由多个卷积加池化层组成,其逐层提取图片的特征,由浅到深,由整体到局部,具有很强的学习能力,相比于支持向量机这样的浅层机器学习来说,提取的特征更具表达能力,能够分离出解释不同类别的抽象的“变差因素”,使分类更加容易,这为解决丝饼的缺陷识别问题提供了思路。

AlexNet[8]网络是一个经典的卷积神经网络,在图像识别分类领域取得很大进展。但网络采用全连接结构,使得网络参数过多,训练速度慢,对于丝饼缺陷检测来说存在检测速度慢的问题;另外AlexNet的首层卷积核大小为11×11,尺寸较大。一般大尺寸的卷积核能够提取图像的整体特征,对于不同缺陷丝饼图像来说,其在轮廓形状和尺寸颜色这些整体信息上的差异较小,故这些特征对分类作用不大。

针对以上2个问题,本文模型在AlexNet基础上做了一些改进:采用全局最大池化层替代全连接层,保留最显著的特征,减少网络计算量和内存消耗;将第1层的11×11卷积核换成较小的3×3卷积核,提取有助分类的特征。图3示出丝饼缺陷识别网络模型图。整个网络包括4个卷积层和3个池化层,然后对最后一个卷积得到的特征图进行全局最大池化操作,最后进行softmax分类,得到预测结果。

图3 丝饼缺陷识别网络模型Fig.3 Network model of yarn package defect recognition

1.2.2 全局最大池化

传统的全连接层将最后一个卷积操作得到的所有特征图拉伸为一个长向量,然后逐层降低向量维度,最后进行分类。但全连接层的参数太多,尤其是从特征图拉伸而来的第1个向量与下一层的连接参数,这使得网络训练速度变慢。全局池化的思路是将最后一层卷积得到的每个特征图看成一个整体,对每个特征图进行操作,最后得到的特征向量的维数就等于上一层特征图的数目,这不仅增强了特征映射和类别之间的对应关系,且整个过程没有需要优化的参数。由于丝饼的缺陷相对整个样本来说较小,使用全局平均池化会考虑整张图片的信息,对所有特征值求平均,弱化了丝饼局部的缺陷特征[9],使得提取的特征不具备很好的区分性,而全局最大池化输出的是整个特征图中的最大值,提取了最显著的特征,更适合丝饼的缺陷检测。所以本文采用全局最大池化层来替代全连接层。设最后一层卷积得到的第l个特征图上的值为xij(l),y(l)为第l个特征图在全局最大池化操作后得到的特征值,其计算公式为

1.3 主动学习

在神经网络的应用过程中,获取大量无标注丝饼样本很简单,但对大量样本进行准确的定标注却需耗费大量人力财力,因此,如何在有限时间和成本条件下,使用尽量少的有标注丝饼样本,并快速提升分类器的性能是一个关键问题。主动学习方法只需对较少的样本定标注就能构建出比较强的模型,从而大幅度地降低标记成本,故使用主动学习方法可解决丝饼缺陷检测中遇到的标注成本问题。

典型的主动学习流程如图4所示。首先用少量有标注样本训练分类器,再用训练好的分类器对未标注样本进行预测,然后基于一定的准则挑选出一定的未标注样本让用户标注,最后更新标注和未标注样本库,继续训练分类器。

图4 典型主动学习流程Fig.4 Typical active learning processes

主动学习的关键是制定一个标准来准确衡量未标注样本的价值。传统的主动挑选准则有基于信息熵和Joshi提出的基于BvSB(best vs second-bast)准则2种[10],这2种方法都是基于样本信息度的采样策略。高信息含量的样本集合中可能出现样本具有较高相似度的问题[11],导致样本的多样性减少,从而不能快速地提升分类器性能。针对这一问题,本文综合考虑挑选的丝饼样本的多样性和信息度,提出一种新的主动挑选样本准则。

记样本的类别集合为Y={1,2,…,m},未标注样本集为U={x1,x2,…,xu}。

首先,计算每个未定标注样本的信息度,由于基于信息熵的方法受不重要类别的影响较大,故选用BvSB准则来衡量丝饼样本信息度。其计算公式为

式中:p(y1|xi)和p(y2|xi)分别表示当前模型预测的丝饼样本xi隶属于不同类别概率值的最高和次高结果。

接着,计算该样本相对于样本集的多样性,记为D(xi),D(xi)的值越大,多样性越高,其计算公式为

式中:u为未标注样本的数量;d(xi,xj)为2个样本xi和xj之间的对称散度距离,其计算公式为

式中:pyi为当前模型将无标注样本xi判定为类别y的概率值;pyj为当前模型将无标注样本xj判定为类别y的概率值;m为样本的类别数。

最后,对D(xi)的值进行归一化处理,使其和BvSB准则计算的值处于同一量纲,且b(xi)的值越小,D(xi)的值越大,挑选的样本信息量越大,多样性越高,因此,为了每次选择一批信息度很高,且存在较大差异的样本来提升分类器性能,定义如下的综合性选择指标:

式中:ε为很小的正值,防止分母为0;norm(·)为归一化操作。

计算每个未标注样本的I值并进行排序,选取I值最大的K个样本让用户进行类别判定并标注,然后添加到训练样本中,对原有的已标注训练样本和未标注训练样本进行更新,用更新后的样本来训练分类器。迭代进行上述过程,直至分类器达到预期的准确识别率或未标注样本全部标注完成。

2 实验结果与分析

本文实验在内存为8 GB,处理器为Intel(R) Core(TM)i7-3770CPU(3.40 GHz)的计算机上完成,采用TensorFlow深度学习开源框架进行网络模型的构建和调试,使用Python语言进行编程。采集的丝饼图像均采用JPEG格式,最终的样本尺寸均为128像素×128像素。

2.1 网络训练结果

为验证本文提出的改进的卷积神经网络算法在丝饼缺陷上的识别效果,改变模型参数进行多次实验,共选取了12 465幅丝饼图片作为训练样本。其中正常的丝饼样本数为3 121,绊丝类型的样本数为3 106,成型不良和油污的样本数分别为3 164和 3 074。选取512幅丝饼图片作为测试样本集,4种类型各为128张。最终网络的批样本数量为32,迭代次数为1 400,优化器选择Adam,学习率设置为0.001。模型训练的熵值损失变化曲线和准确率曲线分别如图5、6所示。可以看出,随着迭代次数的增加,模型在训练样本集上的损失值逐渐减小,识别准确率逐渐增加,且在迭代初期的变化率都比较大,最终都趋于一个较好的稳定值。

图5 模型训练损失曲线Fig.5 Model training loss curve

图6 模型训练准确率曲线Fig.6 Model training accuracy curve

表1示出模型在测试集各类型样本上的识别准确率,即模型预测的样本种类和样本真实种类相同的样本数与每类样本总数的比值。可以看出,各类型的识别准确率均在95.3%以上。在绊丝缺陷中,由于有些绊丝比较细,很难与丝饼背景纹理区分,导致准确率相对较低;成型不良缺陷中,有些成型不良区域较小,易造成误判;最终模型在整个测试集上的准确率为97.1%,识别效果比较理想。

表1 模型测试识别准确率Tab.1 Test recognition accuracy of model

2.2 不同全局池化和全连接的结果

对最后一层卷积得到的特征图分别进行全局最大池化、全局平均池化和全连接的操作,从参数所占内存、识别准确率和单张图片的检测时间3个方面进行对比,结果如表2所示。可知,本文所采用的全局最大池化操作在参数内存、识别准确率和样本检测时间方面都占较大优势,其中采用全局最大池化所得的识别准确率较全局平均池化有很明显的提升,这说明全局最大池化更能提取到不同缺陷丝饼图像中的区分性特征,更有利于丝饼的缺陷分类;和全连接相比,采用全局最大池化使得模型的参数量大大减少,加快了网络训练速度,同时池化操作也增加了丝饼样本对旋转、缩放等空间变化的鲁棒性。

表2 不同连接方式的识别结果对比Tab.2 Comparison of recognition results for different connection ways

2.3 主动学习结果

初始的少量标注样本后,采用本文中改进的聚类方法[12]来进行选取,该方法相对于随机挑选,可选取有代表性的样本,使初始的分类器具有较好性能,从而有效加快主动学习的后续进程,最终选取初始样本数为1 600。主动学习每次从未标注样本中挑选的最具价值样本数K设置为100,迭代进行 30次。图7示出本文提出的主动挑选准则与随机选择、基于信息熵以及基于BvSB准则在每次更新训练样本后的模型识别准确率。

图7 不同挑选准则的识别准确率Fig.7 Recognition accuracy of different selection criteria

由图7可知,3种主动学习方法都明显优于随机选择。在前几次迭代中,各选择方法训练的分类器性能差别不大,因为前期增加的标注样本数相对于原有的标注样本数量,所占比重太小。随着迭代次数的增多,分类器对丝饼缺陷的识别率得到有效提升,本文所提出的基于信息度和多样性准则的主动挑选方法的优势逐渐显现。在获得同等识别准确率的情况下,本文方法所需的迭代次数少于其他 3种方法,有效减少了所需标注样本数量,节约了标注成本。

3 结束语

本文将基于卷积神经网络的算法应用到丝饼的缺陷识别中。首先对采集的丝饼图像进行分块处理,凸显了缺陷特征,同时使得训练样本得到扩充,在一定程度上可预防过拟合。采用全局最大池化层代替传统卷积神经网络的全连接层,有效地减少了网络参数,增强了图像对空间变换的鲁棒性。最后采用softmax分类器进行分类识别。针对标注大量样本耗时耗力的问题,综合考虑未标注样本的信息度和多样性,提出新的主动学习方法来挑选对分类器最有利的丝饼样本。实验结果表明,改进的网络模型检测速度较快,对丝饼缺陷的识别准确率较高,达到97.1%。主动学习方法在达到同等准确率的情况下,有效减少了网络所需的标注样本数量,大大降低了标注所需的人力、财力,具有一定的通用性。但本文方法没有考虑多个标注问题,有些丝饼样本可能同时存在2种缺陷,如同时存在绊丝和成型不良缺陷,而现在的算法只能将一个样本归为一类,在之后的工作中,会进一步研究这种需做多个标注问题。

猜你喜欢

池化全局分类器
基于Sobel算子的池化算法设计
基于高斯函数的池化算法
Cahn-Hilliard-Brinkman系统的全局吸引子
量子Navier-Stokes方程弱解的全局存在性
卷积神经网络中的自适应加权池化
基于卷积神经网络和池化算法的表情识别研究
落子山东,意在全局
基于实例的强分类器快速集成方法
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器