基于CNN网络的布料表面缺陷检测方法

2021-09-09 07:36熊昊石红瑞
现代计算机 2021年19期
关键词:布料阈值卷积

熊昊,石红瑞

(东华大学,上海 201600)

0 引言

布料缺陷检测对纺织品质量检测与控制而言相当重要。生成布料瑕疵的物质因素很多,面料织造环节、纺织技术因素,以及其他环境因素都有可能引起布料表面产生瑕疵[1]。在自动化或半自动化生产过程中,必不可少的一个环节便是对成品的缺陷检测,以提高良品率。在纺织行业,由于出现的故障导致产生量的废布使得厂家支出更大的成本而苦不堪言。在布料制造过程中,随着加工层次的增加,发生缺陷的几率也就随之升高,面对种类繁多的缺陷,如何将其高效且准确地检测出来是一个难题。

传统的布料检测方式大致可以分为两种:第一种检测方式是在布料织造的同时由工人检查是否产生了缺陷;第二种检测方式是由工人将做已经做好的布料送至验布机进行检测,对缺陷处进行识别和记录,并将产生的缺陷记录下来反馈到有关部门,以便对织机进行调整。传统的人工检测方式容易受到各种因素的影响,从而产生各种缺点与不足。从学习缺陷类别到操作检测,从生疏到熟练,从新手到熟练工,都需要时间的沉淀。而且即便是进阶到了熟练工,也敌不过生理、心理上的疲劳,致使检测效率大打折扣,人工成本较高的同时往往也无法取得较为理想的检测结果。

随着图像处理技术、模式识别技术和计算机硬件条件的高速发展,越来越多的企业选择用计算机视觉代替人工对产品的尺寸进行测量、产品的质量进行检测。和传统肉眼检测相比,通过计算机视觉检测对产品进行检测,不仅能够达到较高的检测精度,而且具有较快的检测速度。现在计算机视觉技术在产品缺陷检测方面已经得到国内外专家、学者的普遍关注和认可。

1 基于计算机视觉的目标检测方法分析

在深度学习算法普遍适用之前,视觉算法可以分为五个阶段:特征识别、图像预处理、特征提取、特征过滤、推理预测和识别。传统的计算机视觉识别方法是单独设计特征提取和分类器,然后在应用时结合。也就是说,对于输入图像,需要先执行特征表示或特征提取过程,然后将表示或提取的特征放入学习算法中进行分类,如图1所示。

图1 传统计算机视觉算法分类识别过程

上述的传统检测算法在一部分特定的应用场景中已经取得了不错的效果,但是依然存在着诸多不足之处,包括:图像预处理阶段步骤繁多,没有较强的针对性,鲁棒性较差、混合多种算法计算量较大,无法较为精确地对表面缺陷的形状与大小进行检测。

如今,计算机视觉已经成为深度学习技术的一个重要领域,随着计算资源的不断加速和成本的降低以及深度学习研究人员的不断努力,它已经取得了相当显著的成就。1998年,卷积神经网络(Convolutional Neural Network)模型[2]被提出。在缺陷检测算法方面,卷积神经网络针对传统算法存在的一部分问题给出了有效的解决方案,该算法具有强大的数据表达能力,可用于输入图像,其不需要输入分类特征,而是由图像数据集本身直接驱动其自身对特征与表达关系的深度学习,同时又具有训练参数少,模型构建过程简单,分类消耗时间短,准确性高等优点。

目前经典的目标检测算法网络模型大致可分为两大类:一类是单阶段(one-stage)算法,代表算法有YOLO、SSD等算法;另一类是双阶段(two-stage)算法,代表算法有R-CNN、Fast R-CNN、Faster R-CNN等算法。单阶段(one-stage)算法虽然在检测速度上优于双阶段(two-stage)算法,但由于不包含区域建议的模块,在检测的准确率方面会处于劣势。

虽然深度学习的检测方法在布料缺陷检测方面的效果有所提升,但是布料图像的复杂程度、缺陷处尺度较小以及缺陷形状不规则等因素都会影响模型检测的准确率。

2 算法实现

选用性能较为优秀的Cascade R-CNN网络模型,对布料图像数据集进行深度训练,调整检测网络的结构与参数,经过多轮迭代,检验模型的性能,最终得出准确率较高的检测模型。

2.1 Cascade R-CNN算法简介

Cascade R-CNN算法[3]是基于Faster R-CNN算法[4]改进的一种目标检测算法,其为了不断优化预测结果,级联了多个检测网络。Cascade R-CNN的一大亮点在于,其与普通级联有所区别,该算法的几个检测网络是在根据不相同的IoU阈值所确定的正负样本上训练所得到的。

Faster R-CNN算法在训练阶段,RPN网络会提出约两千个的区域建议,这些区域建议被送入到Fast R-CNN结构中,在Fast R-CNN结构中,首先计算每个区域建议和gt之间的IoU,通过人为的设定一个IoU阈值(通常为0.5),把这些区域建议分为正样本(前景)和负样本(背景),并对这些正负样本采样,使得他们之间的比例尽量满足1 ∶3,之后这些区域建议被送入到ROI池中,最后进行分类判别和box回归。

在推理阶段,RPN网络提出了约三百个区域建议,这些区域建议被送入到Fast R-CNN结构中,和训练阶段不同的是,推理阶段没有办法对这些区域建议采样,因此它们直接进入ROI池,之后进行分类判别和box回归。

为了提高检测的精确度,换句话说就是要产生更高精度的box,那么我们可以提高产生正样本的IoU阈值,这样后面的检测器接收到了更高精度的建议,自然能产生高精度box。但是这样就会产生两个问题:第一,过拟合问题:提高了IoU阈值,满足这个阈值条件的区域建议必然比之前少了,容易导致过拟合。第二,更严重的mismatch问题:R-CNN结构自身就存在这个问题,IoU阈值再提的更高,这个问题就会更加严重。

在训练与推理两个阶段中,bbox回归器的输入分布是不一样的,训练阶段的输入建议由于被采样过,IoU大于所设阈值,往往质量更高,而推理阶段的输入建议由于没有被采样过,可能包括很多IoU小于所设阈值的建议,一般质量相对会差一些,这就是上文提到mismatch问题,这个问题是固有存在的,通常阈值取0.5时,mismatch问题还不会很严重。因此,IoU阈值越高,mismatch的问题就越凸显了,更严重了。

由于单一阈值训练出的检测器效果有限,因此Cascade R-CNN采用multi-stage的结构,每个阶段都有一个不同的IoU阈值,其结构如图2所示。

图2 Cascade R-CNN结构图

大多数RPN所提出的建议质量较低,不能直接用于高阈值检测器,而该算法的重采样机制使用Cascade回归,使每个阶段的建议IoU阈值都得到提高,允许在前一阶段重新采用该建议,以适应更高的阈值。

2.2 FPN特征金字塔

特征图金字塔网络FPN(Feature Pyramid Networks)[5]通过简单地改变网络连接来解决目标检测中的多尺度问题,其大大提升了小目标检测的性能,并且原有模型的计算量基本没有增加。FPN算法的大体结构是:一条自下而上的线路,一条自上而下的线路,横向连接(lateral connection)。1×1卷积核的主要作用是减少卷积核的数量,即在不改变特征图大小的情况下减少特征图的数量。FPN网络放入区域建议网络RPN(Region Proposal Network)中用于生成建议,之前生成建议都是在某一个特征图中生成。如今在FPN中的每一层都可以生成不同尺度的建议。FPN算法同时利用低层特征高分辨率和高层特征的高语义信息,通过融合这些不同层的特征达到预测的效果。并且预测是在每个融合后的特征层上单独进行的,效果甚佳。

2.3 DCN可变形卷积

目标识别领域一直有一个关键性的挑战,即在识别过程中如何适应目标尺寸、姿态和部件变形等几何变化。而卷积神经网络模块固定的几何结构缺乏处理几何变换的内部机制。可变形卷积DCN(Deformable Convolutional Networks)[6]使用额外的偏移来增强模块中的空间采样位置,并在没有额外监督的情况下从目标任务中学习该偏移。它对标准的卷积中的感受野中,增加了2D的offsets,使得采样的grid变形。这个offset通过增加额外的卷积层,从之前的特征图中学习到。offsets是通过在特征图上增加一个卷积层来得到的。这个卷积核的尺寸与可变形卷积的尺寸一致。输出的offset fields有着与输入特征图一样的尺寸,通道维度2N与N个2D的offsets相关联。新的模块可以很容易地取代现有卷积神经网络中的对应模块,并且很容易使用反向传播端到端训练来形成新的可变形卷积网络。

3 实验

本文使用加入了FPN与DCN的改进Cascade R-CNN算法,主干网络为ResNet-50,编程语言为Python,在单卡NVIDIA Tesla V100(32GB显存)的设备上进行模型训练,batch size设置为22,迭代60000轮。与原本的Cascade R-CNN模型相比,改进后的模型在预测速度上有了明显的提升。模型训练的loss曲线如图3。

图3 模型loss曲线

模型的预测效果如图4。

图4 模型预测效果

4 结语

为了提高对于布料表面缺陷的检测能力,本文以Cascade R-CNN 模型为基础,提出加入FPN特征金字塔与DCN可变形卷积的改进,大大提高缺陷检测的精准度,并且提高了检测速度,模型综合性能不错。利用先进的人工智能之深度学习技术,设计和实现了一种针对布料表面缺陷检测的解决方案,可有效提高企业的生产效率,节约企业的用工成本。但是,本文所使用的布料图像数据集背景较为单一,基本均为纯色背景,后续可以使用带有花纹背景的布料图像数据集进行模型的训练,提高检测模型的泛化能力,以便更好地适应工业应用场景。

猜你喜欢
布料阈值卷积
基于全卷积神经网络的猪背膘厚快速准确测定
非平稳声信号下的小波变换去噪方法研究
智海急流(一)
基于图像处理与卷积神经网络的零件识别
土石坝坝体失稳破坏降水阈值的确定方法
非均匀光照下文本图像分割算法研究
基于深度卷积网络与空洞卷积融合的人群计数
利用迭代软阈值方法抑制恒时演化类核磁共振实验中的采样截断伪峰
洗水soft fabric
小裁缝