基于自适应卷积神经网络的织物分类方法与流程

文档序号:16742643发布日期:2019-01-28 13:09阅读:211来源:国知局
基于自适应卷积神经网络的织物分类方法与流程
本发明属于图像处理
技术领域
,更进一步涉及图像分类
技术领域
中的一种基于自适应卷积神经网络的织物分类方法。本发明主要用于对织物图像进行分类,分类结果可用于废旧织物回收加工和织物生产加工。
背景技术
:废旧织物是指在各类以纺织服务材料为原材进行加工生产的下脚料、废料等。现有的废旧织物加工过程中,直接将所有的废旧织物进行破碎开松,然后加工成可纺织纤维,由于废旧织物的颜色、纹理不同,造成加工后的可纺纤维混杂,造成了极大地浪费。织物生产加工中,织物存在许多缺陷,例如洞疵,油斑,缺经等。造成织物缺陷的原因有编织机器出现故障,或者纱线质量不合格等,因此,织物缺陷检测和分类是控制纺织品质量的关键环节。由此可见,一种智能的织物分类方法成为改善织物质量的有效方法。作为织物分类的前提要求是织物缺陷检测,目前织物缺陷检测方法主要通过图像分析结合阈值分割法。西安工程大学在其拥有的专利技术“基于gabor滤波器的印花织物疵点检测方法”(申请号:201410155241.3授权公告号:103955922b)中公开了一种基于gabor滤波器的印花织物疵点检测方法。该方法的具体步骤为:建立基本gabor滤波器,提取gabor参数;对提取的gabor参数进行选择、交叉、变异,选择目标函数适应度高的参数;根据遗传算法选择的gabor参数,对得到的gabor参数旋转变换提取有效的无瑕疵织物纹理特征信息;对待检测织物图像及无瑕疵织物图像进行gabor滤波的卷积操作,提取待检测织物纹理背景信息;将待检测及无瑕疵织物图像均进行二值化,得到织物瑕疵检测结果。但是,该方法仍然存在的不足之处是,该方法采用的是根据遗传算法,用于提取gabor滤波器的参数,与其他传统机器视觉的检测方法相比较检测速度较慢,另外,近几年随着相机分辨率的提高,传统的方法不能充分提取织物图像中的信息,导致分类精度不高。孙建德在其拥有的专利技术“一种基于结构自适应卷积神经网络的人脸识别方法”(申请号:201510128506.5授权公告号:cn104778448b)中公开了一种结构自适应卷积神经网络的人脸识别方法。该方法的具体步骤为:对所有图像做大小、姿态和光照的归一化处理;初始化卷积神经网络的网络结构,并设定两个控制网络增长的指标值:系统平均损失和训练样本的识别率;将归一化处理后的训练样本送入初始卷积神经网络当中,在规定训练次数内,若结构自适应卷积神经网络没有收敛趋势,在结构自适应卷积神经网络中增加一条全局支路,进行全局扩展;全局扩展学习结束后,结构自适应卷积神经网络满足收敛条件时,若训练样本的识别率未达到期望值,在结构自适应卷积神经网络中增加一条全局支路,进行局部扩展,即可完成增量学习,直至结构自适应卷积神经网络对训练样本的识别率达到期望值,结构自适应卷积神经网络的人脸识别方法实现了网络的自适应扩展。但是,该方法仍然存在的不足之处是,全局扩展学习的前后结构自适应卷积神经网络的卷积层始终只有两层,该方法并没有充分发挥卷积层的提取特征能力,使得分类的性能变差,同时当该网络的识别率一直未达到期望值是会陷入死循环,浪费了计算资源。技术实现要素:本发明的目的是针对上述现有技术的不足,提出了一种基于自适应卷积神经网络的织物图像缺陷检测和分类方法。本发明与现有其他织物缺陷检测和分类方法相比,自适应卷积神经网络的结构能够随着训练的过程不断调节,根据训练结果添加卷积层和降采样层,减少了卷自适应卷积神经网络的训练构建对于人工调参的依赖。训练结束后,自适应卷积神经网络的卷积层层数会大于两层,提高了自适应卷积神经网络对织物图像的提取特征能力,提高了自适应卷积神经网络的分类性能。实现本发明目的的思路是:先对所有的织物图像进行归一化处理,并将处理后的数据集划分为训练集和测试集。然后搭建六层的自适应卷积神经网络模型,并对网络的参数进行初始化。自适应卷积神经网络模型的卷积层实现图像的特征提取,自适应卷积神经网络的全连接层实现图像的分类。然后对自适应卷积神经网络进行训练,若在测试集上的准确率达到要求,那么就停止训练,此时自适应卷积神经网络即为所需要的网络,否则保存训练好的自适应卷积神经网络的参数,然后对自适应卷积神经网络进行扩展,在第一个全连接层前添加一个卷积层,然后继续训练,重复以上的步骤,直至其准确率达到要求。本发明的具体步骤包括如下:(1)处理织物图像数据集:(1a)对输入的带标签织物图像数据集,在[0,1]的范围进行归一化处理;(1b)从归一化后数据集中任意选取70%的带标签织物图像作为训练集,剩余30%的带标签织物图像作为测试集;(2)构建自适应卷积神经网络:(2a)搭建一个6层的自适应卷积神经网络模型,其结构依次为:第一个卷积层→第二个卷积层→第一个降采样层→第一个全连接层→第一个dropout层→第二个全连接层;(2b)设置自适应卷积神经网络模型中每一层的参数如下:将自适应卷积神经网络的输入层特征图总数设置为3,特征图尺寸设置为64×64;将第一个卷积层中卷积滤波器的总数设置为32、卷积滤波器的像素大小设置为,特征图尺寸设置为64×64,卷积步长设置为1个像素;将第二个卷积层中卷积滤波器的总数设置为32、卷积滤波器的像素大小设置为,特征图尺寸设置为64×64,卷积步长设置为1个像素;将第一个降采样层中池化区域大小设置为2×2,池化步长设置为2个像素,特征图尺寸设置为32×32;将第一个全连接层结点总数设置为1024;将dropout层的保留概率为0.5;将第二个全连接层结点总数设置为织物类别数;(3)训练自适应卷积神经网络:(3a)将当前期望损失值的初始值设置为零;(3b)从训练集中选取50幅带标签织物的图像,依次输入到自适应卷积神经网络中,输出每幅图像对应的预测分类标签,并利用损失值计算公式,计算所选取的50幅带标签织物图像输入到自适应卷积神经网络后自适应卷积神经网络的损失值;(3c)判断自适应卷积神经网络的损失值与当前期望损失值之差是否小于0.1,若是,则执行步骤(3e),否则,执行步骤(3d);(3d)用当前迭代时的自适应卷积神经网络损失值作为当前期望损失值,利用反向传播算法,用当前期望损失值更新自适应卷积神经网络中所有的参数后执行步骤(3b);(3e)将测试集中所有的织物图像及分类标签依次输入到自适应卷积神经网络中,输出每幅图像对应的预测分类标签,并利用测试准确率计算公式,计算自适应卷积神经网络在测试集上的测试准确率;(3f)判断自适应卷积神经网络是否满足停止训练条件,若是,则执行步骤(3j),否则,执行步骤(3g);(3g)在自适应卷积神经网络第一个全连接层前添加一个卷积层,组成新的自适应卷积神经网络;(3h)判断新的自适应卷积神经网络是否已添加了三个卷积层,若是,则得到添加卷积层后的自适应卷积神经网络后执行步骤(3i),否则,执行步骤(3a);(3i)在添加卷积层后的自适应卷积神经网络中第一个全连接层前添加一个降采样层后执行步骤(3a);(3j)得到训练好的自适应卷积神经网络后执行步骤(4);(4)对测试数据集进行分类:将测试织物图像数据集输入到训练好的自适应卷积神经网络中,得到测试集的测试准确率。本发明与现有技术相比具有以下优点:第二,由于本发明构建了六层的自适应卷积神经网络,并随着训练增加卷积层的层数。训练好的自适应卷积神经网络卷积层的层数大于二,充分发挥卷积层的提取特征能力,克服了现有技术没有充分发挥卷积层的提取特征能力的不足,从而提高了本发明的自适应卷积神经网络的分类性能。第二,由于本发明训练了六层的自适应卷积神经网络,当自适应卷积神经网络的结构为十八层时停止训练,克服了现有技术浪费计算资源的不足,本发明充分利用了计算资源。附图说明图1是本发明的流程图;图2是本发明训练自适应卷积神经网络步骤的流程图。具体实施方式下面结合附图对本发明做进一步的描述。参照图1,对本发明实现的具体步骤做进一步的描述。步骤1,处理织物图像数据集。对输入的带标签织物图像数据集,在[0,1]的范围进行归一化处理。从归一化后数据集中任意选取70%的带标签织物图像作为训练集,剩余30%的带标签织物图像作为测试集。步骤2,构建自适应卷积神经网络。搭建一个6层的自适应卷积神经网络模型,其结构依次为:第一个卷积层→第二个卷积层→第一个降采样层→第一个全连接层→第一个dropout层→第二个全连接层。设置自适应卷积神经网络模型中每一层的参数如下:将自适应卷积神经网络的输入层特征图总数设置为3,特征图尺寸设置为64×64。将第一个卷积层中卷积滤波器的总数设置为32、卷积滤波器的像素大小设置为3×3,特征图尺寸设置为64×64,卷积步长设置为1个像素。将第二个卷积层中卷积滤波器的总数设置为32、卷积滤波器的像素大小设置为3×3,特征图尺寸设置为64×64,卷积步长设置为1个像素。将第一个降采样层中池化区域大小设置为2×2,池化步长设置为2个像素,特征图尺寸设置为32×32。将第一个全连接层结点总数设置为1024。将dropout层的保留概率为0.5。将第二个全连接层结点总数设置为织物类别数。步骤3,训练自适应卷积神经网络。参照图2,对本发明实现的步骤3做进一步的描述。第1步,将当前期望损失值的初始值设置为零。第2步,从训练集中选取50幅带标签织物的图像,依次输入到自适应卷积神经网络中,输出每幅图像对应的预测分类标签,并利用损失值计算公式,计算所选取的50幅带标签织物图像输入到自适应卷积神经网络后自适应卷积神经网络的损失值。所述每幅图像的分类标签及预测分类标签均为行数等于1,列数等于织物图像的类别数量的向量。所述的交叉熵损失函数如下:其中,e表示自适应卷积神经网络的损失值,n表示每次输入的织物图像数量,n为50,∑表示求和操作,n表示输入的织物图像的序号,c表示织物图像的分类标签总维数,k表示织物图像分类标签的维数序号,表示第n幅织物图像分类标签的第k维数值,log表示以10为底的对数操作,表示第n幅织物图像分类的第k维数值。第3步,判断自适应卷积神经网络的损失值与当前期望损失值之差是否小于0.1,若是,则执行第5步,否则,执行第4步。第4步,用当前迭代时的自适应卷积神经网络损失值作为当前期望损失值,利用反向传播算法,用当前期望损失值更新自适应卷积神经网络中所有的参数后执行第二步。所述反向传播算法如下:利用下式,更新自适应卷积神经网络中每个全连接层结点的连接参数:其中,θij′表示更新后第一个全连接层中的第i个全连接结点与第二个全连接层中的第j个结点之间的连接参数,i表示自适应卷积神经网络第一个全连接层中全连接结点的序号,j表示自适应卷积神经网络第二个全连接层中全连接结点的序号,θij表示更新前第一个全连接层中的第i个全连接结点与第二个全连接层中的第j个结点之间的连接参数,α表示自适应卷积神经网络的学习速率,α为0.001,表示求偏导操作,e表示当前期望损失值。利用下式,更新自适应卷积神经网络中每个卷积层卷积滤波器的参数:其中,ωkm′表示更新后自适应卷积神经网络中第k个卷积层的第m个卷积滤波器的参数,k表示自适应卷积神经网络中卷积层的序号,m表示自适应卷积神经网络第k个卷积层中卷积滤波器的序号,ωkm表示更新前自适应卷积神经网络第k个卷积层中的第m个卷积滤波器的参数。第5步,将测试集中所有的织物图像及分类标签依次输入到自适应卷积神经网络中,输出每幅图像对应的预测分类标签,并利用测试准确率计算公式,计算自适应卷积神经网络在测试集上的测试准确率。所述的测试准确率计算公式如下:其中,a表示输出的测试准确率,n表示输入织物图像的总数量,∑表示求和操作,n表示输入的织物图像的序号,c表示织物图像的分类标签总维数,k表示织物图像分类标签的维数序号,表示第n幅织物图像的分类标签中第k维的元素,表示第n幅织物图像的预测分类标签中第k列的元素。第6步,判断自适应卷积神经网络是否满足停止训练条件,若是,则执行步骤4,否则,执行第7步。所述的停止训练条件是指满足以下两种之一的情形:情形一,测试准确率大于期望的织物分类准确率;情形二,自适应卷积神经网络的结构为十八层。自适应卷积神经网络的结构为十八层时的网络结构依次为:第一个卷积层→第二个卷积层→第一个降采样层→第三个卷积层→第四个卷积层→第五个卷积层→第二个降采样层→第六个卷积层→第七个卷积层→第八个卷积层→第三个降采样层→第九个卷积层→第十个卷积层→第十一个卷积层→第四个降采样层→第一个全连接层→第一个dropout层→第二个全连接层。第7步,在自适应卷积神经网络第一个全连接层前添加一个卷积层,得到新的自适应卷积神经网络。所述添加的卷积层的卷积滤波器总数为64、滤波器的像素大小为3×3,卷积步长为1个像素。第8步,判断新的自适应卷积神经网络是否已添加了三个卷积层,若是,则得到添加卷积层后的自适应卷积神经网络后执行第9步,否则执行第10步。所述停止添加降采样层条件为第一个全连接层与最后一个降采样之间有三个卷积层,第一个全连接层与最后一个降采样层之间的结构为:降采样层→第一个卷积层→第二个卷积层→第三个卷积层→第一个全连接层时满足添加降采样层条件。第9步,在添加卷积层后的自适应卷积神经网络中第一个全连接层前添加一个降采样层后执行第1步。所述的添加降采样层的卷积核大小为2×2,步长为2个像素。第10步,得到训练好的自适应卷积神经网络后执行步骤4。步骤4,对测试数据集进行分类。将测试织物图像数据集输入到训练好的自适应卷积神经网络中,得到测试集的测试准确率。下面结合仿真实验对本发明的效果做进一步的描述:1、仿真实验条件:本发明的仿真实验所用数据为公开的dagm2007竞赛的所有织物数据集,包括1000幅无缺陷织物图像和150张缺陷织物图像,所有样本图像的大小为512×512像素。仿真实验硬件平台为intel酷睿i78700k@3.7ghzcpu、64gbram、nvidiageforcegtx1080tigpu,仿真实验软件平台为python3.5和tensorflow1.4。2、仿真实验内容与结果分析:本发明的仿真实验是在相同的数据集下,应用本发明方法与现有技术的卷积神经网络方法对目标进行分类,并分别计算两种方法的识别准确率。在本发明的方法中,首先依照本方明的方法将包含1000张无缺陷图片及150张缺陷图片的织物图像数据集分为训练集和测试集。使用训练样本集训练自适应卷积神经网络,得到训练好的自适应卷积神经网络。然后使用测试样本集在训练好的自适应卷积神经网络上进行测试,得到本发明的识别正确率。将本发明的方法与现有技术的卷积神经网络方法在相同数据集下的识别正确率进行对比,本方法生成的网络结构依次为:第一个卷积层→第二个卷积层→第一个降采样层→第三个卷积层→第四个卷积层→第五个卷积层→第二个降采样层→第六个卷积层→第一个全连接层→第一个dropout层→第二个全连接层,共十一层。两种方法在训练结束后的识别正确率结果如表1所示。表1织物图像分类结果对比表仿真实验方法现有技术的卷积神经网络方法本发明方法分类准确率85.7%89.4%从表1中可以看出,本发明提出的基于自适应卷积神经网络的织物图像分类方法相比现有技术的卷积神经网络方法的识别正确率提高了3.7%,说明本发明中通过不断调整自适应卷积神经网络的结构,能够提高织物图像的分类准确率,具有重要的实际意义。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1