2.中国科学院大学,北京100049)(*通信作者电子邮箱690332121@qq.com)摘要:织物缺陷在线检测是纺织行业面临的重大难题,针对当前织物缺陷检测中存在的误检率高、漏检率高、
实时性不强等问题,提出了一种基于深度学习的织物缺陷在线检测算法。首先基于GoogLeNet网络架构,并参考其他
分类模型的经典算法,搭建出适用于实际生产环境的织物缺陷分类模型;其次利用质检人员标注的不同种类织物图 片组建织物缺陷数据库,并用该数据库对织物缺陷分类模型进行训练;最后对高清相机在织物验布机上采集的图片 进行分割,并将分割后的小图以批量的方式传入训练好的分类模型,实现对每张小图的分类,以此来检测缺陷并确定
其位置。对该模型在织物缺陷数据库上进行了验证。实验结果表明:织物缺陷分类模型平均每张小图的测试时间为
0.37 ms,平均测试时间比GoogLeNet减少了 67% ,比ResNet-50减少了 93% ;同时模型在测试集上的正确率达到 99.99%。说明其准确率与实时性均满足实际工业需求。关键词:图像处理;深度学习;卷积神经网络;缺陷检测中图分类号:TP183; TP389.1 文献标志码:AOn-line fabric defect recognition algorithm based on deep learningWANG Lishun1'2*, ZHONG Yong1'2, LI Zhendong1'2, HE Yilong1'2(1. Chengdu Institute of Computer Applications, Chinese Academy of Sciences, Chengdu Sichuan 610041, China;2. University of Chinese Academy of Sciences, Beijing 100049, China)Abstract: On-line detection of fabric defects is a major problem faced by textile industry. Aiming at the problems such as
high false positive rate, high false negative rate and low real-time in the existing detection of fabric defects, an on-line detection algorithm for fabric defects based on deep learning was proposed. Firstly, based on GoogLeNet network architecture, and referring to classical algorithm of other classification models, a fabric defect classification model suitable for actual production environment was constructed. Secondly, a fabric defect database was set up by using different kinds of fabric pictures marked by quality inspectors, and the database was used to train the fabric defect classification model. Finally, the images collected by high-definition camera on fabric inspection machine were segmented, and the segmented small images were sent to the trained classification model in batches to realize the classification of each small image. Thereby the defects were detected and their positions were determined. The model was validated on a fabric defect database. The experimental results show that the average test time of each small picture is 0. 37 ms by this proposed model, which is 67% lower than that by GoogLeNet, 93% lower than that by ResNet-50, and the accuracy of the proposed model is 99. 99% on test set, which shows that its accuracy and real-time performance meet actual industrial demands.Key words: image processing; deep learning; convolutional neural network; defect detection0引言实现织物缺陷在线实时检测对于加速纺织行业自动化改 造、节约生产成本、提高生产效率、实现产业升级具有重要意
义。目前织物缺陷检测主要有人工检测和基于纹理分析方式
力较弱,很难满足实际工业要求。近年来随着深度学习的发展,卷积神经网络
(Convolutional Neural Network, CNN)在图像识别⑷、目标检
测B、目标分割⑷上取得了一系列重大进展,其中有代表性
的图像识别网络主要有Alex网络(Alex Networking,
检测。其中人工检测方式存在高成本、低效率且高误检率、高
漏检率等一系列问题。基于纹理分析方式检测的方法主要有
Haralick等⑴提出的基于二阶灰度统计特征的共生矩阵方
法、在频率域提取特征的小波变换法⑷、基于模型算法的马
尔可夫随机场法⑶,这些方法为实现织物缺陷自动检测作出
重要贡献,但由于实际生产环境中的织物种类多,缺陷类型变
化大,基于纹理分析检测缺陷的方法由人工设计的特征不能 完全覆盖所有缺陷的特点,因此,这些模型的准确率和泛化能
AlexNet )\"」、视 觉几何 组网络(Visual Geometry Group Networking, VGGNet) *」、Google 网络(GoogLe Networking, GoogLeNet )啓、残差网络(Residential Networking, ResNet)[10] o这些经典分类模型在ImageNet大规模视觉识别 挑战赛(ImageNet Large Scale Visual Recognition Challenge, ILSVRC)上获得极大成功,其中ResNet-152购网络更是在该 挑战赛上获得了 4.49%的ToP5错误率。由于神经网络无需
手工设计特征,且具有特征提取能力强、分类准确率高等特
基金项目:四川省科技厅项目(2018GZ0231) „收稿日期:2019-01-17;修回日期:2019-03-12;录用日期:2019-03-12o
作者简介:王理顺(1992-),男,重庆奉节人,硕士研究生,主要研究方向:大数据智能分析、机器视觉、人工智能;钟勇(1966-),男,四川 岳池人,研究员,博士,主要研究方向:大数据、云计算擞据库;李振东(1990-),男庁夏吴忠人,博士研究生,主要研究方向:机器学习、图像
处理;贺宜龙(1992-),男,山东济宁人,硕士研究生,主要研究方向:数据挖掘、图像处理。2126计算机应用第39卷点,因此本文提出了一种基于深度学习的织物缺陷在线检测 算法。传统的经典分类网络算法虽然有着较高的分类准确 率,但其模型复杂度高、参数量大,网络的实时性较差,很难满
足实际工业需求。本文基于GoogLeNet网络架构,并综合其 他分类模型的一些经典思想算法,不断对原模型进行改进与
优化,搭建出一个适用于实际工业需求的织物缺陷分类模型。
最后进行工程优化,以批量测试的方法对图片进行分类预测,
模型的准确率与实时性均达到实际工业需求。1深度卷积神经网络卷积神经网络最早由LeCun在1989年提出,即LeNet网 络的最初版本,后对该网络经过不断改进与优化,诞生了
LeNet-5网络,成功应用于手写数字集MNIST( Mixed National Institute of Standards and Technology)识别上。该网络包含两 个卷积层、两个池化层和三个全链接层,激活函数为Sigmoid
函数,通过反向传播对模型进行训练,通过卷积层实现局部连
接和权值共享,通过池化层实现了局部平移不变性。通过这
些方法,有效降低了模型复杂度,提高了模型的准确率与泛化
能力。目前经典的目标识别网络,如VGGNet系列、GoogLeNet 系列、ResNet系列均借鉴这一基本思想,同时这几个系列的
网络也常常作为目标检测、目标分割的基础网络。表1对比 了目前几个经典分类网络,其中VGGNet网络结构用的是特
别小的3x3的卷积核,首次将卷积层提升到卷积块,同时多 次使用线性整流函数(Rectified Linear Unit, ReLU) [12]作为激
活函数替代Sigmoid函数,一定程度上防止了梯度消失,但其
参数量巨大,需要很大的存储空间。GoogLeNet提出了
Inception模块,如图1所示,能够在一个网络层提取出不同尺
度特征,在增加网络宽度与深度的同时,减少了模型参数,降
低了模型复杂度,充分利用了计算资源,同时加入局部响应归
—化层(Local Response Normalization, LRN)和 Dropout 层,有
效避免了模型过拟合现象,另外GoogLeNet还借鉴了 NIN
(Network in Network)网络网中bottleneck思想,并用全局平
均池化层代替全链接层,进一步降低了模型复杂度,减少了模
型参数。ResNet提出残差结构,如图2所示,使得训练超级深 的网络成为可能,避免了网络加深到一定程度准确率达到饱 和的现象,网络层数可以增加到1000层网以上,同时整个网 络只需要学习残差,降低了学习难度。表1三个经典分类网络对比Tab. 1 Comparison of three classical classification networks网络名输入 卷积层 全链接层 有无跨层
有无大小数量数量连接Inception 结构VGG-16224 X224133无无GoogLeNet224 x224181无有ResNet-50224 x224491有无2基于深度学习的织物缺陷检测算法2.1基于深度学习的织物缺陷检测算法流程本文所提出的基于深度学习的织物缺陷检测算法由三部
分构成,如图3所示。首先由于在织物验布机上采集的图片
大小为4032 X4928,而缺陷分类网络输入大小为224 x 224, 为了实现全覆盖检测,本文将每张采集图片分割出396张小 图,并记好每张分割图片在原图中相对位置;然后将分割后的 图片传入训练好的缺陷分类模型,对所有图片进行分类;最后
将有缺陷的图片依据相对位置在原图上进行定位,以此来找 出缺陷并确定其位置。其中分割部分仅仅是将采集大图的内
存数据按分类网络输入大小进行逻辑切分,然后以多线程的 方式读入分类网络,由于大图数据位于内存,且采用多线程方 式进行读取,分割部分耗时相对于分类部分耗时可忽略不计,
本文主要对缺陷分类网络进行优化。Filter concatenationlxl c呼v| | 1 x 1 conv| | 3 x \\max pool|| Previous layer 图 1 Inception 模块 Fig. 1 Inception module图2残差模块 Fig. 2 ResNet module
厂图像采集 |图像分剖与编号|
|织物缺陷数据库|| CNN分类模型厂—CNN分类模型训练|I~~分类结果~~|厂缺陷定位 图3基于深度学习的织物缺陷检测算法流程Fig. 3 Flow chart of fabric defect detection algorithm based on
deep learning2.2缺陷分类模型本文模型主要参考GoogLeNet网络架构,考虑到工业对 于实时性与准确率的要求,本文综合其他分类模型的一些经
典思想算法,对模型进行了改进与优化,使模型在保证准确率
的同时,实时性能达到工业要求。改进后的模型如图4所示。网络由两个卷积层、三个池化层、一个Inception层和一
个全链接层组成,最后用Softmax函数进行分类。输入图像大 小为224x224的灰度图像,第一层有32个7x7的卷积核,
滑动步长为2,padding为3 ,输出32个大小为112x112的特
征图,后接一个滑动步长为2、核大小为2x2最大池化层,特 征图大小变为56 x56;第二层有32x64个3 x3的卷积核,滑 动步长为1,padding为1,输出64个大小为56 X56的特征图,
后接一个滑动步长为2、核大小为2x2的最大池化层,特征
图大小变为28 X28;第三层为一个Inception层,最后输出224
个大小为28 x28的特征图,后接一个滑动步长为1、核大小 为28 x28的全局平均池化层,输出224个1 xl的特征图。
由于只需要找出缺陷相对位置,本文为降低模型复杂度,提高
模型准确率,将所有缺陷样本归为一类。最后通过Softmax函 数对图像进行正负样本划分。除池化层外,每层网络后面都
添加一个BatchNorm层问作归一化处理,以加速收敛,提高 模型泛化能力。激活函数为ReLU函数,同时去掉了 GoogLeNet网络中的LRN层与dropout层,并直接减少网络层 数和每层的卷积核数,降低了模型的复杂度,提高了模型的处
理速度。2.3数据增强更多的数据有利于提高模型的泛化能力。本文所有数据 均来源于织物验布机上的实时高清图,所有缺陷均由经验丰第7期王理顺等:基于深度学习的织物缺陷在线检测算法2127富的质检人员进行标注。但由于每种缺陷采集的图片相对较少,为了不让模型出现过拟合现象,本文使用数据增强技术来
较小,图像缩放很有可能导致这些缺陷丢失,因此在扩充数据时没有对图片进行缩放。最终扩充数据集的方式主要有:随
扩充现有数据集,以此来提高模型的泛化能力。数据增强的
方式有很多,通过对数据集的分析,本研究发现部分缺陷相对
机左右翻转,随机旋转90。、180。,随机亮度变化。部分缺陷 预处理效果如图5所示。特征提取器Inception训练图片Conv!^Stride:21分类器112x112x32 56x56x32 56x56x64 28x28x6428X28X32图4缺陷分类模型Fig. 4 Defect classification model原图 左右翻转
随机廊M 随机=度其中兀为类别i的真实标签。当类别为i时皿等于1;否则兀 等于0。为加速收敛,减少模型收敛过程中的震荡,本文算法加入 了动量(moTum)因子M ,最终模型权重更新策略为:叫+i =叫+耳
vt = - rfdw + 耳 * momentum dw =勺 Loss
(3)(4)(5)其中:叫为权重;%为每次权重更新量;加为梯度方向;
(c)缺陷3图5原图的预处理Fig. 5 Preprocessing of original imagesmomenftmi为动量因子,本实验设置为0. 9诃为初始化学习 率,本实验设为0. 0001,为使模型收敛,每迭代400次,就对学 习率进行一定程度的衰减,学习率衰减过程如图6所示。3实验与结果分析3.1实验环境本实验数据集共有30000张大小为224 x 224的灰度图 片,数据集基本包含所有纹理织物正样本及其缺陷样本。其 中正样本20000张,负样本10000张,正负样本各按4: 1的比
例将图片随机划分为训练集、测试集。本实验环境为Windows 7 操作系统,16 GB 内存,NVIDIA GeForce GTX 1080ti 显卡,最
Fig. 6 Change of learning rate with number of iterations终在Visual Studio 2013上用Caffe深度学习框架进行训练。3.3结果与分析最终本研究在数据集上分别对GoogLeNet、ResNet-50和
3.2训练本实验采用随机梯度下降(Stochastic Gradient Descent, SGD)〔切方法进行训练,每次随机选取一个batch的图片对模
本文模型(LocalModel)进行训练,各个网络的收敛速度和准 确率如图7、图8所示。从图7、图8可以看出600 s时本文模
型进行训练。最后的分类结果采用Softmax函数进行计算:a- = exp (笛 )/( 丫 exp(尊))
j = i⑴型损失率下降到0.032,准确率达到99.99%。同时准确率有 随着损失率的下降而升高的趋势,说明模型并没有出现过拟
合现象,泛化能力较强。另外,从图8可以看出,本文模型收
敛速度明显高于GoogLeNet和ResNet-50这两个经典分类模
其中:a,为网络输出结果为类别i的概率,州为网络最后一层
第i个节点的输出值,\"为划分类别总数。损失函数为交叉爛损失函数:Loss = - 丫 y; In a;型;从图7可以看出,在较短训练时间内,本文模型的准确率 也明显高于其他两个经典分类模型。⑵为提高预测速度,充分利用显存资源。本文采用批量
1-1 (batch)测试的方法。如表2所示,由于每个模型所需内存大2128计算机应用第39卷小不同,各个模型的batch大小也有所差异。实验表明, LocalModel、GoogLeNet、ResNet-50 的最佳 batch 大小分别为
100,30,20。通过批量测试的方法,本文模型每张小图的平均 测试时间为0. 37 ms,每张小图的平均测试时间比GoogLeNet 减少了 67% ,比 ResNet-50 减少了 93%。实验结果表明,本文所提出的基于深度学习的织物缺陷
检测模型,通过融合几个经典分类网络思想方法,不断优化网 络,在保证分类准确率的同时,提高了模型的实时性,最终达
到工业对准确率和实时性的要求。1.001 \\ !0.90I ¥ /A-1、/ \\js/杠;BP0.80\\ /'v//-^-LocalModel0.70■-•--•-a---^-ResNet-SO—-GoogLeNet0 200 400 600 800 1000 1200时间/s图7不同模型的准确率对比Fig. 7 Accuracy comparison of different models2-*-GoogLeNet-LocalModel -*“ResNet-50 200 400 600 800 1000 1200
时间/s图8不同模型损失随时间变化情况对比Fig. 8 Loss change with time of different models表2测试时间对比分析Tab. 2 Contrastive analysis of test time模型名所需内存/MB batch大小(test)平均每张测试时间/msLocalModel18.951000.37GoogLeNet68.21301.19ResNet-50288.28205.014结语本文通过对验布机上获取的织物样本进行分析,对几个 经典的分类神经网络进行改进融合,最终提出了一种能满足
实际工业需求的神经网络分类模型,经过实验对比,模型的时
间复杂度、空间复杂度均低于传统的几个经典分类模型;同时 模型具有收敛速度快、泛化能力强等优点。最后通过工程优 化,充分利用显卡资源,实现批量测试,极大提高了模型的单
张图片平均测试时间,准确率和实时性均达到实际工业要求, 为传统纺织行业实现工业升级提供坚实技术保障。虽然模型
将传统的经典分类网络作了极大优化,但模型的计算复杂度
仍然很高,需要在高速显卡上才能完成快速实时计算,以此来
保证实时性。未来还可以通过模型压缩等方法进一步优化模
型,减少模型占用空间,提高模型处理速度。参考文献(References)[1]
HARALICK R M, SHANGMUGAN K, DINSTEIN I. Textural fea
tures for image classification [ J ] . IEEE Transactions on Systems, Man, and Cybernetics, 1973, 3(6): 610 -621.[2] NGAN H Y T, PANG G K H, YUNG S P, et al. Wavelet based
methods on patterned fabric defect detection [ J]. Pattern Recognition, 2005, 38(4): 559 -576.[3] 张杨,蒋高明,姚君洲,等.基于MRF层次模型的贾失经编针织
物图像分割技术[J].纺织学报,2012, 33 ( 12): 102 - 106. (ZHANG Y, JIANG G M, YAO J Z, et al. Segmentation of jac
quard warp-knitted fabric image based on hierarchical Markov random field model[ J]. Journal of Textile Research, 2013, 33( 12):
102-106.)[4]
SZEGEDY C, IOFFE S, VANHOUCKE V, et al. Inception-v4, In- ception-ResNet and the impact of residual connections on learning
[EB/OL] (2016-08-23) [2018-10-15]. https://arxiv. org/pdf\" 1602.07261.pdf.[5]
LIU W, ANGUELOV D, ERHAN D, et al. SSD: single shot multi
box detector [ EB/OL]. [ 2018- 10- 15 ] https: //arxiv. org/pdf/ 1512.02325.pdf.[6]
CHEN L C, PAPANDREOU G, KOKKINOS I, et al. DeepLab: se
mantic image segmentation with deep convolutional nets, atrous convolution, and fully connected CRFs[ J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2016, 40(4): 834 - 848.[7]
KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classi
fication with deep convolutional neural networks[ C]// Proceedings of the 9th International Conference on Neural Information Processing Systems. Berlin: Springer, 2012: 1097 -1105.[8]
SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition [ EB/OL]. (2015-04- 10) [2018- 10-15]. https: //arxiv. org/abs/1409. 1556.[9] SZEGEDY C, LIU W, JIA Y, et al. Going deeper with convolutions [EB/OL]. (2014-07-17) [2016-12-10]. https: //arxiv. org/abs/
1409.4842.[10]
HE K, ZHANG X, REN S, et al. Deep residual learning for image recognition[ EB/OL]. (2015-12-10) [2018-10-15]. https: //arx
iv. org/abs/1512.03-385.[11] LeCUN Y, BOTTOU I, BENGIO Y, et al. Gradient-based learn
ing applied do document recognition [ J]. Proceedings of the IEEE, 1998, 86(11): 2278 -2324.[12]
JARRETT K, KAVUKCUOGLU K, RANZATO M, et al. What is the best multi-stage architecture for object recognition? [ EB/OL]
[2018-10-15]. http: //yann. lecun. com/exdb/publis/orig/jairett- iccv-09. pdf.[13] UN M, CHEN Q, YAN S. Network in network[ EB/OL]. (2014- 03-04) [2018-10-15]. https: //arxiv. org/abs/1312.4400.[14]
HE K, ZHANG X, REN S, et al. Identity mappings in deep residual networks [EB/OL]. (2016-07-25) [2018-10-15]. http://
arxiv. org/obs/1603.05027.[15]
IOFFE S, SZEGEDY C. Batch normalization: accelerating deep network training by reducing internal covariate shift [ EB/OL]. [2018-10-15]. http//arxiv. org/pdf/1502.03167. pdf.[16] BOTTOU L. Large-scale machine learning with stochastic gradient
descent [ C] // Proceedings of the 19th International Conference on Computational Statistics. Berlin: Springer, 2010: 177 - 186.[17] RUDER S. An overview of gradient descent optimization algorithms [EB/OL]. (2017-06- 15) [2018-10-15]. https://arxiv.org/ abs/1609.04747.This work is partially supported by the Sichuan Science and Technology Department Project (2018GZ0231).WANG Lishun, bom in 1992, M. S. candidate. His research inter
ests include intelligent analysis of big data, machine vision, artificial intelligence.ZHONG Yong, bom in 1966, Ph. D. , research fellow. His re
search interests include big data, cloud computing, database.LI Zhendong, bom in 1990, Ph. D. candidate. His research inter
est is machine learning, image processing.HE Yilong, bom in 1992, M. S. candidate. His research interests
include data mining, image processing.
因篇幅问题不能全部显示,请点此查看更多更全内容