2.845

2023影响因子

(CJCR)

  • 中文核心
  • EI
  • 中国科技核心
  • Scopus
  • CSCD
  • 英国科学文摘

留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于深度学习的纹理布匹瑕疵检测方法

许玉格 钟铭 吴宗泽 任志刚 刘伟生

许玉格, 钟铭, 吴宗泽, 任志刚, 刘伟生. 基于深度学习的纹理布匹瑕疵检测方法. 自动化学报, 2023, 49(4): 857−871 doi: 10.16383/j.aas.c200148
引用本文: 许玉格, 钟铭, 吴宗泽, 任志刚, 刘伟生. 基于深度学习的纹理布匹瑕疵检测方法. 自动化学报, 2023, 49(4): 857−871 doi: 10.16383/j.aas.c200148
Xu Yu-Ge, Zhong Ming, Wu Zong-Ze, Ren Zhi-Gang, Liu Wei-Sheng. Detection of detecting textured fabric defects based on deep learning. Acta Automatica Sinica, 2023, 49(4): 857−871 doi: 10.16383/j.aas.c200148
Citation: Xu Yu-Ge, Zhong Ming, Wu Zong-Ze, Ren Zhi-Gang, Liu Wei-Sheng. Detection of detecting textured fabric defects based on deep learning. Acta Automatica Sinica, 2023, 49(4): 857−871 doi: 10.16383/j.aas.c200148

基于深度学习的纹理布匹瑕疵检测方法

doi: 10.16383/j.aas.c200148
基金项目: 国家自然科学基金(61703114, 61673126, U1701261, 51675108)资助
详细信息
    作者简介:

    许玉格:华南理工大学自动化科学与工程学院副教授. 主要研究方向为机器学习与智能计算. E-mail: xuyuge@scut.edu.cn

    钟铭:华南理工大学自动化科学与工程学院硕士研究生. 主要研究方向为深度学习, 计算机视觉. E-mail: tdlming@163.com

    吴宗泽:深圳大学机电与控制工程学院教授. 主要研究方向为自动控制, 信号处理, 大数据, 知识自动化, 人工智能. 本文通信作者. E-mail: zzwu@szu.edu.cn

    任志刚:2016年获得浙江大学控制理论与控制工程专业博士学位. 主要研究方向为最优控制, 知识自动化, 人工智能. E-mail: renzhigang@gdut.edu.cn

    刘伟生:2019年获得西安交通大学电子与信息工程学院硕士学位. 主要研究方向为深度学习, 工业质检. E-mail: liuweisheng1992@outlook.com

Detection of Detecting Textured Fabric Defects Based on Deep Learning

Funds: Supported by National Natural Science Foundation of China (61703114, 61673126, U1701261, 51675108)
More Information
    Author Bio:

    XU Yu-Ge Associate professor at the School of Automation Science and Engineering, South China University of Technology. Her research interest covers machine learning and intelligent computing

    ZHONG Ming Master student at the School of Automation Science and Engineering, South China University of Technology. His research interest covers deep learning and computer vision

    WU Zong-Ze Professor at theSchool of Electromechanical and Control Engineering, Shenzhen University. His research interest covers automation control, signal processing, big data, knowledge automation, and artificial intelligence. Corresponding author of this paper

    REN Zhi-Gang Received his Ph.D. degree in control theory and control engineering from Zhejiang University in 2016.His research interest covers optimal control, knowle-dge automation, and artificial intelligence

    LIU Wei-Sheng Received his master degree from the School of Electronic and Information Engineering, Xi'an Jiaotong University in 2019. His research interest covers deep learning and industrial quality inspection

  • 摘要: 布匹瑕疵检测是纺织工业中产品质量评估的关键环节, 实现快速、准确、高效的布匹瑕疵检测对于提升纺织工业的产能具有重要意义. 在实际布匹生产过程中, 布匹瑕疵在形状、大小及数量分布上存在不平衡问题, 且纹理布匹复杂的纹理信息会掩盖瑕疵的特征, 加大布匹瑕疵检测难度. 本文提出基于深度卷积神经网络的分类不平衡纹理布匹瑕疵检测方法(Detecting defects in imbalanced texture fabric based on deep convolutional neural network, ITF-DCNN), 首先建立一种基于通道叠加的ResNet50卷积神经网络模型(ResNet50+)对布匹瑕疵特征进行优化提取; 其次提出一种冗余特征过滤的特征金字塔网络(Filter-feature pyramid network, F-FPN)对特征图中的背景特征进行过滤, 增强其中瑕疵特征的语义信息; 最后构造针对瑕疵数量进行加权的MFL (Multi focal loss)损失函数, 减轻数据集不平衡对模型的影响, 降低模型对于少数类瑕疵的不敏感性. 通过实验对比, 提出的方法能有效提升布匹瑕疵检测的准确率及定位精度, 同时降低了布匹瑕疵检测的误检率和漏检率, 明显优于当前主流的布匹瑕疵检测算法.
  • 随着人工智能的发展, 相关技术的不断成熟, 人工智能的应用领域不断扩展, 以深度卷积神经网络(Deep convolutional neural network, DCNN),为代表的深度学习方法在大量的工业界实际应用场景中展示了优于传统方法的性能[1]. 在布匹瑕疵检测领域中, 传统的瑕疵检测手段主要是采用人工检测的方式, 这种方式要求检测工人站在流水线旁边使用人眼检测布匹瑕疵, 该方法存在诸多缺陷, 如检测效率低下, 检测速度仅仅达到$0.18 \sim $0.36 m/s[2], 漏检率高, 瑕疵检出率只有70%左右[3], 检测效率随工作时长而下降等. 基于此, 研究自动化的检测系统取代人工检测在纺织工业中有着重要的意义.

    目前的布匹瑕疵自动化检测的算法主要可分为三大类[4]: 基于统计的方法[5-6]、基于频谱的方法[3, 7-9] 和基于模型的方法[10-12]. 统计法通过对布匹瑕疵图片中的纹理特征进行统计分析, 判断输入图片有无瑕疵, 该方法目前只在分辨率较小的瑕疵图片中有所应用, 且其对瑕疵的位置计算不准确. 频谱法是在实际布匹瑕疵检测中使用较多的一类方法, 该方法将图片特征从空间域转换到频率域中, 在频率域中图片特征将得到增强, 由此完成布匹瑕疵的分类, 但是该方法目前只能实现对输入图片有无瑕疵的判断, 无法定位瑕疵的位置. 模型法通过假设布匹图片纹理由规则纹理和随机纹理组成, 使用随机过程建模方法对图片特征进行描述从而完成分类, 但是该方法只在少量样本中取得好效果, 对于实际工业生产中大量样本的情况, 尚未有研究表明其可行性. 基于上述方法进行的研究对布匹瑕疵缺陷检测问题有很好的借鉴作用, 但是其研究往往局限于小规模的小分辨率布匹瑕疵图片数据集, 因此参考价值有限. 综上所述, 传统方法存在着瑕疵分割性能差、错检率高、噪声敏感等问题, 随着深度学习的发展, 采用卷积神经网络解决布匹瑕疵检测问题是当前研究的热点之一.

    基于深度卷积神经网络的方法在目前取得了极大的进展. 2012年Krizhevsky等[13]提出的AlexNet, 突破了大规模的视觉识别挑战赛(ImageNet large scale visual recognition challenge, ILSVRC)中的图片分类准确度记录. 2015年Simonyan等[14]提出VGG (Visual geometry group)系列模型, 该模型通过深层卷积神经网络对图片特征进行提取, 最后使用全连接层进行分类, 在当年的ILSVRC上取得了巨大成功. 随后Google提出InceptionNet[15-18] 系列模型, 该模型通过对网络结构的精心设计, 从而在减小模型参数量的同时提升了模型的表达能力. 2016年He等[19]提出ResNet, 通过引入残差模块, 解决了梯度消失的问题, 大大加深了网络的深度. 2017年Huang等[20]提出DenseNet, 其采用密集块(Dense block)对每层的特征图进行复用, 加强网络中特征的传递, 提高网络表现的同时减少网络的参数量. 在此之后, 对网络结构的改进算法大量涌现, 如特征金字塔网络(Feature pyramid networks, FPN), Cascade R-CNN, BiFPN等[21-23]. 对网络结构的不断改进, 使得DCNN在目标检测领域中的应用不断成熟, 已有大量算法实际应用于工业检测系统中[24-29]. 与此同时对于损失函数的改进, 如FL (Focal loss)[30]和IOU loss[31]等进一步增强了深度学习模型在检测任务中的表现.

    基于以上工作基础, 本文提出一种基于深度卷积神经网络的分类不平衡纹理布匹瑕疵检测方法(Detecting defects in imbalanced texture fabric based on deep convolutional neural network, ITF-DCNN), 来解决布匹瑕疵检测中提取到的图片特征难以用于准确的瑕疵检测以及检测模型训练过程中瑕疵样本不平衡的问题. 本文的主要贡献在以下几方面: 1)针对原始的ResNet中残差模块会造成信息流失, 导致特征图对瑕疵特征表达能力不足的问题, 提出了使用特征通道叠加后采用卷积融合的方式对残差模块进行改进; 2)为充分利用数据集中已有的布匹模板图片, 构造特征过滤金字塔网络(Filter-feature pyramid network, F-FPN), 通过布匹模板图片对布匹瑕疵图片中的冗余背景特征进行过滤; 3)基于数据集中各类瑕疵样本分布存在着极度不平衡的问题, 提出改进的损失函数 MFL (Multi focal loss)来解决模型对于少数类瑕疵样本检测准确率不高的问题.

    本文的组织架构如下: 第1节对布匹瑕疵检测的相关工作进行介绍. 第2节对布匹瑕疵检测中的问题进行描述, 阐明检测模型难以取得精确检测结果的原因. 在第3节中介绍本文采用的布匹瑕疵检测模型, 包括其中特征提取网络的构造, 特征过滤网络的建立, 以及数据集不平衡的解决方案. 第4节将基于构建的布匹数据集进行实验分析, 验证本文提出的模型在布匹瑕疵缺陷检测任务中的有效性, 同时为证明各改进结构对模型性能的提升, 将基于各改进结构进行单独的纵向对比实验. 第5节对全文的工作进行总结和展望.

    在瑕疵检测领域中, 被检测物体可分为有纹理材料和无纹理材料[2], 布匹作为一种典型的有纹理材料, 其瑕疵检测问题引起了大量专家学者的关注, 目前针对布匹瑕疵检测过程中存在的布匹材料变形、背景问题复杂、类内瑕疵多样性大和类间瑕疵极度相似等问题, 已有许多方法尝试对其进行解决[32-36]. 2017年, Li等[37]针对纹理变形的布匹瑕疵检测问题, 提出了一种基于Fisher标准的深度学习方法, 该方法首先构造一个基于Fisher准则的堆叠式自动降噪编码器(Stacked denoise auto-encoder based on Fisher criterion, FCSDA), 然后将布匹图片分割成等大小的若干份, 分割后的瑕疵图片和无瑕疵图片都将参与FCSDA的训练, 编码器训练完成后, 将待检测图片分割成同样大小的若干份进行预测, 最后通过结合重建后图片与缺陷之间的残差和预先设定的阈值来对缺陷进行定位, 该方法虽然可以完成纹理图片的瑕疵检测, 但是检测前需要将图片进行分割, 且训练过程过于繁琐. 2019年, Jing等[38] 提出一种基于卷积神经网络的纹理布匹瑕疵检测方法PTPI (Patches training and image testing), 该方法首先通过距离匹配函数计算出训练时对瑕疵进行分割的最佳尺寸, 随后利用该尺寸将样本图片中的瑕疵逐一分割出来并进行标注, 再将构建好的卷积神经网络模型在手写数字数据集上进行预训练, 预训练完成后利用分割后的数据集进行学习, 最后模型在测试图片上进行滑动, 从而完成瑕疵检测. 此方法的关键在于分割时尺寸的计算, 要求设计出的尺寸既能够使得分割后的图片完全具有缺陷的特征, 又不能包含太多的背景像素. 对于瑕疵尺寸变化不大的情况, 该方法能取得较好的检测效果, 但是该方法并没有对网络模型进行优化, 无法适应瑕疵分布复杂的情况. Raheja等[39]通过灰度共生矩阵对布匹图片特征进行提取, 辅以滑窗技术计算出待检测图片的纹理信息, 之后将所得信息和参考阈值进行对比, 若纹理信息超出阈值范围则认定为瑕疵图片, 该方法简单易行计算量小, 可在嵌入式数字信号处理器(Digital signal processor, DSP)系统中实现, 但是该方法依赖于手工设计的特征, 实际检测过程中可能会有很多有效信息流失. 此外, Tao等[40]提出使用一种两阶段的方法进行物体表面瑕疵的检测, 首先使用一种级联的自动编码器来对输入图片的每个像素进行预测, 随后只需再确定一个阈值便可实现对缺陷的分割. 该方法为Tao的团队首次提出[40], 在提取出缺陷部位后使用一个CNN模型对缺陷进行分类, 该方法能够实现对瑕疵特征的准确提取, 检测准确率高, 然而要求数据集具有缺陷的掩膜标注信息, 大部分缺陷检测的应用场景难以满足该要求, 且分割模型和分类模型要单独训练, 无法端到端的进行, 过程稍显繁复. He等[41]使用卷积自动编码器和半监督的生成对抗网络组合来对缺陷进行检测, 该方法首先利用大量的无标签样本训练一个卷积自动编码器, 随后利用该编码器用于特征提取, 将提取到的特征输入到softmax层进行分类, 最后结合半监督式生成对抗网络(Semi-supervised generative adversarial network, SGAN)模型提升网络的泛化性. 这种半监督的方式可以改善标签样本较少的情况下模型的分类性能, 但是对于样本类别不平衡的问题并没有进行考量. Arikan等[42] 提出一种基于卷积神经网络的方法对物体表面的瑕疵进行实时识别, 该卷积网络通过大卷积核以及跳级连接尽可能多地准确获取缺陷的信息, 且使用了一种新的数据增强方法, 并通过实验验证了该方法的有效性. 文献[42]的方法能够满足检测的实时性要求, 单张图片的检测时间仅为1.9 ms, 但是构造的卷积网络比较精简, 并不适用于背景复杂的样本.

    布匹瑕疵检测的自动化是一个集布匹瑕疵特征提取, 瑕疵分类和瑕疵定位的多任务过程. 具体来说, 检测算法要实现3个方面的功能: 1)判断输入的布匹图片有无瑕疵; 2)对有瑕疵布匹图片中的瑕疵进行定位; 3)对定位出来的布匹瑕疵进行分类. 常见的布匹瑕疵样本如图1所示, 其主要存在以下3个特征: 1)布匹表面包含大量的花色, 且花色种类繁多, 同时其分布不具有规律性, 造成布匹图片纹理信息复杂, 瑕疵特征提取困难; 2)布匹中的一些瑕疵特征极其相似, 难以用肉眼进行判别, 如图中的“虫粘”类瑕疵和“破洞”类瑕疵; 3)布匹中的各类瑕疵形状各不相同, 尺寸跨度极大, 其形状分布如图2所示. 除此之外, 纹理布匹瑕疵检测还存在着大量其他问题, 如在纹理布匹瑕疵检测问题中, 由于图片背景的复杂性, 为降低瑕疵检测的难度, 通常会采用图片分割的手段, 得到分辨率较小的图片后再进行检测, 但是这无疑会加大瑕疵检测的工作量, 从而影响检测的速度, 且大部分经典的检测方法仅支持检测单张图片中只存在单个瑕疵的情形, 对于单张图片中存在多个不同种类瑕疵的情况仍不能很好的判别. 此外目前大部分基于深度学习进行布匹瑕疵检测的相关工作中, 仅仅给出了对布匹图片是否含有瑕疵的判断结果, 并未对有瑕疵图片中含有的瑕疵进行具体的分类, 或者仅实现对易于检测的瑕疵类别的判断. 而对于布匹瑕疵数据集内各类样本的数量不均衡, 从而导致模型对于少数类样本的检测性能较差的问题, 目前尚未有文献对其进行研究.

    图 1  纹理布匹瑕疵样本图片
    Fig. 1  Samples of jacquard fabric defects
    图 2  纹理布匹瑕疵形状分布
    Fig. 2  Shape distribution of jacquard fabric defects

    正是由于布匹瑕疵数据集的这些特性, 使得人工检测及传统的瑕疵检测方案难以达到理想的检测效果, 因此本文在对ResNet, Cascade R-CNN, FPN等模型研究的基础之上, 提出一种基于深度卷积神经网络的纹理布匹瑕疵检测方法, 针对大分辨率的纹理布匹进行自动的瑕疵特征提取, 并将经过预处理后的瑕疵特征图输入到分类模型和回归模型中, 实现纹理布匹的瑕疵检测.

    考虑到布匹瑕疵检测算法对精度与速度的要求, 本文采用的特征提取网络框架为基于ResNet50改进后的ResNet50+. 利用ResNet50+ 对输入的布匹瑕疵图片进行特征的提取, 同时选用提取过程中产生的第2 ~ 6阶段的特征图构建F-FPN网络模型. F-FPN网络模型将对不同层级的特征图进行融合, 增强底层特征图的语义信息, 同时利用模板特征图对瑕疵特征图中的复杂背景信息进行过滤, 随后得到的特征图经由区域候选网络(Region proposal network, RPN)提取到约2000个候选框, 将得到的2000个候选框进行感兴趣区域 (Region of interest, ROI)池化得到输出大小一致的候选框. 在此基础上使用级联的分类器和回归器对候选框进行分类和回归, 提升检测模型对瑕疵的定位精度. 模型的整体结构如图3所示, 其中 “FC” 代表全连接层,“$ C_i $”,“$ B_i $”, $ i = 1 $, $ 2 $, $ 3 $分别代表分类网络和回归网络.

    图 3  ITF-DCNN模型的整体结构图
    Fig. 3  Structure of proposed model

    本文采用的特征提取网络的原型为ResNet50, 其网络结构如图4所示. 该网络可分为5个阶段, 第1个阶段由卷积层、批归一化(Batch normalization, BN)层、ReLU激活层和$ 7\times 7 $的池化层构成, 其后的4个阶段都可视为由Identity block和Conv block组成的残差模块级联构成. 在原始的ResNet50中, Conv block的结构如图5(a)所示, 特征图输入后经过两个通道, 相减后输出, 在该过程中使用的ReLU激活函数如式(1)所示:

    图 4  ResNet50网络结构图
    Fig. 4  Model structure of ResNet50
    图 5  残差模块
    Fig. 5  Model structure of residual block
    $$ ReLU(x) = \left\{ \begin{array}{lll} &x,&若\; x\ge 0 \\ &0,&其他 \end{array} \right.$$ (1)

    之后经过一个卷积核为$ 1 \times 1 $, stride = 2的卷积层, 输出后的特征图大小为

    $$ \left\{\begin{aligned} &{W_{\rm{o}}} = \dfrac{{{W_{\rm{i}}} - 1}}{2} + 1\\ &{H_{\rm{o}}} = \dfrac{{{H_{\rm{i}}} - 1}}{2} + 1 \end{aligned}\right. $$ (2)

    $({W_{\rm{i}}},{H_{\rm{i}}})$表示输入特征图的长宽, $({W_{\rm{o}}},{H_{\rm{o}}})$表示输出特征图的长宽, 卷积核的步长为2, 卷积核尺寸为1将导致最多达${3}/{4}$的信息流失. 为避免这个问题, 本文对Conv block的结构进行改进, 将其中的下采样卷积层后移, 并把$ 3 \times 3 $的卷积核的stride设置为2来达到下采样的目的, 同时将shortcut中的$ 1 \times 1 $卷积核替换成$ 3 \times 3 $卷积核, 改进后的Conv block结构如图5(b)所示. 与此同时, ResNet50采用级联的Identity block模块来代替原本的卷积层, Identity block模块的引入可以解决随着网络模型的加深而出现的梯度消失问题. 原始的Identity block模块如图5(c)所示, 输入经过两通道后相加, 再进入ReLU做一个非线性激活, 这导致Identity block的输出只能为正数, 极大制约模型的表达能力. 因此, 本文采用如图5(d)所示的改进结构, 将ReLU层移到通道内部, 且特征图直接相加替换为两通道特征图叠加后使用卷积核来进行残差的提取, 从而提升模型对瑕疵特征的表达能力.

    在深度卷积神经网络中, 进行多尺度特征融合目的在于将不同分辨率的特征信息结合起来, 弥补高分辨率的特征图语义信息低的弱点. 给定输入特征层${{{{\boldsymbol{C}}}}_{{\rm{in}}}} = \{C_{{{{l}_{1}}}}^{{\rm{in}}},C_{{l_2}}^{{\rm{in}}},\cdots,C_{{{{l}_{n}}}}^{{\rm{in}}}\}$, 其中, $C_{{{{l}_{i}}}}^{{\rm{in}}}$代表第$ i $层的输入特征层, 融合的实质是找到一种由输入特征层到输出特征层的映射关系, 该过程可表示为: ${ {\boldsymbol{P}}_{{\rm{out}}}} = f({ {\boldsymbol{C}}_{{\rm{in}}}})$. 在传统的特征金字塔网络中, 取每张输入图片的5个特征层${ {\boldsymbol{C}}_{{\rm{in}}}} = \{ C_2^{{\rm{in}}},C_3^{{\rm{in}}},\cdots,C_6^{{\rm{in}}}\}$, 每个特征层的分辨率为输入特征图尺寸的$ 1/{2^i} $, 各个特征层经过一个$ 1 \times 1 $卷积层后将通道数进行统一, 最后采用一种自上而下的融合方式进行融合, 该过程具体可见图6(a).

    图 6  特征图过滤方式
    Fig. 6  Methods to filtering feature maps

    其中, “$ 2 \times $” 表示进行两倍的上采样. 在布匹瑕疵检测中, 由于布匹图片存在大量的纹理特征, 造成背景复杂, 使用传统的FPN卷积网络生成瑕疵图片的特征图, 容易提取出大量的冗余特征, 增大瑕疵检测的难度. 为解决特征图中存在的特征冗余问题, 可使用特征过滤的方法, 消除无关特征对检测模型的影响. 一种简单的特征过滤方式是将瑕疵布匹图片像素值减去模板图片(模板图片中不含瑕疵, 但是包含对应的复杂背景信息)的像素均值, 从而在一定程度上消除背景的影响, 即

    $$ {p_d}(i,j) = {p_d}(i,j) - avg({p_t}) $$ (3)
    $$ avg({p_t}) = \frac{{\sum\limits_{i = 0}^m {\sum\limits_{j = 0}^n {{p_t}(i,j)} } }}{{m \times n}} \quad$$ (4)

    其中, $ avg({p_t}) $表示模板图片的像素均值, $ {p_d}(i,j) $, $ {p_t}(i,j) $分别表示瑕疵图片和模板图片第i行第j列的像素值, 且满足$ i < m,j < n $, $ m \times n $表示图片的分辨率. 但是该方法没有考虑纹理在布匹图片中的空间分布差异, 对于纹理单一的布匹图片可以取得较好的效果, 当布匹图片的纹理较复杂时, 往往难以奏效. 使用深度卷积神经网络对布匹图片进行卷积, 可以提取布匹图片一定空间范围内的特征, 进行多次重复卷积, 可以获取高语义信息的特征, 即在一定程度上消除布匹的纹理特征在空间分布上的差异. 因此使用卷积网络对瑕疵布匹图片和模板图片分别进行特征提取, 为缓解瑕疵图片和模板图片在纹理信息上的差异性, 将输入到网络中的模板图片进行随机1 ~ 10个像素上的抖动, 使得瑕疵图片和模板图片对齐, 得到相关特征图后, 利用模板图片特征对瑕疵布匹图片特征进行冗余特征过滤. 基于此, 本文结合FPN网络提出两种过滤的方式.

    1)加性过滤: $ {O_i} = I_d^i + I_t^i $, 其中, $ {O_i} $代表过滤后的输出特征图, $ {I_d^i} $$ {I_t^i} $分别代表瑕疵布匹图片和模板图片的特征图, $ i $代表特征图的通道数. 该过滤方式直接对应特征图中的各个特征进行操作, 并不改变特征图的维数, 但是可以增强每一维特征中瑕疵的语义信息, 过程具体可见图6(b). 加性过滤方式直接对特征图中的每一维特征进行相加, 并没有考虑每一维特征在输出特征图中应当占据的权重, 这可能导致某些对检测有益的特征语义信息反而减弱, 基于此提出了卷积过滤.

    2)卷积过滤: $ {O_i} = concatenate(I_d^i,I_t^i)*{K_i} $, 其中$ concatenate(I_d^i,I_t^i) $表示对$ I_d^i,I_t^i $的特征图进行叠加, “$ * $” 表示卷积操作, $ {K_i} $表示$ 1 \times 1 $卷积核. 该过滤方式通过$ 1 \times 1 $卷积核的引入, 使得网络可以自适应的对不同的特征信息进行加权求和, 避免了有效瑕疵特征语义信息的流失, 其具体过程如图6(c)所示.

    在布匹瑕疵检测中, 不同种类的瑕疵在数量上分布极不平衡, 其中最常见的瑕疵为“沾污”, 数量最少的瑕疵为“其他”, 两者的不平衡比例高达$47:1$. 瑕疵种类的不平衡性对于模型的检测效果会产生较大影响, 模型对于样本数量更多的瑕疵能取得更好的检测效果, 而对于样本数量较少的瑕疵, 由于难以学得较好的特征表达, 使得模型对该类瑕疵的检测准确率不高, 定位精度较差.

    为缓解模型中参与训练的正负样本不平衡问题, 体现不同样本的难易分程度, Lin等[30]在2017年提出了Focal loss损失函数:

    $$ FL({p_t}) = - {\alpha _t}{(1 - {p_t})^\gamma }\log ({p_t}) $$ (5)
    $$ {p_t} = \left\{ {\begin{array}{*{20}{l}} &p,&若\; y = 1\\ &1 - p,&其他 \end{array}} \right.\quad\quad$$ (6)

    其中, $ p{\rm{ }} $表示对anchor的预测置信度, 该损失函数针对正负类anchors不均衡及不同anchors的难易分程度进行特殊处理, 在损失函数中$ {\alpha _t} $被当作平衡正负类anchors的加权系数, 同时可通过$ \gamma $值来调节难分anchors在总损失中的占比, 在一定程度上解决样本不平衡的问题. 但是Focal loss并没有考虑到数据集中各类样本的不平衡度, 仅仅依靠人工对参数的调节, 往往难以把控模型学习的方向, 最终导致模型的检测性能过于依赖参数$ {\alpha _t} $$ \gamma $的选取, 想要依靠Focal loss训练得到性能优良的检测模型, 往往需要花费大量的时间在超参数的调整上.

    为适应多分类不平衡数据集, 同时优化超参数的选取, 本文结合Focal loss提出了改进的MFL损失函数. 为使该损失函数可对不同类别的瑕疵进行加权, 将原本的二分类加权系数$ {\alpha _t} $移除, 并添加多类样本加权系数$ {\beta _c} $, $ {\beta _c} $可针对不同瑕疵样本在数据集中的占比自动调整, 从而控制对应样本在损失函数中所占据的比重. 本文提出的$ {\beta _c} $计算方式为

    $$ {\beta _c} = \frac{\omega }{{{N_c}}} $$ (7)

    其中, $ \omega $表示平衡系数, $ {N_c} $表示类别为$ c $的样本数量. $ {\beta _c} $的引入使得数据集中的每个大类样本的损失在总损失中所占的比例相对较小, 防止数据集的极度不平衡性导致大类样本完全主导梯度更新方向的情况发生. 改进后的损失函数可表示为

    $$ MFL({p_t}) = - {\beta _c}{(1 - {p_t})^\gamma }\log ({p_t}) $$ (8)

    其中, $ {p_t} $的取值如式(5)所示.

    本文所采用的数据集来自广东省某纺织企业, 数据集共包含有瑕疵图片2259幅, 模板图片68幅, 模板图片中只含有背景纹理信息, 不包含瑕疵, 图片的分辨率为$ 4\;096 \times 1\;810 $像素, 在实验中, 将其中的2 015幅瑕疵图片划分为训练集, 剩下的244幅作为验证集. 在本数据集中包含7种布匹瑕疵, 分别为沾污、花毛、虫粘、破洞、蜡斑、网折和其他, 在训练过程中背景将单独作为一个类别参与训练, 因此实际是一个8分类的模型.

    深度学习模型的训练需要大量的样本, 为达到理想的训练效果, 需对原始的数据集进行数据增强, 本文采用的数据增强方法为: 1)对原始的瑕疵样本图片进行$ 2 \times 2 $的切割; 2)对切割后的数据集分别进行水平和垂直方向上的翻转. 数据增强后的样本量为原始数据集的8倍. 增强前后数据集中的样本分布如表1所示. 表1真实反映了数据集中的各类瑕疵在数量上存在极度不平衡问题, 其中“沾污”类瑕疵数量最多,“其他”类瑕疵数量最少, 这种类别失衡问题将导致模型在学习过程中梯度被多数类瑕疵主导, 使得模型对少数类瑕疵的检测性能较差.

    表 1  增强前后数据集中的样本分布
    Table 1  Samples distribution of the dataset before and after data augmentation
    瑕疵类别
    沾污花毛虫粘破洞蜡斑网折其他正常总计
    训练集增强前243239820812273775227566118
    训练集增强后972815948344902923062061102624476
    验证集增强前14133126254420623
    验证集增强后56213448226221416722490
    下载: 导出CSV 
    | 显示表格

    本文实验采用的计算机配置为Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20 GHz, NVIDA GeForce 1080TI GPU, 操作系统为Ubuntu18.04. 本实验的网络模型基于Pytorch框架搭建, 实验中设置batch size为2, 训练步数为600000, 初始学习率为0.0025, 动量为0.9, 衰减系数设置为0.0001. 实验可分为6部分, 第1部分为数据集增强前后模型检测性能对比实验; 第2部分用于比较本文提出的改进模型和其他模型的性能差异, 参与比较的模型有主流的深度学习检测方法, 传统的布匹瑕疵检测方法以及目前常用的布匹瑕疵检测方法; 第3部分用于分析ResNet50+ 网络结构对纹理复杂的布匹瑕疵进行特征提取的有效性; 第4部分用于验证F-FPN结构在布匹瑕疵检测上的有效性, 并对两种过滤方法的性能进行比较, 在实验中采用的模型框架为ResNet50 + FPN + Cascade R-CNN; 第5部分用于验证MFL对于解决布匹瑕疵检测中瑕疵类别不平衡问题的有效性, 并分析损失函数中参数的选取对模型性能的影响; 第6部分则是对ITF-DCNN在不同的模板上泛化性能的分析.

    如第4.1节所述, 为使用深度学习模型达到理想的训练效果, 需对原始数据集进行增强, 增强前后的数据集样本分布如表1所示. 为验证数据增强对模型性能的影响, 采用Cascade R-CNN和ResNet50搭建训练模型, 分别使用增强前和增强后的数据集对模型进行训练, 实验结果如表2表3所示. 从表中可以看出增强后的数据集在各个类别上的检测性能均有所提升, 检测准确率平均提升2.21%, 平均精度均值 (Mean average precision, mAP)平均提升1.77%, 其中“蜡斑”类瑕疵的检测性能提升最大, 准确率和mAP分别上涨了4.61%和7.35%, 原因在于“蜡斑”类瑕疵在原本的数据集中样本较少, 且该类瑕疵特征简单, 所使用的数据增强方法有利于模型对该类瑕疵的特征进行学习.

    表 2  数据集增强前后模型准确率对比实验结果 (%)
    Table 2  Experimental results of model on accuracy before and after dataset enhancement (%)
    瑕疵类别
    沾污花毛虫粘破洞蜡斑网折其他正常总计
    数据集增强前88.2483.3687.5689.3683.7888.2189.6598.6688.61
    数据集增强后90.5685.5190.3591.4287.6489.2490.0299.8190.57
    下载: 导出CSV 
    | 显示表格
    表 3  数据集增强前后模型mAP对比实验结果 (%)
    Table 3  Experimental results of model on mAP before and after dataset enhancement (%)
    瑕疵类别
    沾污花毛虫粘破洞蜡斑网折其他正常总计
    数据集增强前69.0658.5181.5083.4433.3363.7045.5162.15
    数据集增强后70.0459.1283.2383.5435.7863.7047.3163.25
    下载: 导出CSV 
    | 显示表格

    在本实验中, 为验证本文提出的改进模型对布匹瑕疵检测的有效性, 将结合不同的检测器和主干网络进行对比实验, 其中参与实验的检测器有Faster R-CNN、Cascade R-CNN和RetinaNet, 参与实验的主干网络有ResNet50和ResNet101, 本文所提出的改进模型将基于Cascade R-CNN进行搭建. 为验证深度学习模型和传统的布匹瑕疵检测模型在本数据集上的性能差异, 选择3种传统的瑕疵检测方法进行对比实验, 分别为: 1)基于灰度共生矩阵(Gray-level co-occurrence matrix, GLCM)的瑕疵检测方法, 其中, 灰度等级设置为256, 基准窗口尺寸设置为(3, 5, 7), 移动方向设置为$ (0,{\pi}/{4},{\pi}/{2},{3\pi}/{4}) $, 采用的统计属性包括对比度、非相似性、同质性、角二阶矩以及能量; 2)基于Gabor滤波器的瑕疵检测方法, 其中, 滤波方向选择为$ (0,{\pi}/{4},{\pi}/{2}, {3\pi}/{4}) $, 滤波中心频率选择为$ ({1}/{8},{1}/{16},{1}/{32}) $; 3)基于高斯混合模型(Gaussian mixture model, GMM)的瑕疵检测方法, 其中, 高斯模型的个数设置为3. 为保证经典模型的检测效果, 实验采用的图片分辨率为$ 280 \times 280 $像素. 为进一步比较本文所提出算法与目前其他的缺陷检测算法之间性能的差异, 对文献[38, 41-42]中所描述的PTIT方法、CAE-SGAN和SufNet进行实验, 实验采用的图片分辨率设置为$ 280 \times 280 $像素. PTIT方法中, 对每一类瑕疵样本通过距离匹配函数求解得到patchs的尺寸后进行平均, 最终patchs的大小为$ 45 \times 45 $. 在CAE-SGAN的实验中, 各类缺陷样本分别取500张进行CAE的训练, 对于某些类别样本不足的情况, 使用添加随机噪声的方法生成新样本. SufNet模型的训练迭代次数和学习率将参照原文设置, 分别为100和0.0007, 损失函数采用交叉熵损失(Cross entropy loss, CEL)函数. 此外由于文献[38, 41-42]的方法无法对缺陷进行精确的定位, 因此只对检测准确率进行比较分析.

    实验结果如表4, 图7图8所示. 表4显示所有参与实验的方法的检测结果, 图7显示了主干网络分别为ResNet50和ResNet101时的模型损失收敛曲线图, 由损失收敛曲线图可看出, 模型的损失在训练次数达到240000次时基本上趋于稳定, 且最终稳定在一个比较小的值. ITF-RCNN在测试集上的可视化结果如图8所示, 其中细线框和右上角的数字分别表示真实瑕疵的位置、类别及置信度, 粗线框和右下角的数字分别表示预测瑕疵的位置、类别及置信度, 由图8可以看出, 模型对于瑕疵类别及位置的预测比较可靠. 从表4中可以看出, 在主干网络相同时, Cascade R-CNN因为在对RPN输出的框进行检测时采用级联的结构, 逐步提升检测框的并交比(Intersection over union, IOU)阈值, 所以检测准确率要优于Faster R-CNN和RetinaNet. 在主干网络不同时, 模型性能并不总是随着网络结构的加深而增强, 可见检测器的设计也是影响模型性能的一个关键因素. GLCM、Gabor、GMM等传统的瑕疵检测模型, 其检测效果总体上不如ITF-DCNN模型, 原因在于数据集中布匹图片存在多种花色纹理, 背景复杂, 导致滤波效果不佳, 且瑕疵在形状、大小等属性上的特征呈现多样性, 即使同一种瑕疵在尺寸和形状上也存在着多种分布, 使得模型难以得到完整表征瑕疵特征的统计量. PIPT方法检测准确率为92.56%, 该方法将布匹图片中的瑕疵使用合适的尺寸切割出来后用于CNN分类器的训练, 虽然可以加快模型的训练速度及提取瑕疵特征的能力, 但是本文的数据集中各类瑕疵形状差异极大, 分割时采用一个固定尺寸无法使得模型达到最优的检测效果; CAE-SGAN的检测准确率为85.01%, 该模型将CAE和SGAN结合, 利用SGAN生成的样本对CAE进行优化, 在训练样本较小的时候该策略确实比较有效, 但并不能解决背景复杂及类别不平衡的问题; SurfNet训练速度和测试速度均很快, 但该网络原本是针对二分类问题进行设计的, 将其迁移到多分类问题上检测性能有所损失, 且该网络的设计过于简单, 对于具有复杂背景的检测目标无法完整的将特征从背景中分离出来, 因此这3个模型的检测准确率都低于ITF-DCNN的检测准确率. 对于本文提出的ITF-DCNN模型, 对比主干网络为ResNet50的Cascade R-CNN, 其mAP提升了15.11%, 检测准确率和误检率提升了7.74%和74.18%. 将主干网络替换为ResNet101后, ITF-DCNN模型性能同样存在提高, 可见该模型对于分类不平衡的纹理复杂布匹的瑕疵检测确实有效, 但更换网络结构更深的主干网络并没有带来明显的收益, 原因在于改进后的残差网络和F-FPN网络已经可以提取到瑕疵布匹图片的大部分有效特征.

    表 4  不同模型在布匹瑕疵数据集上的实验结果 (%)
    Table 4  Experimental results of different models on the jacquard fabric defect dataset (%)
    检测器主干网络mAP准确率误检率漏检率
    Faster R-CNNResNet5065.5687.4012.601.42
    Cascade R-CNNResNet5063.7790.559.452.85
    RetinaNetResNet5065.6053.8646.130.20
    Faster R-CNNResNet10163.8588.7211.282.24
    Cascade R-CNNResNet10164.6090.359.651.83
    RetinaNetResNet10166.5256.2343.770.12
    GLCM64.6335.376.87
    Gabor83.8716.131.67
    GMM81.3218.681.77
    PTIT[38]92.567.440.94
    CAE-SGAN[41]85.0114.992.65
    SurfNet[42]84.8215.181.79
    ITF-DCNNResNet5073.4197.562.441.65
    ITF-DCNNResNet10173.9297.662.341.14
    下载: 导出CSV 
    | 显示表格
    图 7  模型的损失收敛曲线图
    Fig. 7  The loss curves of models
    图 8  ITF-DCNN模型检测结果图
    Fig. 8  Experimental results of the proposed method ITF-DCNN

    本文所使用的数据集中, 布匹图片存在着复杂的背景纹理信息, 某些特征明显的背景纹理很有可能将需要检测的瑕疵的特征掩盖, 使得特征提取网络无法提取出用于检测瑕疵的关键信息, 这对于布匹瑕疵的检测明显是不利的. 为解决上述问题, ResNet50+ 网络基于ResNet50进行改进, 目的在于针对具有复杂背景的布匹图片, 进一步提升网络对于图片特征的表达能力. 为验证改进后的网络对于模型性能的影响, 本节将ResNet50中的Conv block和Identity block分别替换为本文提出的改进结构, 用于分析替换前后模型的性能差异, 同时为检验ResNet50和ResNet50+ 的性能差异, 也将对这两个模型进行对比实验, 实验中除了Conv block和Identity block有所不同外, 其余的网络结构设置、参数设置以及所使用的数据均相同. 实验结果如表5所示, 其中ResNet50+C和ResNet50+I分别表示将ResNet50中的Conv block和Identity Block替换后的模型, 替换后的模型的检测准确率分别提升了1.94%和1.34%, 而ResNet50+ 对比ResNet50, 其检测准确率和mAP提升幅度分别为2.46%和1.49%. 可见经过改进后的ResNet50+ 确实对布匹图片的特征具有更强的表达能力, 原因在于改进后的网络解除了ReLU激活函数对Identity block输出的限制, 且通过卷积的方式对特征图进行融合, 为模型提供了更多的可能性.

    表 5  改进后的ResNet50+ 网络性能对比实验 (%)
    Table 5  Experimental performance result of ResNet50+ (%)
    mAP准确率误检率漏检率
    ResNet5063.7790.559.452.85
    ResNet50+I63.6891.768.242.66
    ResNet50+C64.1492.317.693.43
    ResNet50+64.7292.787.222.91
    下载: 导出CSV 
    | 显示表格

    在第4.3节的实验中, ITF-DCNN模型同时使用了改进后的残差结构ResNet50+、F-FPN和MFL, 实验证明了其对布匹瑕疵检测性能提升的有效性. 本次实验将验证单独使用F-FPN网络结构对模型性能的提升, 同时对在F-FPN中使用不同的过滤方式所带来的性能提升进行比较. 实验中各个模型使用的主干网络均为ResNet50, 并且都使用Cascade R-CNN级联网络, 损失函数统一为多分类交叉熵损失函数, 即

    $$ Loss = - \sum\limits_{i = 1}^N {\sum\limits_{j = 0}^{C - 1} {{y_{ij}}\log ({p_{ij}})} } $$ (9)

    其中, $ N $为样本量, $ C $为类别数, $ {y_{ij}} $表示第$ i $个样本的one hot标签中的第$ j $个分量, $ {p_{ij}} $表示样本$ i $分为第$ j $类的概率. 实验结果如表6所示, 可见原始的Top-Down FPN因为其特征流动方向的限制, 导致性能在所有模型中最差. 而PANet相比Top-Down FPN结构, 其增加了一个自下而上的特征流动方向, 使得提取得到的特征图更加适合进行布匹瑕疵的检测. 而对于本文提出的加性过滤和卷积过滤的F-FPN网络, 虽然其特征流动是单向的, 但是在特征传递的过程中不断对特征图的冗余信息进行过滤, 仅保留对检测有益的特征, 对比Top-Down FPN其取得了更好的检测效果, 且卷积过滤的F-FPN因为可以自动地调整不同特征的过滤程度, 对比加性过滤的F-FPN其检测效果更好, 对比Top-Down FPN其mAP提升了12.00%, 检测准确率提升了6.81%.

    表 6  F-FPN性能验证实验结果 (%)
    Table 6  Experimental performance result of F-FPN (%)
    mAP准确率误检率漏检率
    Top-Down FPN63.7790.559.452.85
    PANet65.6992.237.772.56
    加性F-FPN70.3193.656.531.95
    卷积F-FPN71.4296.723.281.25
    下载: 导出CSV 
    | 显示表格

    MFL基于不同类别的瑕疵数量对该类瑕疵的损失进行加权, 加权系数为$ {\beta _c} ={\omega }/{{{N_c}}} $, 为验证MFL对模型性能的影响, 同时找到最佳的平衡系数$ \omega $, 采用Cascade R-CNN为检测器, ResNet50为主干网络构建模型, 分别选用多分类交叉熵损失函数、FL和MFL进行对比实验, 实验结果如表7所示. 实验显示, FL对模型检测性能的提升受参数$ \alpha $$ \gamma $的制约较大, 当使用较好的$ \alpha $$ \gamma $时, 模型性能可以得到提升, 但是当$ \alpha $$ \gamma $的选定不适当时, 反而会大大影响模型的性能. 依据表7中所选定的参数, 计算得到模型检测准确率和mAP的变化幅度分别为32.22%和23.51%, 使用MFL时, 其准确率和mAP的变化幅度为3.14%和8.92%, 同时实验表明, 当$ \gamma $ = 2, $ \omega $ = 0.6时, 模型可取得最好的性能, 此时模型的mAP和准确率对比损失函数为交叉熵损失函数时上涨了11%和5.27%. 图9显示了模型分别取CEL和MFL时, 对数据集中的少数类瑕疵的检测结果, 由图9中可以看出, 使用MFL可以有效改善瑕疵类别不平衡对模型检测性能的影响.

    表 7  MFL的性能验证实验结果
    Table 7  Experimental performance result of MFL
    损失函数$ \alpha $$ \gamma $$ \omega $mAP (%)准确率 (%)误检率 (%)漏检率 (%)
    CE 63.77 90.55 9.45 2.85
    FL 0.25 5.0 52.53 70.23 29.77 9.56
    FL 0.25 2.0 65.62 92.86 7.14 2.02
    FL 0.25 1.0 64.88 91.91 8.09 2.12
    FL 0.50 0.5 64.74 91.55 8.45 2.33
    FL 0.75 0.2 59.27 83.02 16.98 8.50
    FL 0.75 0.1 58.11 80.85 19.15 7.56
    FL 0.75 0.0 58.01 81.22 18.78 7.66
    MFL 1.0 0.618 68.21 94.39 5.61 1.44
    MFL 2.0 0.618 70.12 95.32 4.68 1.68
    MFL 5.0 0.618 68.11 94.50 5.50 1.56
    MFL 2.0 0.100 67.22 93.68 6.32 2.26
    MFL 2.0 0.300 69.03 94.88 5.12 1.56
    MFL 2.0 1.000 69.22 95.17 4.83 1.29
    MFL 2.0 2.000 68.81 94.35 5.65 1.68
    MFL 2.0 5.000 64.38 92.41 7.59 2.42
    下载: 导出CSV 
    | 显示表格
    图 9  MFL在少数类上的检测结果图
    Fig. 9  Experimental result of MFL based on minority classes

    在布匹瑕疵检测中, 布匹的纹理信息多种多样, 不同的纹理将给布匹瑕疵检测带来不同程度的干扰, 为验证ITF-DCNN模型在具有不同纹理信息模板上的泛化性, 选取10种具有不同纹理信息的模板进行实验, 所选取的模板图片如图10所示, 实验中采用Cascade R-CNN为检测器, ResNet50为主干网络, FL为损失函数, 并分别结合卷积F-FPN和FPN构建模型. 实验过程中, 为加快模型的训练速度, batch size设置为4, 初始学习率设置为0.005, 动量设置为0.9, 衰减系数设置为0.0001, 梯度优化算法选择为Adam优化器, 训练步数为600 000. 实验结果如表8表9图11所示. 由实验结果可见, 具有不同纹理信息的模板将对模型的检测性能造成一定的影响, 但采用本文所提出的改进方法, 在不同的模板上模型的检测性能均有所提升, 其中模板5、模板6、模板10, 对比模板3、模板8、模板9的提升幅度更小, 其原因在于后者的纹理信息更加简单, 背景特征和瑕疵特征对比明显, 更有利于F-FPN对其中的背景特征进行过滤.

    图 10  模板图片
    Fig. 10  Template images
    表 8  采用F-FPN的模型在不同模板上的泛化性分析 (%)
    Table 8  Generalization analysis of models using F-FPN on different templates (%)
    模板1模板2模板3模板4模板5模板6模板7模板8模板9模板10均值
    准确率95.8796.7999.6793.5691.7491.1193.6699.1298.2393.6595.34
    mAP69.1269.7375.3768.9767.4668.1268.2475.9676.8268.0270.78
    下载: 导出CSV 
    | 显示表格
    表 9  采用FPN的模型在不同模板上的泛化性分析 (%)
    Table 9  Generalization analysis of models using FPN on different templates (%)
    模板1模板2模板3模板4模板5模板6模板7模板8模板9模板10均值
    准确率91.6391.0492.3890.3988.3488.1291.2591.7591.4289.1190.54
    mAP62.4361.7565.8662.0161.9961.0862.5165.6366.7461.4663.07
    下载: 导出CSV 
    | 显示表格
    图 11  FPN和F-FPN的泛化性实验对比图
    Fig. 11  Comparison of FPN and F-FPN generalization experiments

    对于纺织工业中存在着的布匹瑕疵检测问题, 本文提出了一种基于深度学习的布匹瑕疵检测方法. 该方法使用改进后的ResNet50+ 进行瑕疵特征的提取, F-FPN网络结构通过在FPN层中使用模板布匹图片特征, 对瑕疵布匹图片特征中的冗余信息进行加性过滤或卷积过滤, 从而增强特征图对瑕疵信息的表达能力. 同时为解决布匹图片数据集中存在着的瑕疵样本类别不平衡问题, 提出基于FL改进的MFL损失函数. 该损失函数根据每类瑕疵的数量对其在模型中产生的损失进行加权, 从而增强模型对于少数类瑕疵样本的学习能力. 基于本文提出的方法在布匹瑕疵数据集上进行实验, 并和传统的缺陷检测算法以及目前主流的表面瑕疵检测算法进行对比, 实验结果验证了本文提出方法的有效性. 尽管本文提出的方法在布匹瑕疵检测中取得了良好的效果, 其仍然有很大的改进空间, 主要集中在两个方面: 1)瑕疵类别增多的问题, 在纺织工业中布匹的瑕疵种类超过70种, 虽然常见的瑕疵种类不多, 但是使模型能够对更多种类的瑕疵进行检测仍然是一个值得研究的方向; 2)检测速度的问题, 使用深度学习模型进行布匹瑕疵检测, 可取得很好的瑕疵定位精度和检测准确率, 但是因为模型复杂, 存在大量参数, 往往使得检测时间较长, 因此寻找合适的方法缩短检测时间也是亟需解决的问题.

  • 图  1  纹理布匹瑕疵样本图片

    Fig.  1  Samples of jacquard fabric defects

    图  2  纹理布匹瑕疵形状分布

    Fig.  2  Shape distribution of jacquard fabric defects

    图  3  ITF-DCNN模型的整体结构图

    Fig.  3  Structure of proposed model

    图  4  ResNet50网络结构图

    Fig.  4  Model structure of ResNet50

    图  5  残差模块

    Fig.  5  Model structure of residual block

    图  6  特征图过滤方式

    Fig.  6  Methods to filtering feature maps

    图  7  模型的损失收敛曲线图

    Fig.  7  The loss curves of models

    图  8  ITF-DCNN模型检测结果图

    Fig.  8  Experimental results of the proposed method ITF-DCNN

    图  9  MFL在少数类上的检测结果图

    Fig.  9  Experimental result of MFL based on minority classes

    图  10  模板图片

    Fig.  10  Template images

    图  11  FPN和F-FPN的泛化性实验对比图

    Fig.  11  Comparison of FPN and F-FPN generalization experiments

    表  1  增强前后数据集中的样本分布

    Table  1  Samples distribution of the dataset before and after data augmentation

    瑕疵类别
    沾污花毛虫粘破洞蜡斑网折其他正常总计
    训练集增强前243239820812273775227566118
    训练集增强后972815948344902923062061102624476
    验证集增强前14133126254420623
    验证集增强后56213448226221416722490
    下载: 导出CSV

    表  2  数据集增强前后模型准确率对比实验结果 (%)

    Table  2  Experimental results of model on accuracy before and after dataset enhancement (%)

    瑕疵类别
    沾污花毛虫粘破洞蜡斑网折其他正常总计
    数据集增强前88.2483.3687.5689.3683.7888.2189.6598.6688.61
    数据集增强后90.5685.5190.3591.4287.6489.2490.0299.8190.57
    下载: 导出CSV

    表  3  数据集增强前后模型mAP对比实验结果 (%)

    Table  3  Experimental results of model on mAP before and after dataset enhancement (%)

    瑕疵类别
    沾污花毛虫粘破洞蜡斑网折其他正常总计
    数据集增强前69.0658.5181.5083.4433.3363.7045.5162.15
    数据集增强后70.0459.1283.2383.5435.7863.7047.3163.25
    下载: 导出CSV

    表  4  不同模型在布匹瑕疵数据集上的实验结果 (%)

    Table  4  Experimental results of different models on the jacquard fabric defect dataset (%)

    检测器主干网络mAP准确率误检率漏检率
    Faster R-CNNResNet5065.5687.4012.601.42
    Cascade R-CNNResNet5063.7790.559.452.85
    RetinaNetResNet5065.6053.8646.130.20
    Faster R-CNNResNet10163.8588.7211.282.24
    Cascade R-CNNResNet10164.6090.359.651.83
    RetinaNetResNet10166.5256.2343.770.12
    GLCM64.6335.376.87
    Gabor83.8716.131.67
    GMM81.3218.681.77
    PTIT[38]92.567.440.94
    CAE-SGAN[41]85.0114.992.65
    SurfNet[42]84.8215.181.79
    ITF-DCNNResNet5073.4197.562.441.65
    ITF-DCNNResNet10173.9297.662.341.14
    下载: 导出CSV

    表  5  改进后的ResNet50+ 网络性能对比实验 (%)

    Table  5  Experimental performance result of ResNet50+ (%)

    mAP准确率误检率漏检率
    ResNet5063.7790.559.452.85
    ResNet50+I63.6891.768.242.66
    ResNet50+C64.1492.317.693.43
    ResNet50+64.7292.787.222.91
    下载: 导出CSV

    表  6  F-FPN性能验证实验结果 (%)

    Table  6  Experimental performance result of F-FPN (%)

    mAP准确率误检率漏检率
    Top-Down FPN63.7790.559.452.85
    PANet65.6992.237.772.56
    加性F-FPN70.3193.656.531.95
    卷积F-FPN71.4296.723.281.25
    下载: 导出CSV

    表  7  MFL的性能验证实验结果

    Table  7  Experimental performance result of MFL

    损失函数$ \alpha $$ \gamma $$ \omega $mAP (%)准确率 (%)误检率 (%)漏检率 (%)
    CE 63.77 90.55 9.45 2.85
    FL 0.25 5.0 52.53 70.23 29.77 9.56
    FL 0.25 2.0 65.62 92.86 7.14 2.02
    FL 0.25 1.0 64.88 91.91 8.09 2.12
    FL 0.50 0.5 64.74 91.55 8.45 2.33
    FL 0.75 0.2 59.27 83.02 16.98 8.50
    FL 0.75 0.1 58.11 80.85 19.15 7.56
    FL 0.75 0.0 58.01 81.22 18.78 7.66
    MFL 1.0 0.618 68.21 94.39 5.61 1.44
    MFL 2.0 0.618 70.12 95.32 4.68 1.68
    MFL 5.0 0.618 68.11 94.50 5.50 1.56
    MFL 2.0 0.100 67.22 93.68 6.32 2.26
    MFL 2.0 0.300 69.03 94.88 5.12 1.56
    MFL 2.0 1.000 69.22 95.17 4.83 1.29
    MFL 2.0 2.000 68.81 94.35 5.65 1.68
    MFL 2.0 5.000 64.38 92.41 7.59 2.42
    下载: 导出CSV

    表  8  采用F-FPN的模型在不同模板上的泛化性分析 (%)

    Table  8  Generalization analysis of models using F-FPN on different templates (%)

    模板1模板2模板3模板4模板5模板6模板7模板8模板9模板10均值
    准确率95.8796.7999.6793.5691.7491.1193.6699.1298.2393.6595.34
    mAP69.1269.7375.3768.9767.4668.1268.2475.9676.8268.0270.78
    下载: 导出CSV

    表  9  采用FPN的模型在不同模板上的泛化性分析 (%)

    Table  9  Generalization analysis of models using FPN on different templates (%)

    模板1模板2模板3模板4模板5模板6模板7模板8模板9模板10均值
    准确率91.6391.0492.3890.3988.3488.1291.2591.7591.4289.1190.54
    mAP62.4361.7565.8662.0161.9961.0862.5165.6366.7461.4663.07
    下载: 导出CSV
  • [1] 张慧, 王坤峰, 王飞跃. 深度学习在目标视觉检测中的应用进展与展望. 自动化学报, 2017, 43(8): 1289-1305

    Zhang Hui, Wang Kun-Feng, Wang Fei-Yue. Advances and perspectives on applications of deep learning in visual object detection. Acta Automatica Sinica, 2017, 43(8): 1289-1305
    [2] Kumar A. Computer-vision-based fabric defect detection: A survey. IEEE Transactions on Industrial Electronics, 2008, 55(1): 348-363 doi: 10.1109/TIE.1930.896476
    [3] Chan C H, Pang G K H. Fabric defect detection by Fourier analysis. IEEE Transactions on Industry Applications, 2000, 36(5): 1267-1276 doi: 10.1109/28.871274
    [4] Hanbay K, Talu M F, Özgüven Ö F. Fabric defect detection systems and methods-a systematic literature review. Optik, 2016, 127(24): 11960-11973 doi: 10.1016/j.ijleo.2016.09.110
    [5] Chetverikov D, Hanbury A. Finding defects in texture using regularity and local orientation. Pattern Recognition, 2002, 35(10): 2165-2180 doi: 10.1016/S0031-3203(01)00188-1
    [6] Ngan H Y T, Pang G K H, Yung N H C. Automated fabric defect detection-a review. Image and Vision Computing, 2011, 29(7): 442-458 doi: 10.1016/j.imavis.2011.02.002
    [7] Yapi D, Allili M S, Baaziz N. Automatic fabric defect detection using learning-based local textural distributions in the contourlet domain. IEEE Transactions on Automation Science and Engineering, 2018, 15(3): 1014-1026 doi: 10.1109/TASE.2017.2696748
    [8] Ravandi S A H, Toriumi K. Fourier transform analysis of plain weave fabric appearance. Textile Research Journal, 1995, 65(11): 676-683 doi: 10.1177/004051759506501108
    [9] Escofet J, Garcia-Verela M S M, Abril H C, Torrecilla E. Inspection of fabric resistance to abrasion by Fourier analysis. In: Proceedings of the SPIE 3490, Optics in Computing'98. Bruges, Belgium: SPIE, 1998. 207−210
    [10] Zachevsky I, Zeevi Y Y. Model-based color natural stochastic textures processing and classification. In: Proceedings of the IEEE Global Conference on Signal and Information Processing (GlobalSIP). Orlando, USA: IEEE, 2015. 1357−1361
    [11] 李敏, 崔树芹, 谢治平. 高斯混合模型在印花织物疵点检测中的应用. 纺织学报, 2015, 36(8): 94-98 doi: 10.13475/j.fzxb.20140504105

    Li Min, Cui Shu-Qin, Xie Zhi-Ping. Application of Gaussian mixture model on defect detection of print fabric. Journal of Textile Research, 2015, 36(8): 94-98 doi: 10.13475/j.fzxb.20140504105
    [12] Allili M S, Baaziz N, Mejri M. Texture modeling using contourlets and finite mixtures of generalized Gaussian distributions and applications. IEEE Transactions on Multimedia, 2014, 16(3): 772-784 doi: 10.1109/TMM.2014.2298832
    [13] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks. In: Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe, USA: Curran Associates Inc., 2012. 1097−1105
    [14] Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition. In: Proceedings of the 3rd International Conference on Learning Representations. San Diego, USA: ICLR, 2015.
    [15] Szegedy C, Vanhoucke V, Ioffe S, Shlens J, Wojna Z. Rethinking the inception architecture for computer vision. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas, USA: IEEE, 2016. 2818−2826
    [16] Szegedy C, Ioffe S, Vanhoucke V, Alemi A A. Inception-v4, inception-ResNet and the impact of residual connections on learning. In: Proceedings of the 31st AAAI Conference on Artificial Intelligence. San Francisco, USA: AAAI, 2017. 4278−4284
    [17] Ioffe S, Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift. In: Proceedings of the 32nd International Conference on International Conference on Machine Learning. Lille, France: JMLR.org, 2015. 448−456
    [18] Szegedy C, Liu W, Jia Y Q, Sermanet P, Reed S, Anguelov D, et al. Going deeper with convolutions. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Boston, USA: IEEE, 2015. 1−9
    [19] He K M, Zhang X Y, Ren S Q, Sun J. Deep residual learning for image recognition. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas, USA: IEEE, 2016. 770−778
    [20] Huang G, Liu Z, Van Der Maaten L, Weinberger K Q. Densely connected convolutional networks. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Honolulu, USA: IEEE, 2017. 2261−2269
    [21] Cai Z W, Vasconcelos N. Cascade R-CNN: Delving into high quality object detection. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, USA: IEEE, 2018. 6154−6162
    [22] Tan M X, Pang R M, Le Q V. EfficientDet: Scalable and efficient object detection. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle, USA: IEEE, 2019. 10778−10787
    [23] Lin T Y, Dollár P, Girshick R, He K M, Hariharan B, Belongie S. Feature pyramid networks for object detection. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, USA: IEEE, 2017. 936−944
    [24] 周波, 李俊峰. 结合目标检测的人体行为识别. 自动化学报, 2020, 46(9): 1961-1970 doi: 10.16383/j.aas.c180848

    Zhou Bo, Li Jun-Feng. Human action recognition combined with object detection. Acta Automatica Sinica, 2020, 46(9): 1961-1970 doi: 10.16383/j.aas.c180848
    [25] 范家伟, 张如如, 陆萌, 何佳雯, 康霄阳, 柴文俊, 等. 深度学习方法在糖尿病视网膜病变诊断中的应用. 自动化学报, 2021, 47(5): 985-1004

    Fan Jia-Wei, Zhang Ru-Ru, Lu Meng, He Jia-Wen, Kang Xiao-Yang, Chai Wen-Jun, et al. Applications of deep learning techniques for diabetic retinal diagnosis. Acta Automatica Sinica, 2021, 47(5): 985-1004
    [26] 陈文帅, 任志刚, 吴宗泽, 付敏跃. 基于深度学习的极性电子元器件目标检测与方向识别方法. 自动化学报, 2021, 47(7): 1701-1709 doi: 10.16383/j.aas.c190037

    Chen Wen-Shuai, Ren Zhi-Gang, Wu Zong-Ze, Fu Min-Yue. Detecting object and direction for polar electronic components via deep learning. Acta Automatica Sinica, 2021, 47(7): 1701-1709 doi: 10.16383/j.aas.c190037
    [27] 吴高昌, 刘强, 柴天佑, 秦泗钊. 基于时序图像深度学习的电熔镁炉异常工况诊断. 自动化学报, 2019, 45(8): 1475-1485

    Wu Gao-Chang, Liu Qiang, Chai Tian-You, Qin S J. Abnormal condition diagnosis through deep learning of image sequences for fused magnesium furnaces. Acta Automatica Sinica, 2019, 45(8): 1475-1485
    [28] 张芳, 王萌, 肖志涛, 吴骏, 耿磊, 童军, 等. 基于全卷积神经网络与低秩稀疏分解的显著性检测. 自动化学报, 2019, 45(11): 2148-2158

    Zhang Fang, Wang Meng, Xiao Zhi-Tao, Wu Jun, Geng Lei, Tong Jun, et al. Saliency detection via full convolution neural network and low rank sparse decomposition. Acta Automatica Sinica, 2019, 45(11): 2148-2158
    [29] 李良福, 马卫飞, 李丽, 陆铖. 基于深度学习的桥梁裂缝检测算法研究. 自动化学报, 2019, 45(9): 1727-1742 doi: 10.16383/j.aas.2018.c170052

    Li Liang-Fu, Ma Wei-Fei, Li Li, Lu Cheng. Research on detection algorithm for bridge cracks based on deep learning. Acta Automatica Sinica, 2019, 45(9): 1727-1742 doi: 10.16383/j.aas.2018.c170052
    [30] Lin T Y, Goyal P, Girshick R, He K M, Piotr D. Focal loss for dense object detection. In: Proceedings of the IEEE International Conference on Computer Vision (ICCV). Venice, Italy: IEEE, 2017. 2999−3007
    [31] Yu J H, Jiang Y N, Wang Z Y, Cao Z M, Huang T. UnitBox: An advanced object detection network. In: Proceedings of the 24th ACM International Conference on Multimedia. Amsterdam, The Netherlands: ACM, 2016. 516−520
    [32] Çelik H İ, Dülger L C, Topalbekiroğlu M. Fabric defect detection using linear filtering and morphological operations. Indian Journal of Fibre and Textile Research, 2014, 39(3): 254-259
    [33] Ng M K, Ngan H Y T, Yuan X M, Zhang W X. Patterned fabric inspection and visualization by the method of image decomposition. IEEE Transactions on Automation Science and Engineering, 2014, 11(3): 943-947 doi: 10.1109/TASE.2014.2314240
    [34] Ren R X, Hung T, Tan K C. A generic deep-learning-based approach for automated surface inspection. IEEE Transactions on Cybernetics, 2018, 48(3): 929-940 doi: 10.1109/TCYB.2017.2668395
    [35] Çelik H İ, Dülger L C, Topalbekiroğlu M. Development of a machine vision system: Real-time fabric defect detection and classification with neural networks. The Journal of The Textile Institute, 2014, 105(6): 575-585 doi: 10.1080/00405000.2013.827393
    [36] Bissi L, Baruffa G, Placidi P, Ricci E, Scorzoni A, Valigi P. Automated defect detection in uniform and structured fabrics using Gabor filters and PCA. Journal of Visual Communication and Image Representation, 2013, 24(7): 838-845 doi: 10.1016/j.jvcir.2013.05.011
    [37] Li Y D, Zhao W G, Pan J H. Deformable patterned fabric defect detection with fisher criterion-based deep learning. IEEE Transactions on Automation Science and Engineering, 2017, 14(2): 1256-1264 doi: 10.1109/TASE.2016.2520955
    [38] Jing J F, Ma H, Zhang H H. Automatic fabric defect detection using a deep convolutional neural network. Coloration Technology, 2019, 135(3): 213-223 doi: 10.1111/cote.12394
    [39] Raheja J L, Ajay B, Chaudhary A. Real time fabric defect detection system on an embedded DSP platform. Optik, 2013, 124(21): 5280-5284 doi: 10.1016/j.ijleo.2013.03.038
    [40] Tao X, Zhang D P, Ma W Z, Liu X L, Xu D. Automatic metallic surface defect detection and recognition with convolutional neural networks. Applied Sciences, 2018, 8(9): Article No. 1575
    [41] He D, Xu K, Zhou P, Zhou D D. Surface defect classification of steels with a new semi-supervised learning method. Optics and Lasers in Engineering, 2019, 117: 40-48 doi: 10.1016/j.optlaseng.2019.01.011
    [42] Arikan S, Varanasi K, Stricker D. Surface defect classification in real-time using convolutional neural networks. arXiv preprint arXiv: 1904.04671, 2019.
  • 期刊类型引用(19)

    1. 李静,郑文斌. 基于上下文信息聚合YOLOv5的织物缺陷检测. 棉纺织技术. 2024(04): 30-39 . 百度学术
    2. 范蕊,孙羽菲,贾嘉玮,于川越,赵鑫凯,于智远,王萌,张玉志,罗纯. 一站式深度学习智能平台的设计与实现. 南开大学学报(自然科学版). 2024(01): 110-115 . 百度学术
    3. 邹宏睿,任佳,潘海鹏,周传辉. 基于改进YOLOv5s的轻量化布匹瑕疵检测算法. 浙江理工大学学报(自然科学). 2024(03): 389-398 . 百度学术
    4. 章曙光,刘洋,张文韬,王浩. 改进Tiny-YOLOv3的工业钢材瑕疵检测算法. 机械设计与制造. 2024(05): 97-101 . 百度学术
    5. 卢媛媛,张守京,郑林青,陈涛. 基于改进YOLOv5的织物瑕疵检测方法. 毛纺科技. 2024(05): 80-86 . 百度学术
    6. 于光许,张富宇. 基于改进Res-UNet网络的织物瑕疵图像识别方法. 毛纺科技. 2024(07): 100-106 . 百度学术
    7. 刘伟宏,李敏,朱萍,崔树芹,颜小运. 基于YOLOv8n改进的织物疵点检测算法. 棉纺织技术. 2024(10): 19-25 . 百度学术
    8. 王煜,齐宏拓,杨整涛,程柯帏,伍洲. 基于点云分层融合架构的混凝土气孔缺陷量化评估方法. 仪器仪表学报. 2024(07): 86-98 . 百度学术
    9. 赵玉香,段先华,赵楚. 一种基于级联RCNN的织物瑕疵检测算法. 计算机应用与软件. 2024(11): 241-246 . 百度学术
    10. 周明鑫,黄丽敏,赵英宝,武晓晶. 基于轻量化卷积神经网络的毛巾织物瑕疵检测方法. 河北省科学院学报. 2023(02): 29-38 . 百度学术
    11. 何思锐,张孙杰,王永雄. 融合多尺度特征的工业缺陷检测模型. 小型微型计算机系统. 2023(05): 1029-1034 . 百度学术
    12. 陈昌权,杨艳. 基于自适应距离度量的改进超像素算法. 电子设计工程. 2023(10): 1-5 . 百度学术
    13. 白明丽,王明文. 基于改进Cascade R-CNN的布匹瑕疵检测算法. 计算机科学. 2023(S1): 322-327 . 百度学术
    14. 姜金涛,丁坤,王志花,严向华,宋雅静,陈从平. 基于改进嵌入向量相似性的织物异常检测方法. 毛纺科技. 2023(06): 73-80 . 百度学术
    15. 孙浩东,周其洪,陈鹏,陈革,王水,王菡珠. 基于改进YOLOv5s的经编织物缺陷检测. 棉纺织技术. 2023(07): 46-52 . 百度学术
    16. 李辉,吕祥聪,申贝贝,陶冶,王俊印. 双路高分辨率转换网络的花色布匹瑕疵检测. 计算机工程与设计. 2023(09): 2731-2739 . 百度学术
    17. 索鑫宇,刘坚,张杰,金超群,周飞滔. 2D空间中线扫相机的静态标定方法. 激光与光电子学进展. 2023(22): 158-168 . 百度学术
    18. 吴志华,钟铭恩,谭佳威,许平平,赵昱廷. 复杂纹理布匹五类典型瑕疵图像检测算法研究. 电子测量技术. 2023(16): 57-63 . 百度学术
    19. 韩济阳,曹江涛,王贺楠,姬晓飞. 计算机视觉布料瑕疵检测方法综述. 辽宁石油化工大学学报. 2022(01): 70-77 . 百度学术

    其他类型引用(21)

  • 加载中
图(11) / 表(9)
计量
  • 文章访问数:  3557
  • HTML全文浏览量:  1013
  • PDF下载量:  493
  • 被引次数: 40
出版历程
  • 收稿日期:  2020-03-20
  • 录用日期:  2020-06-19
  • 网络出版日期:  2023-02-03
  • 刊出日期:  2023-04-20

目录

/

返回文章
返回