APP下载

双端输入型嵌套融合多尺度信息的织物瑕疵检测

2023-06-25曲皓狄岚梁久祯刘昊

南京大学学报(自然科学版) 2023年3期
关键词:瑕疵分支纹理

曲皓 ,狄岚* ,梁久祯 ,刘昊

(1.江南大学人工智能与计算机学院,无锡,214000;2.常州大学计算机与人工智能学院,常州,213164)

织物瑕疵检测在纺织工业生产过程中有至关重要的作用,随着产业链升级,生产线产生的瑕疵类型越来越多,缺陷和背景纹理的区分度也越来越低,需要泛化能力更强的算法,在复杂多变的检测环境下仍能保持稳定的精度.已有的织物瑕疵呈多态性,主要分污渍类瑕疵和破损类瑕疵.污渍类瑕疵与背景纹理在颜色空间上有明显区别,但过度关注颜色特征会导致高梯度纹理区域的误判.破损类瑕疵和背景纹理存在高度内在相似性,有时会相互穿插而导致边缘预测不够准确,这一直都是该类瑕疵的检测难点.

1 相关工作

传统织物瑕疵的检测方法主要分四种:基于模型的方法[1]、低秩分解方法[2-3]、局部最优方法[4]和视觉显著性方法[5],但这些方法执行复杂纹理类型的瑕疵检测任务时检测精度较低.传统检测方法需要对简单纹理织物进行单独建模,而基于深度学习的方法可以对复杂纹理织物进行统一建模,降低了成本,提高了检测效率.基于深度学习的检测方法在过去几年得到了很大的发展,基于深度学习的织物瑕疵检测方法不仅在周期性简单纹理织物中的检测效果十分理想,对复杂纹理织物的瑕疵也有较高的检测精度.

Liu et al[6]提出一种多阶段GAN(Generative Adversarial Networks)框架来应对迭代快速的新型面料:第一阶段,GAN 在新的无缺陷样品中生成合理的瑕疵来更新数据集,在此基础上改进语义分割网络完成第二阶段的织物瑕疵检测任务.Chen et al[7]提出基于遗传算法的Gabor Faster R‐CNN 用于显著性织物瑕疵检测,能较好地减少纹理干扰,但对于复杂纹理中的低显著性瑕疵检测,效果不理想.Jing et al[8]将Mobile‐Unet 用于织物瑕疵检测来解决实际工业中不同种类瑕疵因数量差异导致的数据不平衡问题,但容易对梯度较大的无瑕纹理区域产生误判.现有的深度学习方法针对复杂纹理织物中的不规则瑕疵依然存在边缘检测模糊和纹理区域错检问题.

现有的织物瑕疵检测算法通常借助预训练好的模型(如VGG‐16[9],ResNet‐18(34,50,101)[10],Dense‐169[11]等)作为骨干网络来提高模型的收敛速度和检测精度.近年的研究表明[12-14],多尺度信息可以更好地提取不同尺寸瑕疵的特征,有助于提高瑕疵检测的精度.自注意力机制具有较强的全局建模能力,Transformer[15]被广泛应用在计算机视觉领域中.Dosovitskiy et al[16]提出vision Transformer,在各大目标检测数据集上取得了不错的效果.Liu et al[17]提出基于转换窗口的Swin Transformer,在COCO 数据集上的检测效果十分优异.Tian et al[18]串联Swin Transformer 和特征金字塔,搭建双向对象‐上下文优先排序模型,将Swin Transformer 作为检测任务的骨干网络.

许多研究者更关注特征融合方式的效能.Lin et al[19]构造了一种自顶向下、带有横向连接的特征金字塔来构建多个尺度的深层语义特征.Hou et al[20]提出DSSNet,对深层的输出先上采样,然后拼接浅层的输入,以短连接的方式集成多层次特征.Zhao et al[21]在PSPNet 中设计了Pyra‐mid Pooling Module,聚合不同区域的上下文信息来提高网络获取全局信息的能力.上述方法采用单分支骨干网络,通过添加深层模块捕获全局特征.但在深层网络中,局部特征冗余容易引起瑕疵边缘的错误预测,全局特征稀疏容易引起背景区域的错检.在面对复杂纹理样本时,由于解码块不能很好地从特征图中筛选出瑕疵,很容易对高梯度纹理区域判断错误,使误检率升高.

许多研究受焦点损失[22]的启发,更关注边界像素以及显著性特征图中的模糊像素判断[23-24].通过分配更高的权重来增大这些模糊像素的占比,这在理论和技术上确实令人信服,但不是所有的模糊像素都在边界附近.最近的研究[25]指出,深度网络预测存在两种困境,即高置信度但不准确的预测以及低置信度但准确的预测.

为了克服数据不平衡引起的边缘预测模糊的问题,Tu et al[26]提出SEAL function,将交叉熵与分割错误的超像素联系起来,在计算损失值时对分割错误的像素值赋予更大权重.Jiang et al[27]提出多标签损失函数来弱化数据不平衡的影响,将模型的输出经Softmax 归一化后,再通过Sigmoid函数将输出映射到[ 0.5,1 ],但这样会弱化偏离像素对损失值的贡献,大大影响模型的收敛速度.

以上大部分改进损失函数的方法都采用外部加权的方式,目的都是增加错误预测像素损失值的贡献,引导模型沿正确方向迭代.值得注意的是,若过度地增大错误预测像素的损失贡献,容易混淆瑕疵和背景交界区域,进而陷入局部最优,导致高梯度纹理区域的错检.

为了解决上述问题,本文提出融合双路多尺度信息的网络模型(WNet)用于复杂纹理织物的瑕疵检测.为了提高训练速度,采用预训练的ResNet‐18(RBlock‐0~4)作为骨干网络左分支.为了降低深层网络中背景特征对瑕疵特征的干扰,采用预训练的Swin Transformer(STBlock‐1~4)作为骨干网络右分支,借助自注意力机制出色的全局建模能力在卷积深层网络中补充全局上下文信息.为了减少深层网络中瑕疵细节信息丢失,提出一种轻量级双分支池化金字塔(Dual‐Branch Pooling Pyramid,DBPP)将浅层多尺度细节特征引入深层模块.特征融合阶段,在双分支池化金字塔的基础上设计新的特征融合模块,即多尺度嵌套双分支模块(Multiscale Dual‐Branch Nested Module,DBN).最后,为了降低高梯度纹理区域的误检率,对二元交叉熵损失函数进行改进来提高最终的检测精度.

本文的主要创新:

(1)提出一种双端输入型网络框架WNet,用两个预训练的骨干网络分别提取多尺度局部和全局特征.提出由DBPP,RBlock‐0 及其相应特征融合模块构成的瑕疵特征增强器,将低级多尺度细节特征导入最终的特征融合模块,降低瑕疵细节信息损失,提高瑕疵边缘预测的准确性.RBlock‐1~4,STBlock‐1~4 及其对应的特征融合模块组成纹理特征过滤器,在卷积深层网络中补充全局上下文信息,为特征融合模块提供更丰富的纹理特征信息,有利于特征融合模块对高梯度纹理特征中的瑕疵特征进行甄别.最后,将全部尺度特征融合器输出的特征图融合,获得预测图像.

(2)为了减少深层网络中瑕疵细节信息的缺失,提出一种轻量化双分支池化金字塔,以较少的计算消耗在深层网络中引入多尺度低级细节特征.在特征融合阶段,为了进一步提炼、甄别、增强输入特征,筛选高梯度纹理特征及瑕疵特征,通过嵌套DBPP 构建特征融合器DBN.每一尺度的特征融合模块都融合多个感受野范围内的信息,为最终的输出融合模块补充更全面的上下文信息.

(3)用改进二元交叉熵损失函数WGBCE Loss 进行深度监督,在四个瑕疵数据集上进行综合评估,并与其他最先进的方法进行比较.WNet在所有测试数据集上的综合评价指标均较优,尤其是fmeasure、阳性预测率和阴性预测率较高.

2 融合双路多尺度信息的织物瑕疵检测方法

以预训练的骨干网络作为编码器能极大地提高模型的收敛速度和检测精度,但低尺度特征提取模块信息来源单一,下采样过程中细节信息的丢失会影响深层全局上下文信息的提取,在网络深层模块中会出现局部特征冗余和全局特征稀疏的问题,大大影响瑕疵边缘的预测精准度以及高梯度纹理区域的判断.因此,本文提出一种融合双路多尺度信息的织物瑕疵检测方法WNet.

2.1 WNet 模型架构本文提出一种网络架构思想:以n个不同骨干网络作为支撑,使用一个特征融合器对多种不同空间内的特征信息进行融合、筛选.依赖多阶段的损失函数对不同阶段给予不同的损失权重和计算方式,引导各阶段的迭代趋向.理论上可以根据任务类型设置n个骨干分支来实现多端输入,但是具有多骨干分支的架构过于复杂,对特征融合器的过滤能力要求较高,还会带来高昂的计算开销.因此,针对织物瑕疵检测,本文采用双端输入的网络模型WNet.

WNet 由瑕疵特征增强器和背景特征过滤器构成(图1).DBPP,RBlock‐0 及其相应特征融合模块组成瑕疵特征增强器.卷积浅层网络中蕴含丰富的细节特征,将原始多尺度细节特征引入最后的特征融合模块来减少瑕疵细节信息的损失,提高瑕疵边缘预测精度.消融实验去除DBPP的fmeasure降低了0.95%,RBlock‐1~4,STBlock‐1~4及其对应的特征融合模块组成背景特征过滤器.在卷积深层网络中补充全局上下文信息可以为特征融合模块提供更丰富的纹理特征信息,有利于特征融合模块对高梯度纹理特征中的瑕疵特征进行筛选.消融实验中不使用ST 骨干分支,检测精度降低了6.67%.在特征融合阶段,各级模块在损失函数引导下生成各个阶段的输出特征图.所有特征图首先上采样至原始分辨率,然后进行最终融合,生成最终的预测图像.

图1 WNet 的网络结构Fig.1 The architecture of WNet

为了以较低的计算成本捕获多尺度不同感受野的特征信息,本文设计了轻量化的DBPP,在此基础上搭建DBN.DBN 作为特征融合模块能较好地筛选瑕疵特征,2.2 将详细介绍模块构成.瑕疵特征增强器的两个输出特征图和背景特征过滤器的四个输出特征图首先被采样至输入图像分辨率,再经过融合模块生成预测图像.

为了提高预测置信度,将高斯概率分布权重WG赋予二元交叉熵损失函(BCE Loss),提高瑕疵检测精度.在消融实验中,使用WGBCE Loss的fmeasure比标准BCE Loss 提高0.79%.假设x为原始输入图像,则WNet 可以概括为式(1):

其中,DBN()0为0 级嵌套双分支模块,ResidualW为剩余W结构的输出特征图,⊕为拼接融合.

2.2 双分支嵌入特征融合模块

2.2.1 双分支池化金字塔浅层高分辨率特征图保留了瑕疵的边缘、形状、大小等丰富的局部信息,而局部特征提取的充分性决定了预测图的细节呈现,进而决定检测精度的上限.若特征提取模块太关注局部信息,忽略全局信息,容易引发纹理像素点及区域的误判,可以通过大核卷积堆积或者扩张卷积的方式关注全局信息.如图2 所示,假设原始特征图的高为H,宽为W,中心像素点(H/2,W/2)需要与顶点(1,1)(1,W)(H,1)和(W,H)的特征信息进行交互,一般采用卷积层堆叠或空洞卷积池化金字塔(Atrous Spatial Pyra‐mid Pooling,ASPP[14])的方式.图中紫色块代表中心像素点,红色块代表边缘目标像素点,蓝色块代表3×3 卷积核的感受野,黄色块代表膨胀倍率为2 的3×3 卷积核的感受野,虚线表示当前颜色卷积核的已捕获信息的范围.

表3 本文算法和对比方法在ZJU⁃Group 3 上的定量实验结果的比较Table 3 Quantitative experimental results of our model and other models on ZJU⁃Group 3

表4 本文算法和对比方法在ZJU⁃Group 4 上的定量实验结果的比较Table 4 Quantitative experimental results of our model and other models on ZJU⁃Group 4

图2 DBPP 模块与ASPP 模块以及卷积堆叠的对比Fig.2 Comparison of DBPP module with ASPP module and convolutional stacking

如图2a 所示,普通的卷积层堆叠方式,需要不断地堆叠层数,渐进式地学习全局上下文信息,如式(2)和式(3)所示:

使用ASPP 中的多倍率池化卷积方式,如图2b 所示,以最大倍率为H/2 的空洞卷积即可学习全局信息,如式(4)所示:

其中,D表示卷积空洞倍率.为了加强不同空洞倍率感受野内特征信息的交互性,往往需要增加多个不同倍率的空洞卷积层.但由于高倍率空洞卷积要保证输出特征图的尺寸与原始特征图相同,边界处的卷积操作添加了过多填充,这不仅引入了过多的噪声,而且提升了该模块的参数量.

为解决上述问题,本文提出双分支池化金字塔DBPP.如图2c 所示,通过池化融合邻域内四个像素的特征信息,同时降低特征图大小.这种操作可以极大地降低模型运算量,双分支分别采用3×3 卷积和3×3dilation=2卷积,保证感受野范围均匀扩大.对每一幅原始特征图P(H,W)先进行一次池化,再进行两个分支的卷积,如式(5)所示:

2.2.2 嵌套双分支模块通过嵌套DBPP 实现的多尺度嵌套双分支模块(DBN)如图3 所示,主要用于解码阶段的特征融合,也用于浅层高分辨率特征图的细节特征提取.

图3 多尺度嵌套双分支模块结构图Fig.3 Multiscale dual⁃branch nested module

DBN 的形状类似二叉树,是编解码结构的特征提取模块.两个特征提取分支关注不同感受野中的局部信息,可对原始特征图的局部信息进行交叉验证.通过与原始分支的融合,类似给原始特征图赋予空间注意力机制,起瑕疵增强的作用.最后一个融合输出加在原第一层卷积层上,求出当前模块输出.假设x为原始输入图像,则经过DBN 处理后的输出概括为:

其中,f代表Conv,代表第一级左分支处理后的特征图,表示第一级右分支处理后的特征图.

多尺度嵌套双分支模块的编码层深度Ln的上限由输入图像的尺寸决定,该模块的参数量会随着中间层数M的增大而增大.图4 展示了嵌套双分支模块与其他先进的特征提取模块FLOPs(Floating‐Point Operations per Second)的比较.将256×256×3 的输入特征图转换为256×256×64 的输出特征图,计算中间通道数M从32到1024 的每个特征提取模块的成本.由图可见,DBN 的FLOPs 随着中间通道数的增大,增长速度慢于其他的特征提取模块.本文将双分支嵌套模块作为解码阶段的特征融合器,每个尺度采用不同深度的DBN,在增加网络深度的同时不会显著提高计算消耗.

图4 不同模块随中间通道数变化的FLOPsFig.4 The FLOPs of different modules changing with the number of intermediate channels

2.3 改进二元交叉熵损失函数置信度偏低的预测在织物瑕疵检测任务中十分常见,特別是在瑕疵与高梯度纹理的交界处.损失函数的目的是缩小预测值和实际值之间的差异,即提高预测置信度.损失函数可以总结为:

其中,L为理想预测约束(损失函数值),P为预测图,G为Ground Truth,c为预测置信度,i,j分别表示图像的横纵坐标,M为真实值为0 但预测值不为零的像素点数量,N为真实值为1 但预测值不等于1 的像素点数量.理想状态下L=0,实际上高置信度(0.5

针对上述问题,本文在标准二元交叉熵损失函数的基础上进行改进,通过高斯概率分布权重WG赋予偏离Ground Truth 的预测更大的损失贡献.为了减少假阳性和假阴性预测,利用F误差平滑损失函数曲线,使显著性预测图更偏向真阳性和真阴性预测.损失函数的定义如下:

其中,K表示像素个数,μ=0.5,σ=0.2,λ=0.1,σ和λ的取值由参数消融实验确定.本文沿用多阶段损失计算方式[28-29],WNet 包含六个尺度的输出和一个最终融合输出,将每个阶段的WG⁃BCE Loss 相加作为总的损失函数:

其中,s代表多阶段输出.图5 展示了WGBCE Loss 与其他改进的BCE Loss 在相同预测值下的损失函数值的比较.递减曲线的Ground Truth 为1,递增曲线的Ground Truth 为0.

图5 WGBCE Loss 与其他损失函数的可视化比较Fig.5 Visual comparison of WGBCE loss with other loss functions

由图可见,预测值趋近标签值的范围在[ 0.15,0.6 ],WGBCE Loss 的敏感性显著优于BCE Loss 和Closs,在[ 0.6,0.8 ],WGBCE Loss 的梯度最平滑,可以规避局部最优的产生.改进后的损失函数可以提高预测置信度,提高检测精度.

3 实验与结果分析

实验配置:PyTorch 1.9.1,cuda 11.0,Python 3.7,基于PyTorch 深度学习框架构建网络模型;处理器为CPU 5600x @ 4.6 GHz,GPU NVIDIA 3060 ti,显存8 G,内存16 G.五个DBPP 的中间通道数为[ 8,16,32,64,128 ],DBPP 左右分支卷积核大小都为3,右分支空洞卷积倍率为2.学习率设置为10-4,使用Adam 算法训练模型.

3.1 数据集使用浙江大学构建的织物瑕疵数据集ZJU‐Leaper[30],它由19 种不同纹理类型的98777 张织物图组成,带有详细的注释.选用前15种复杂纹理织物的18855 张瑕疵样本,图6 展示了15 种织物样本的图片.织物样本按纹理复杂度被分为四个组,命名为Group 1~4.第一组包含White Plain,Thick Stripe,Thin Stripe;第二组包含Dot Pattern,Houndstooth,Gingham,Knot Pat‐tern;第三组包含Twill Plaid,Blue Plaid,Brown Plaid,Gray Plaid,Red Plaid;第四组包含Floral Print1,Floral Print2,Floral Print3.为了提高训练速度,将图像尺寸压缩至256×256 构成新的数据集,按9∶1 的比例将数据样本分为训练集和测试集.实验中,输入图像首先缩放至320×320,然后随机裁切为224×224,再随机经过旋转、镜像、翻转操作进行图像增强.

图6 ZJU⁃Leaper 数据集中四组织物15 种背景纹理的示例图像Fig.6 Example images for 15 patterns of four groups of ZJU⁃Leaper dataset

3.2 评价指标使用fmeasure[31]进行评价:

具体的几个指标:Precision为查准率,即阳性预测率(Positive Predictive Value,PPV);Recall为查全率,即真阳性率(True Positive Rate,TPR);假阳性率(False Positive Rate,FPR),即误检率;阴性预测率(Negative Predictive Value,NPV).另外,依据参考文献[3],将γ设置为1.

显然,fmeasure综合考量了TPR和PPV.fmeasure,TPR,PPV,NPV越高,FPR越低,说明该方法的瑕疵检测性能越好.为了综合评估本文的模型并排除低置信预测的影响,添加另外三个指标,分别为MAE,PR 曲线和ROC 曲线.

MAE:预测值和Ground Truth 像素差值的绝对值之差的平均值,定义为:

MAE越小,说明预测值与真值偏差越小.

PR 曲线:给定一个预测的概率图,通过0~255 之间的不同阈值进行二值掩码,并与Ground Truth 进行比较,计算Precision和Recall,可以绘制PR 曲线.

ROC 曲线:纵轴是TPR,横轴是FPR,当数据集中的阳性和阴性样本分布不均时,ROC 曲线比PR 曲线更能保持稳定.

3.3 定量比较将WNet 与其他先进方法进行比较,分别为PicaNet[32],F3Net[24],U2Net[29],GCPA‐Net[33],SCWS[34],DDNet[35],RCSB[25].表1~4 列出了四个数据集上七个评价指标的实验结果,表中黑体字表示结果最优.所有算法中,分组训练模型的检测精度普遍高于整体训练模型,这个结果也符合经验判断.

许多方法对瑕疵边缘产生了大面积的误判,使TP(预测值和真实值同为正例)和FP(预测值为正例,真实值为负例)显著升高,一定程度上提高了TPR.高梯度纹理区域的误检也会提高FP,使NPV提升缓慢甚至下降.例如,SCWS 和F3Net的TPR较高,NPV和fmeasure较低,尤其是MAE显著高于其他方法,说明这些方法在织物瑕疵区域和纹理区域产生了大量的错误判断.后续的定性比较实验也证实部分方法产生了大量的漏检和误检.

由表1~4 可见,本文方法WNet 没有显著降低运算速度,在四个测试数据集上的七个评价指标均表现了良好的竞争性能.与其他先进方法相比,在四个测试数据集上,WNet的fmeasure,PPV和NPV都比较理想.WNet 在Group 1 和Group 2 中的性能最出色,fmeasure,PPV和NPV均显著高于其他方法.在纹理较复杂的Group 3 和Group 4上,各种方法的性能均有一定程度的下降,但WNet的综合性能依旧比较理想.尽管WNet 的运算速度稍慢于GCPANet,但其泛化能力有利于其应用于较复杂的检测环境.

表1 本文算法和对比方法在ZJU⁃Group 1 上的定量实验结果的比较Table 1 Quantitative experimental results of our model and other models on ZJU⁃Group 1

表2 本文算法和对比方法在ZJU⁃Group 2 上的定量实验结果的比较Table 2 Quantitative experimental results of our model and other models on ZJU⁃Group 2

图7是本文方法和对比方法的PR 曲线和ROC曲线.由图可见,WNet 的曲线十分平滑,在大部分数据集中都涵盖了其他模型的曲线,说明WNet 的结果更接近二元预测.值得注意的是,由于SCWS 的输出特征加强模块过分增强了预测的置信度,所以其ROC 曲线出现了过短的情况.

图7 各个方法的PR 曲线(上一行)和ROC 曲线(下一行)对比Fig.7 PR curves (up) and ROC curves (down) of each method

表5 各个方法的大小、运算量、参数量和泛化能力的对比Table 5 Model size,GFLOPs,parameters and general⁃ization ability of each model

由表可见,在保证模型泛化能力的基础上,WNet 没有显著增加计算消耗,模型运算量和参数量都较低.与其他方法相比,WNet 相对轻量化,模型保存也仅需113 M.对比其他方法,WNet的fˉ最高,为74.79%,进一步证明WNet 对多种织物纹理瑕疵的泛用性.超轻量模型DDNet 也预示WNet 有很大的参数优化空间,这也是下一步的研究方向.

3.4 定性比较可视化对比如图8 所示.由图可见,F3Net 和GCPANet 尽管其TPR和PPV相对高于其他方法,但这两种方法出现了大规模的边缘模糊,也存在大规模的高梯度纹理区域的误判,造成其MAE显著高于其他方法.

图8 WNet 与其他方法的定性比较Fig.8 Qualitative comparison of WNet with other methods

SCWS 会强迫融合关联特征,它的预测图置信度过高.如图8 中第二行和第六行所示,SCWS将大面积的瑕疵边缘纹理误判为瑕疵,一定程度上提高了TP 进而影响了评价指标TPR.第三行中,低显著性褶皱类瑕疵与纹理的关联度很高,SCWS 特征融合模块会过滤瑕疵特征,因此出现了大面积的漏检.

WNet 比U2Net,DDNet,F3Net 的边缘过渡更清晰,且预测置信度更高.与其他方法相比,WNet 能充分过滤背景纹理特征,提取更多的织物细节特征.在第二行和第六行,WNet 没有对无暇区域产生大面积误判.综上可见,WNet 可以产生细节丰富的特征预测图.

3.5 消融实验为了验证本文提出的双端输入、各个模块以及改进的损失函数的有效性,在ZJU‐Group 4 数据集上进行消融实验,表6 展示了各个方法的定量比较,表中黑体字表示结果最优.其中,Bce 和WgBce 分别表示采用Bce Loss 和Wg‐Bce Loss 进行监督训练,R&S_Pret 表示双路骨干网络载入预训练参数,NoPret 表示骨干网络不载入预训练参数.在编码阶段,Res&ST 表示使用双路骨干,+ASPP 表示使用ASPP 作为细节补充模块,+DB 表示使用嵌套双分支作为细节补充模块.在解码阶段,ASPP 和DB 分别表示将ASPP 和嵌套双分支模块作为解码模块,SBP 代表使用单分支普通池化模块,验证嵌套双分支模块的分支有效性.由表可见,使用单个残差分支的fmeasure为68.19%,使用单个Swin Transformer分支的fmeasure为68.23%,对比双路分支的fmeasure,分别降低6.67%和6.63%,证明了本文双骨干分支的有效性.将WNet 中的DBN 模块改用ASPP 替代初级特征提取模块和解码模块,fmeasure分别降低0.93%和1.93%.另外,U2Net 使用WGBCE Loss的fmeasure提升0.36%,WNet 使用WGBCE Loss的fmeasure提升0.79%,说明本文提出的WGBCE Loss损失函数是有效的.

表6 损失函数、DBN 模块以及连接方式在ZJU⁃Group 4 上的消融研究Table 6 Ablation study for Loss function,each module and hybrid connection on ZJU⁃Group 4

因为ZJU‐Group 2 中既有简单纹理类型的Dot Pattern 纹理,也有类周期低对比度的Ging‐ham 纹理和Knot Pattern 纹理,即ZJU‐Group 2 综合了Group 1 和Group 3 的纹理特征,所以在Group 2 上进行了相同的模块消融实验,进一步验证算法模块的泛化有效性.实验结果如表7 所示,表中黑体字表示结果最优.由表可见,Group 2 上的实验结果与Group 4 上的实验结果呈规律近似一致性,进一步说明本文的算法模块具备泛化能力.

表7 损失函数、DBN 模块以及连接方式在ZJU⁃Group 2 上的消融研究Table 7 Ablation study for Loss function,each module and hybrid connection on ZJU⁃Group 2

最终实验使用的损失函数是WGBCE Loss,它包含两个超参数σ和λ.图9 展示了两个参数的可视化对比.由图可见,固定参数σ和λ越小,中值附近的损失贡献越大,中值附近的函数曲线越凸出;固定参数λ和σ越大,端点值损失贡献的斜率越大;σ 越趋近于0,中值附近产生拐点;σ取值0.2时,中值附近的函数曲线更平滑.

图9 损失函数参数的可视化对比Fig.9 Visual comparison of loss function parameters

综合考量,选用的参数区间为σ∈[0.1,0.2,0.3 ],λ∈[ 0.05,0.1,0.15,0.2 ].表8 展示了两个参数的消融实验,表中黑体字表示结果最优.由表可见,固定参数σ和λ取值0.1时,fmeasure取得最大值,处于波峰;固定参数λ,σ取值0.2时,fmeasure取得最大值,处于波峰.所以,最终的σ和λ分别取值为0.2 和0.1.

表8 ZJU⁃Group 4 上不同参数损失函数的消融实验Table 8 Ablation study for different Loss Functions parameterson ZJU⁃Group 4

4 结论

针对复杂纹理织物瑕疵检测,本文提出一种双端输入型嵌套融合多尺度信息的网络架构WNet.为了降低深层网络中背景特征对瑕疵特征的干扰,借助右骨干分支的全局建模能力,在卷积深层网络中补充全局上下文信息.为了减少深层网络中瑕疵细节信息丢失,提出一种轻量级双分支池化金字塔,将浅层多尺度细节特征引入深层模块.在特征融合阶段,为了进一步细化、筛选、增强输入特征,甄别高梯度纹理特征和瑕疵特征,利用嵌套DBPP 实现多尺度嵌套双分支模块,该模块更关注多尺度不同感受野范围内的特征信息,可以生成更加精确的多阶段瑕疵预测图像.最后,为了降低高梯度纹理区域的误检率,对二元交叉熵损失函数进行了改进,以提高预测置信度.提出的方法在四个瑕疵测试集上的综合评价指标较优,尤其是fmeasure、阳性预测率和阴性预测率较高.但是,本文方法WNet 的平均查准率依旧有较大的提升空间,同时,针对细小的织物瑕疵,检测效果依旧不够理想.

未来的研究将考虑改进特征融合方式,以更轻量高效的方式提高复杂纹理中瑕疵的检测精度.

猜你喜欢

瑕疵分支纹理
登记行为瑕疵与善意取得排除的解释论
基于BM3D的复杂纹理区域图像去噪
哦,瑕疵
巧分支与枝
哦,瑕疵
使用纹理叠加添加艺术画特效
一类拟齐次多项式中心的极限环分支
TEXTURE ON TEXTURE质地上的纹理
消除凹凸纹理有妙招!
毫无瑕疵的推理