基于ContrastGAN的色织物缺陷检测

2022-11-15 06:08周新龙张宏伟2吴燕子陆帅张
棉纺织技术 2022年11期
关键词:特征向量编码器织物

周新龙张宏伟,2吴燕子陆 帅张 玥

(1.西安工程大学,陕西西安,710048;2.浙江大学工业控制技术国家重点实验室,浙江杭州,310027;3.北京理工大学医工融合研究院,北京,100081)

色织物因其纹理风格丰富多变,深受消费者的喜爱[1]。在织物的生产过程中,由于纺织设备故障、纱线质量等因素造成织物表面产生各种各样的缺陷,这将严重影响产品的质量与销量,使得产品利润减少45%~65%[2]。传统的人工目测方法易受主观因素、视觉疲劳影响,导致检测精度和效率低。同时现有的机器视觉方法大多只能适用于花形图案、纹理背景单一的织物缺陷检测,因此迫切需要研究一种普适性广、准确度高的自动检测方法来提高织物缺陷检测的准确性和效率。

基于机器视觉的织物缺陷检测算法主要有统计算法[3]、频谱算法[4]、基于模型的算法[5]。其中统计算法又分为灰度共生矩阵法[6]、自相关法[7]、形态学法[8]等,通过计算图像灰度出现的概率实现对图像纹理特征的准确描述。频谱算法主要有傅里叶变换[9]、小波变换[10]、Gabor特征法[11],可实现织物表面缺陷特征在空域和频域中的优化定位。模型算法主要有高斯马尔可夫随机场[12]、自相关模型[13]等,通过高斯核函数提取多重织物分型特征。由于色织物具有纹理随机性比较强、局部纹理背景排列结构堆叠多变等特点,传统算法不能很好地应用于色织物缺陷检测。因此研究色织物缺陷检测算法有着现实工程意义,同时面临着严峻的算法技术考验。

近年来,深度网络体系结构被广泛应用于织物缺陷检测问题中。在有监督深度学习领域,JING J F等人[14]将织物图像分解为若干图像块并标记,然后利用二阶微分求取图像块像素分割的最优值,完成织物疵点检测。周君等人[15]在YOLOv3的基础上,结合织物疵点尺寸和k-means算法对目标帧进行维数聚类,有效地降低了对灰布和格子布的误检率。然而在实际工业应用中,获取大量的缺陷样本进行人工标注来训练神经网络是非常困难的,这就使得缺陷的纹理细节特征并不能得到完全表达,无法对色织物缺陷进行准确定位。无监督深度学习缺陷检测的核心思想是通过训练大量的无缺陷样本图像,学会创建图像的低维表示,完成重构图像,并与原始图像进行分析比较实现缺陷检测。张宏伟等人[16]提出一种深度去噪卷积自编码器(Denosing Convolutional Auto-Encoder,DCAE)模型,已初步实现对简单色织物缺陷的快速检测和定位。MEI S等人[17]利用图像高斯金字塔的信息,构建了多尺度卷积去噪自编码器(Multi-scale Convolutional Denoising autoencoder,MSCDAE)模型,实现了对灰色图案织物检测,但是在检测色织物缺陷时容易出现过检的情况。张宏伟等人[18]还提出一种U型去噪卷积自编码器(U-shaped Denosing Convolutional Auto-Encoder,UDCAE),该网络结构紧凑、参数简约,可以完成织物图像全局深度特征提取,但对部分花形较为复杂的色织物图像缺陷检测仍然存在漏检、误检的问题。

本研究针对传统自编码器在复杂纹理背景下色织物缺陷检测漏检率、误检率高的问题,提出一种基于对比学习生成式对抗(ContrastGAN)的无监督检测方法。模型训练过程中,通过生成器和判别器完成色织物深层高维特征提取和全局视图特征表达。然后特征向量经多层感知器(MLP)二次映射到特征度量式隐空间中,进行正负实例向量与查询向量之间相似度的计算。在隐空间中引入对比学习,增强对正负例特征向量约束,减少无关特征信息参数和浮点计算,学习基于Patch图像内容的相关交互,建立重构图像的每个Patch区域与输入图像对应Patch区域的关联性,进一步提升主干网络的重构修复能力,最终结合数学形态学运算实现色织物缺陷区域的快速检测和准确定位。

1 基于ContrastGAN的模型训练

基于自监督的对比学习(Contrastive Learning)在2018年由CHEN T等人[19]提出,作为一种高效的视觉表示结构用于ImageNET数据集的分类。其主要思想是模型自动构造相似实例和不相似实例,通过对比学习得到像素级重构表示学习模型,使得相似实例在投影空间中距离拉近,不相似实例在投影空间中距离拉远。

自编码器相关研究表明,有缺陷图像的重构误差通常比无缺陷图像的重构误差大。这一特性说明输入图像与重构图像之间存在对应的像素联系。在对比表征学习领域,将这种关联性称为互信息,对比学习通过最大化输入输出互信息,增加输入图像与输出图像之间的关联性,使得输出图像的全局视图得到高效表征。

因此,为了有效提取色织物的深层特征信息,使得图像进一步得到重构修复,本研究构造了一种基于ContrastGAN的色织物重构模型,使用对比学习来最大化输入色织物图像Patch和输出色织物图像Patch之间的互信息,完成Patch级别色织物图像重构修复。该模型主要包含生成器、判别器、潜在特征空间对比学习框架3个部分,其中生成器又分为编码器Genc和解码器Gdec两个部分,模型的总体架构如图1所示。

图1 总体模型结构

在模型训练阶段,生成器的输入是256×256的三通道无缺陷色织物样本图像Real_A,通过4层卷积编码器进行深层高维特征提取后,为提升编码器对特征向量的容纳能力,采用残差块网络[20]延深编码器结构,进一步加快网络收敛速度,然后利用3层反卷积解码器完成图像重构修复,最终输出为与输入层尺寸相同的重构修复图像Fake_B。

潜在特征空间对比学习框架的结构如表1所示,由4层全连接层组成。原图像Real_A和重构修复图像Fake_B经过相同结构的编码器Genc得到Patch特征向量hi和hj,再通过映射头MLP将特征向量二次映射到潜在特征空间,得到特征向量对的矢量化表示v,然后对原图像和重构修复图像相对应的图像块特征向量求互信息,使得编码器学会将对应的图像块之间相互联系起来,与不相关的图像块分离,最后学习到原图与重构修复图对应图像块之间的深层共性。

表1 潜在特征空间结构

判别器结构采用PatchGAN[21]网络结构,由5层卷积层构成,最终输出32×32×1的感知域。PatchGAN通过局部感受野输出,降低图像深层特征信息重叠性,同时提升模型训练过程中的动态性和稳定性,实现局部图像特征的提取和多层特征图差异性表征。

为了使原始输入图像Real_A和重构修复图像Fake_B具有相似的内容和纹理风格外观特征,同时保证输入图像的结构不变,对判别器D采用对抗损失,如公式(1)所示。

图像Real_A和与其对应的重构修复图像Fake_B,在对应空间位置上的图像块应该具有相似的信息。Real_A和Fake_B经过编码器Genc后图像块特征向量分别被编码为v+、v-、vq,同时映射 到N个K维的矢量矩 阵 中,其中vq,v+∈RK,v-∈RN×K,再经过4层MLP将特征向量投影到一个共享的嵌入潜在特征空间,采用噪声对比估计框架,最大化vq和v+的互信息,最小化vq和v-的互信息,实现相同实例相似性最大化,不同实例相似性最小化,如公式(2)所示。

其中vq从重构修复图像Fake_B中随机生成,v+从输入图像Real_A中对应块生成,v-从Real_A中非对应块生成,其中τ为可调温度灵敏超参数[22],控制余弦相似度的范围为[-1,1],取0.07,使得训练的嵌入更加均匀分布。分别计算vq和v+、v-之间的余弦相似度,将vq和v+的相似度标记为1,将vq和v-的相似度标记为0,最后对特征向量对求Softmax交叉熵损失。

特征向量对要进行对比学习时,需要在潜在特征堆栈空间将重构图像Fake_B中的图像块和原图像Real_A对应的图像块相匹配,学会捕捉对应特征向量不变性,由PatchNCE[23]损失函数约束来实现,如公式(3)所示。

式中:l表示MLP层,l∈{1,2...,L},同时设置s∈{1,...,Sl},其 中Sl表 示MLP每 层 关 注Patch特征向量编码空间位置的个数。ẑsl表示每层特征向量空间中Patch特征向量总个数,将与vq对应的空间位置特征称为zsl正例,其他特征则称为zSsl负例。

最终总损失函数Ltotal如公式(4)所示。其中λx=1,λy=10,训练使得该损失函数最小化,从而最大化对应图像块特征向量互信息。

2 基于对比学习的缺陷检测

训练完成后,ContrastGAN模型即可用于色织物缺陷检测。测试阶段编码器的输出作为对比学习的特征表征,完成对色织物缺陷图像的修复重构,其中模型通过对比学习最大化编码缺陷图像与重构图像对应Patch细节特征,将模型的重构修复性能进一步提升,检测阶段模型图如图2所示。

缺陷检测具体步骤:

(1)将待测图像X输入训练完成的模型中,得到重构修复图像̂;

(3)残差图像Xres计算,如公式(5)所示;

(4)计算残差图像Xres的均值μ和标准差σ;

(5)对残差图像采用自适应阈值化处理,得到二值图像Xbinary,将缺陷区域更好地分割出来,二值化操作如公式(6)所示;

(6)对二值图像采用先腐蚀后膨胀的开运算操作,得到最终缺陷检测结果,如公式(7)所示。

式中:p代表残差图像的像素值;T为自适应阈值;ε为控制分割的灵敏度系数,本试验设置为3.0;Xopening为开运算操作后的图像;Xbinary为二值化后的图像;⊕、!分别为膨胀与腐蚀操作;E为结构元素。

3 试验

3.1 试验平台介绍

本试验所用的工作站硬件配置:CPU Intel(R)Core(TM)i7-6850K CPU(3.60 GHz),GPU NVIDIA GeForce GTX 1080 Ti(11 G),内存64 GB。软件环境配置:操作系统Ubuntu 16.04.6 LTS,深度学习框架PyTorch1.7,环境Python3.6.0和Anaconda3。

3.2 试验数据集

本研究选取张宏伟人工智能课题组整理并开源的YDFID-1色织物样本数据集,该数据集由19种不同花形的色织物组成,共包括3 830幅织物图像,其中无缺陷图像3 500幅,缺陷图像330幅。根据图案、背景纹理的复杂度分为3类:简单(Simple Lattices,SL)、条纹(Stripe Patterns,SP)和复杂(Complex Lattices,CL)。本研究选取该数据集中8种不同花形用于算法模型的训练和测试。数据集样本数量如表2所示,样本图如图3所示。

图2 检测阶段图

数据集SL11 SL16 SP3 SP5 CL1 CL2 CL3 CL21无缺陷样本数量/幅133 144 168 166 170 124 90 131缺陷样本数量/幅55 35 16 19 4 5 11 22

图3 色织物样本图像

3.3 评价指标

3.3.1 重构效果定量评价指标

为了评估本研究提出的ContrastGAN模型在训练完成后具备的重构修复能力,特采用峰值信噪比(PSNR)和结构相似性(SSIM)对模型训练后的重构修复结果进行定量分析。

PSNR值通常用于衡量图像经压缩后画质损失的程度,单位为分贝(dB),基于两张图像对应像素点间的误差计算得出,PSNR值越高代表图像经压缩后重构画质损失越小,计算公式如公式(8)、公式(9)所示。

式中:MSE表示无缺陷图像X与重构图像X̂的均方误差;m、n表示图像的宽和高;MAX表示数字图像X中像素可取的最大值。

SSIM基于局部图案的亮度、对比度进行计算,用来作为衡量两幅图像相似度的指标。SSIM值越高代表原图和重构图对应像素之间的关联性越强,图像结构性失真越小,计算公式如公式(10)所示。

式中:μX为原始无缺陷色织物图像X的像素平均值;μX̂为去噪重构图像̂的像素平均值;σ2XX̂为̂的标准差;σXX̂为X与X̂的协 方 差;C1=(k1L)2、C2=(k2L)2是 用 来 保 持 恒定的常数,其中k1=0.01、k2=0.03,L为像素值的动态范围。为X的标准差;σ2

3.3.2 检测效果定量评价指标

为了精确地对模型的缺陷检测能力进行评价,本研究对试验检测结果分别进行定性分析和定量分析。其中定量分析引入织物像素级评价指标中的精确率(P)、召回率(R)、平均交并比(IoU)作为评价指标,P、R、IoU定义如公式(11)~公式(13)所示。

式中:TP表示缺陷区域中被成功检测的像素个数;FN、FP表示缺陷区域、无缺陷区域被错误检测的像素个数。

3.4 结果与分析

3.4.1色织物重构结果定量分析

为评估不同检测模型对色织物图像的重构修复能力,本研究计算色织物与其对应的重构图像之间的PSNR值、SSIM值,同时将本研究所提出的模型分别与DCAE、MSCDAE、UDCAE模型在8个数据集上进行PSNR、SSIM值的对比。结果如表3所示。从表3中可以看出,ContrastGAN模型在SL16、SP3、CL1、CL2、CL3、CL21中有着最高的PSNR值,只有SL11、SP5这2个数据集上的PSNR值分别低于DCAE和MSCDAE模型。在SL11、SP3、SP5、CL3数据集上,SSIM指标值略低于传统自编码器模型。PSNR与SSIM的值越高,代表着缺陷图像重构修复的效果越好,残差图像的计算结果越准确。因此总体上看,ContrastGAN模型对色织物的重构能力相比DCAE、MSCDAE、UDCAE模型有更好的表现。

3.4.2 色织物检测结果定性分析

4种模型的定性分析对比如图4所示。图4中的第1行为原始织物缺陷图像,第2行为缺陷图像的真值图,第3行至第6行分别为DCAE、MSCDAE、UDCAE、ContrastGAN的缺陷检测结果。对于SL11、SL16、SP3、SP5,DCAE、MSCDAE、UDCAE、ContrastGAN都能有效地检测出缺陷在织物中的位置,但是MSCDAE对缺陷的形状描述不准确,存在大量的漏检,检测效果较差。对于CL1、CL2、CL3、CL21这4种背景纹理较为复杂的,DCAE、MSCDAE、UDCAE均存在漏检或者误检的情况,而且还会产生多余的噪声,不能对真实缺陷区域定位进行精确描述。本研究提出的ContrastGAN模型,不仅可以准确凸显缺陷位置,还可以保留部分轮廓信息勾勒出各类缺陷的形状,结果与真值图相似度高。综上所述,本研究提出的ContrastGAN模型对色织物缺陷检测效果明显优于DCAE、MSCDAE、UDCAE模型,能更准确地定位缺陷位置,对缺陷区域轮廓和连续性的描述更完整。

图4 4种模型的定性分析对比

3.4.3色织物检测结果定量分析

为了更精确地对比各个模型的缺陷检测能力,采用图片像素级评价指标中的精确率(P)、召回率(R)、平均交并比(IoU)作为评价指标,结果如表4所示。

表4 4种模型的定量分析

对表4中的数据进行分析发现,在SL11数据集上,DCAE的各项评价指标均较高,说明DCAE较为适用于简单的检测;在SP5数据集上,UDCAE的各项指标均较高,检测结果表现得更好一些。但是在较为复杂的CL1、CL2、CL3、CL21这4个 数 据 集 上,ContrastGAN相 较 于DCAE、MSCDAE、UDCAE模型在各项评价指标上更具有优势,表明加入了对比学习后,ContrastGAN在隐空间学习到的特征表征能力更强,能够最大化保证隐空间中特征向量对之间的相似性,增强复杂原图像与重构图像对应Patch间的内容映射,从而提升模型的缺陷检测能力。ContrastGAN模型更适用于背景纹理较为复杂的色织物缺陷检测,引入对比学习后模型在复杂数据集上具有更好的可靠性和更高的检测精度。

4 结论

本研究提出了一种新的基于对比学习的色织物缺陷检测方法,利用Patch特征向量表征在隐空间中完成色织物样本图像与重构图像对应Patch特征向量对的相似度计算,借助残差块保留编码器各层特征信息的独特结构,提升对比学习在重构模型中的效果。对8个色织物数据集的缺陷检测结果进行定性定量评价分析,证明ContrastGAN模型优于当前基于卷积自编码器的色织物图像检测方法,对纹理、背景复杂的色织物缺陷数据集具有更好的重构修复效果和更高的缺陷定位精度。但是Patch正负例特征向量的映射编码和相似度计算工作仍然比较耗时,下一步工作的重点在于减少对比学习重复无关特征向量对的数量,以增加正样本实例特征向量的多样性,提升正样本有效采样,从而实现对比学习网络模型轻量化。

猜你喜欢
特征向量编码器织物
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
融合CNN和Transformer编码器的变声语音鉴别与还原
无Sn-Pd活化法制备PANI/Cu导电织物
《丝绒织物》等103项纺织行业标准发布
克罗内克积的特征向量
《纺织品织物折痕回复角的测定》正式发布
设定多圈绝对值编码器当前圈数的方法
竹纤维织物抗菌研究进展
转炉系统常用编码器选型及调试
舞台机械技术与设备系列谈(二)
——编码器