基于轻量级深度神经网络的工业产品缺陷图像分类方法与流程

文档序号:19636894发布日期:2020-01-07 12:08阅读:289来源:国知局
基于轻量级深度神经网络的工业产品缺陷图像分类方法与流程
本发明属于材料缺陷检测
技术领域
,具体涉及一种基于轻量级深度神经网络的工业产品缺陷图像分类方法。
背景技术
:工业中生产线产品的质量检测是进行产品质量控制的关键环节。在产品的生产过程中,工件内部可形成不均匀区域,其特征是气泡状间隙,裂缝,夹杂物,污渍,划痕等缺陷。这些缺陷通常通过人工检查来完成,主要是通过在生产线上对产品进行视觉扫描,将有缺陷的产品分类出来以便后续处理。然而,在大批量生产过程中,检测精度和速度易受检测人员主观因素及经验的影响,难以满足工业领域在效率和精度等方面的要求。传统的基于机器视觉检测缺陷的技术主要通过对被检物图像进行处理,具有检测速度快、成本低和检测结果可靠等优点。但是在图像处理过程中,需要人工定义和选择能够准确识别图像中缺陷的特征表示。在工业环境中,当出现新的问题时,必须手动设计新的特征,由于缺陷区域和位置的随机性,形状多样性和复杂性,因此用于描述缺陷的标准特征描述符往往导致分类结果不准确,很难满足实际工业要求。近年来,随着深度学习的兴起与发展,深度卷积神经网络克服了手动重新定义每个新缺陷的特征表示的困难,显著提高了图像分类,目标分割,目标检测和其他视觉任务等应用中的检测性能,其中具有代表性的分类网络主要有alexnet,vgg,googlenet和resnet。然而,这些经典的分类网络构建的越来越深,模型大小也在不断增加,在许多实际应用如在线检测,人脸识别和汽车自动驾驶中,需要在计算受限的平台上实时地执行识别任务,因此,在尽量不影响网络效果的前提下,模型压缩和简化设计成为了一个很重要的研究方向。为了减少深度学习网络模型在移动设备上运行所占用的存储空间,一系列轻量级的网络应运而生,代表性网络主要有squeezenet,mobilenet和shufflenet等,这些网络在图像分类准确率,网络的参数量与计算量和存储空间方面取得了非常不错的平衡。本发明拟提出一种基于轻量级深度神经网络的工业产品缺陷图像分类方法,将利用深度学习进行图像分类和模型压缩方法相结合,搭建了一个轻量级的深度学习网络,旨在不降低分类准确率的前提下最小化深度模型及加快检测速度,以达到在硬件资源有限的情况下满足实际工业缺陷检测的实时性需求。技术实现要素:本发明的目的是提供一种基于轻量级深度神经网络的工业产品缺陷图像分类方法,能够在不降低分类准确率的前提下最小化深度模型及加快检测速度,以达到在硬件资源有限的情况下满足实际工业缺陷检测的实时性需求。本发明为实现其目的,所采用的技术方案包括以下步骤:一、工业产品图像数据集的准备1.1、本发明从某电子厂获得某一批次工业产品的图像,并对获得的图像进行预处理,通过对图像采用多次旋转、改变图像对比度、调节色度、饱和度等数据增强的方法扩充样本。1.2、准备训练集、校验集和测试集,并做好对应图像的标签,将图像和对应的标签转换成卷积神经网络能识别的数据类型,即lmdb格式的输入文件。二、轻量级深度神经网络的搭建2.1、本发明搭建的轻量级深度神经网络如图2所示,该轻量级深度神经网络架构包括1个卷积层(第一卷积层)、5个并行深度可分离卷积模块、1个并行非对称卷积模块、4个最大池化层、1个全局均值池化层和一个softmax层;除最大池化层外,网络每层后面都添加一个批量归一化层对数据做归一化处理,以加速收敛并提高网络的泛化能力,网络使用的激活函数为relu函数;2.2、本发明轻量级深度神经网络架构中的并行深度可分离卷积模块结构如图3所示,与传统的卷积层不同,该并行模块混合了不同尺寸的卷积滤波器,这种设计不但能够更好的融合不同尺度的特征,还能提取到更丰富的缺陷特征,使后续的缺陷分类操作更准确;图3中实线框代表的是本发明提出的并行深度可分离卷积模块。首先,使用1×1的卷积滤波器来减少输入到虚线框的通道数,即特征图个数;其次,虚线框是由1×1卷积滤波器和点划线框混合而成,即采用不同尺寸的卷积滤波器(1×1和3×3)来提取工业产品中缺陷特征;最后,将1×1卷积滤波器和点划线框的输出连接到一起,作为网络下一层的输入。点划线框代表的是深度可分离卷积。该并行模块中所有的卷积操作后都执行bn和relu操作以加速收敛,提高模型的泛化能力和防止梯度消失问题。在图3中,有四个可调参数:n1、n2、n3、n4和两个固定参数f和n0,f和n0分别指输入到并行模块的特征图的宽度(或高度)和特征图的个数。n1表示并行模块中虚线框上方1×1卷积滤波器输出的特征图个数,n2表示虚线框左侧的1×1卷积滤波器输出的特征图的个数,n3和n4表示点划线框中卷积滤波器的输出特征图个数。在本发明设计的网络中使用并行深度可分离卷积模块时,n1<n0且n1<(n2+n4),n2=n4=4n1。2.3、本发明轻量级深度神经网络架构中的并行非对称卷积模块结构如图4所示。即对步骤2.2中提出的并行深度可分离卷积模块进行改进,将图3中点划线框中的3×3深度卷积用1×3+3×1卷积替代,构成并行非对称深度可分离卷积模块,这相当于在与3×3卷积相同的感受野下将网络滑动两层,增加了网络的深度,同时这种空间结构拆分也能提取到更丰富的缺陷特征,使分类结果更准确。2.4、第一卷积层后接批量归一化操作和relu激活函数;2.5、上一层的输出结果输入到并行深度可分离卷积模块1中;2.6、上一层的输出结果输入到并行深度可分离卷积模块2中,后接最大池化层;2.7、上一层的输出结果输入到并行深度可分离卷积模块3中,后接最大池化层;2.8、上一层的输出结果输入到并行深度可分离卷积模块4中,后接最大池化层;2.9、上一层的输出结果输入到并行非对称卷积模块中,后接最大池化层;2.10、上一层的输出结果输入到并行深度可分离卷积模块5中,后接全局均值池化层和softmax层,输出节点数根据具体的分类类别设定。三、网络训练得到分类结果3.1、计算工业产品图像数据集的均值文件,对于每一张预训练的图像,在进入深度学习网络后都要在每一个像素点上减去全局均值;对于输入图像,轻量级深度神经网络要随机裁剪成227像素×227像素的碎片,并在这些提取碎片上进行轻量级深度神经网络的训练;3.2、将上述步骤3.1训练样本图像输入上述步骤二搭建好的轻量级深度神经网络中,并将轻量级深度神经网络中的参数设定好,从零开始训练轻量级深度神经网络,通过前向传播和反向传播两个步骤反复训练直到达到最大迭代次数,使损失函数值最小;3.3、将经过上述步骤3.2轻量级深度神经网络训练之后提取到的图像的多尺度特征输入到softmax分类器,输出图像属于某一类别的概率;3.4、将上述步骤3.3获得的图像属于某一类别的概率和图像对应的标签输入到accuracy网络层,输出图像被正确分类的概率;3.5、经过上述步骤的操作,即可实现对工业产品图像缺陷的正确分类。与现有技术相比本发明的有益效果为:本发明提出了一种基于轻量级深度神经网络的工业产品缺陷图像分类方法,设计一个新的并行深度可分离模块用于构建工业产品缺陷图像分类网络,此模块主要有两个优点:(1)模块将不同尺寸大小的卷积核相混合,与传统的卷积层相比,可以融合不同尺度的特征并能提取到更丰富的缺陷特征。(2)该模块中利用了深度可分离卷积,相比于传统的卷积,显著减少了参数的数量和乘法累加运算量(maccs)。其次,用非对称卷积代替并行深度可分离模块中的深度卷积得到并行非对称卷积模块,可以进一步减少网络的参数量。在网络最后,使用全局均值池化层代替全连接层,这又大大减少了网络的参数量。因此本发明提出的基于轻量级深度神经网络的工业产品缺陷图像分类方法在分类速度,精度和内存消耗方面都可以满足工业实时性要求。附图说明图1为本发明流程图;图2为轻量级深度神经网络的工业产品缺陷图像分类网络结构示意图;图3为并行深度可分离卷积模块结构示意图;图4为并行非对称卷积模块结构示意图;图5为工业产品缺陷图像数据集。具体实施方式为了更好的说明本发明的技术方案,下面结合附图和实施例对本发明作进一步的详细描述。如图1所示,本发明的基于轻量级深度神经网络的工业产品缺陷图像实时分类方法,包括以下步骤:第一步,工业产品图像数据集的准备;第二步,搭建轻量级深度神经网络,轻量级深度神经网络包括1个第一卷积层、5个并行深度可分离卷积模块、1个并行非对称卷积模块、4个最大池化层、1个全局均值池化层和一个softmax层;第三步,将第一步准备的工业产品缺陷图像数据集输入第二步搭建好的轻量级深度神经网络中,经过轻量级深度神经网络的训练,提取输入图像的多尺度特征,将提取到的特征输入softmax层进行分类,得到分类模型;第四步,将测试图像输入第三步获得的分类模型中,将图像属于某一类别的概率和图像对应的标签输入accuracy层,输出图像的正确分类结果。本实施案例以工业产品图像(如图5所示)为例,在本实施例中工业产品图像特别指的是偏光片缺陷图像,是从某电子厂获得某一批次产品的偏光片缺陷图像,并对获得的偏光片缺陷图像进行预处理,通过对图像采用多次旋转,改变图像对比度,调节色度,饱和度等数据增强的方法来扩充样本。图5中,偏光片缺陷图像数据集中的图片共有3类,其中无缺陷图像共1000张,污渍图像共2000张,缺陷图像共2000张。图中第一行代表无缺陷图像;第二行代表污渍图像,矩形框代表污渍部分,其对应于生产过程中偏光片缺陷图像表面有污渍的样品,它们需要被正确分类出来,并将污渍清洗干净后可再次投入使用;第三行代表缺陷图像,矩形框内不规则的圆圈或半圆代表的是在偏光片生产过程中由特定的编码装置喷涂在偏光片表面的特殊记号,这类缺陷样本被正确分类出来后将不能再次进行使用。从图中可以看出,矩形框的位置和大小都不一致,即缺陷的位置不固定,形状多种多样。本实施例中将这5000张图像随机的按3:1:1的比例分配为训练集、校验集和测试集。本方案实验中,需要检测偏光片缺陷图像中是否存在污渍和缺陷,并将其与无缺陷图像进行正确的分类。一、本发明所述轻量级的深度学习工业产品缺陷实时分类网络包括以下步骤:步骤1.1、参照图2,将分配好的训练集和校验集中的图像尺寸统一调整为227像素×227像素,然后将其输入到第一卷积层中,第一卷积层的卷积核大小是3×3,进行卷积操作的步长是2,边缘填充系数为2,输出特征图数量为64,大小为227像素×227像素的图片经过卷积层1后的输出特征图尺寸为[(227-3+2×2)/2+1]×[(227-3+2×2)/2+1]=115×115,因此,卷积层1共输出64个115像素×115像素大小的特征图。第一卷积层后接批量归一化操作和relu激活函数;步骤1.2、将上一层步骤1.1的输出结果输入到并行深度可分离模块1中,经过卷积运算之后输出64个115像素×115像素大小的特征图;步骤1.3、将上一层步骤1.2的输出结果输入到并行深度可分离模块2中,经过卷积运算之后输出64个115像素×115像素大小的特征图。后接最大池化层,池化核大小为3×3,进行池化操作的步长是2,边缘填充系数为0。因此,经过池化操作之后特征图尺寸变为[(115-3+2×0)/2+1]×[(115-3+2×0)/2+1]=57×57;步骤1.4、将上一层步骤1.3的输出结果输入到并行深度可分离模块3中,经过卷积运算之后输出128个57像素×57像素大小的特征图。后接最大池化层,池化核大小为3×3,进行池化操作的步长是2,边缘填充系数为1。因此,经过池化操作之后特征图尺寸变为[(57-3+2×1)/2+1]×[(57-3+2×1)/2+1]=29×29;步骤1.5、将上一层步骤1.4的输出结果输入到并行深度可分离模块4中,经过卷积运算之后输出256个29像素×29像素大小的特征图。后接最大池化层,池化核大小为3×3,进行池化操作的步长是2,边缘填充系数为1。因此,经过池化操作之后特征图尺寸变为[(29-3+2×1)/2+1]×[(29-3+2×1)/2+1]=15×15;步骤1.6、将上一层步骤1.5的输出结果输入到并行非对称卷积模块中,经过卷积运算之后输出512个15像素×15像素大小的特征图。后接最大池化层,池化核大小为3×3,进行池化操作的步长是2,边缘填充系数为1。因此,经过池化操作之后特征图尺寸变为[(15-3+2×0)/2+1]×[(15-3+2×0)/2+1]=7×7;步骤1.7、将上一层步骤1.6、的输出结果输入到并行深度可分离模块5中,经过卷积运算之后输出512个7像素×7像素大小的特征图。后接全局均值池化层和softmax层,输出节点数设定为3。二、本发明所述的轻量级深度神经网络训练和分类过程包括以下步骤:步骤2.1、将输入图像的尺寸统一调整为227像素×227像素大小,并将其输入到网络的输入层;步骤2.2、计算训练集的均值文件,保存为.binaryproto格式的文件,并在网络的输入层指定均值文件的位置;步骤2.3、从零开始训练网络,设定训练集和校验集的批处理数据大小分别为20和10,动量因子设置为0.9,权重更新量设置为0.0002,初始学习率设置为0.001,且采用随机梯度下降方法进行训练,通过前向传播和反向传播两个步骤反复训练网络直到达到最大迭代次数140000次,训练结束;步骤2.4、将经过网络训练之后提取到的图像的多尺度特征输入到softmax分类器,输出3类图像被正确分类的概率。为了显示该方案与其他方案对比的优越性,在下述表1和表2中做了对比。表1.六种方案的性能对比结果方案正确率模型大小参数量maccsalexnet0.986377.5mb2.16×1077.41×1010vgg-160.992662.9mb3.36×1079.22×1010resnet-180.98644.7mb6.35×1061.27×109squeezenet0.9792.9mb7.34×1057.46×108mobilenet0.98912.9mb2.83×1074.83×109本方案0.994596.7kb2.08×1056.72×107表1给出了本方案与上述5种经典算法在校验集上的实验结果比较,从表1可以看出,本方案得到的模型分类正确率分别比alexnet,vgg-16,squeezenet和mobilenet高0.8%;0.2%,0.8%,1.5%和0.5%。模型大小分别减少了647.8,1137.6,76.7,4.98和22.1倍;参数量比alexnet,vgg-16和mobilenet减少了两个数量级,比resnet-18减少了一个数量级。maccs比alexnet和vgg-16减少了三个数量级,比squeezenet减少了一个数量级,比resnet-18和mobilenet减少了两个数量级。因此,本方案可以在不降低分类准确率的情况下大大减小模型的尺寸,并且在分类准确率,速度和存储器使用方面目前均可满足工业中对偏光片缺陷图像的在线实时检测的要求。表2不同方案在测试集上的试验结果比较表2列出了6种图像分类方案在测试数据集上的分类错误率和分类时间对比结果。测试集中偏光片缺陷图像共有1000张,其中无缺陷图像有200张,污渍图像和缺陷图像各400张,此测试集既没有参与网络的训练,也没有参与网络的校验过程。从表2可以得出,本方案比其他五种经典算法能获得更低的分类错误率,充分验证了本文方法的有效性及鲁棒性。表2最后一列列出了六种算法在测试过程中针对每张图片的测试时间,从表中可以看出,与alexnet,vgg-16,squeezenet,resnet-18和mobilenet相比,本方案将每张图片的分类时间分别缩短了303.1ms,2471ms,280.4ms,17.1ms和116.7ms。所以无论是从分类精度和速度,本方案均满足工业中工业产品缺陷图像实时检测的需求。以上内容是结合具体的实施方案对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属
技术领域
的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1