基于CR-RFPR101的钢板表面缺陷检测

2024-01-06 04:34李雪露储茂祥杨永辉刘光虎
关键词:金字塔空洞特征提取

李雪露, 储茂祥, 杨永辉, 刘光虎

(辽宁科技大学 电子与信息工程学院,辽宁 鞍山 114051)

钢板在生产和加工过程中,受设备和环境等不可控因素的影响,表面易出现麻点、划痕、压入氧化铁皮等缺陷,这些缺陷严重降低了钢材产品的外观、质量和使用性能[1-3]。 传统的钢板缺陷检测算法依赖于主观臆断,识别率低,误判和错判的概率大大增加。 因此,使用深度学习技术对钢板表面缺陷进行检测十分重要[4]。

随着深度学习理论和人工智能技术的不断发展与完善,其检测精度较传统检测算法有了显著的提升,并在机器视觉领域取得令人瞩目的结果[5]。 文献[6]提出一种基于DMSA-YOLOv3模型的缺陷检测,用于检测微小钢板缺陷;文献[7]提出使用GoogLeNet作为骨干网络和添加映射的卷积神经网络缺陷分类算法;文献[8]提出使用尺度不变特征转换(scale-invariant feature transform,SIFT)和神经网络相结合的检测算法;文献[9]提出一种基于模板匹配的带钢表面缺陷检测算法;文献[10]提出一种基于U-Net的钢板缺陷分割网络;文献[11]改进了YOLOv3的骨干网络,并引入空洞卷积和Inception模块用于钢板检测;文献[12]提出使用改进的Mask 区域卷积神经网络(region-based convolutional neural networks,R-CNN)模型钢板表面缺陷检测;文献[13]进一步提出ResNet50的Faster R-CNN检测网络。

为了弥补传统检测算法的不足,本文提出一种基于Cascade R-CNN[14]的递归特征金字塔ResNeXt-101-64×4d(Cascade R-CNN-recursive feature pyramid ResNeXt-101-64×4d,CR-RFPR101)

的检测算法。 为了解决随着网络层数的加深,进行特征提取时产生的梯度消失和梯度爆炸等问题,提出使用ResNeXt-101-64×4d网络作为Cascade R-CNN算法的骨干网络。 为了增加全局特征,引入递归特征金字塔(recursive feature pyramid,RFP)[15]代替原主干网络的经典特征金字塔。 使用可切换的空洞卷积(switchable atrous convolution,SAC)代替传统卷积层,使用不同空洞率的卷积层对相同的输入特征做卷积。 为了实现准确高效的钢板表面缺陷检测,利用线性加权形式的软化非极大值抑制(soft non-maximum suppression,Soft-NMS)[16]算法对模型的非极大值抑制(non-maximum suppression,NMS)结构[17]进行优化,提高准确性。

1 Cascade R-CNN

1.1 Cascade R-CNN网络结构

Cascade R-CNN模型主要由特征提取网络ResNet101[18]、区域建议网络(region proposal network,RPN)和级联检测器组成。 Cascade R-CNN网络结构如图1所示。 采用ResNet101网络对钢板表面缺陷图像进行特征提取,然后将提取的缺陷特征输入到RPN进行候选区域选择,最后使用级联检测器实现缺陷的定位和分类。

图1 Cascade R-CNN网络结构图

1.2 级联结构

Cascade R-CNN具有独特的级联结构,实现了更加准确地定位缺陷信息。 3个级联结构的IoU阈值依次设置为[0.5,0.6,0.7]。

首先将预测框送入IoU阈值为0.5的检测网络,若此时预测框与真实框之间的IoU阈值>0.5,则判断该框为正类,引入边框回归损失B1调整预测框的边框位置,同时生成第1个分类得分C1。

将B1修正后的新区域经过筛选的候选框送入IoU阈值为0.6的检测网络,若此时IoU阈值>0.6,则仍判断该框为正类,同时利用边框回归损失B2调整预测框的边框位置并生成第2个分类得分C2;依此类推,最后得到钢板表面缺陷的最终分类得分以及定位信息。

2 改进的Cascade R-CNN

改进后的Cascade R-CNN网络结构如图2所示。

图2 改进的Cascade R-CNN网络结构

首先,将采集到的钢板表面缺陷图像输入到基于ResNeXt-101-64×4d的特征提取网络。 然后,利用特征金字塔结构代替传统特征金字塔结构进行特征融合。

其次,引入SAC模块,利用空洞卷积改变卷积核感受野的大小,使用不同空洞率的卷积层对相同的输入特征做卷积,提高特征之间的相关性。

最后,将带有置信度的锚框送入级联检测器,通过Soft-NMS模块获取置信度最高的预测框,实现缺陷的定位和分类。

2.1 特征提取网络

本文选取ResNeXt-101-64×4d网络代替Cascade R-CNN模型的ResNet101网络,完成模型的特征提取功能。 ResNeXt-101-64×4d网络将ResNet101网络的单个卷积改为多支路的卷积,通过增加卷积基数提高模型的准确率,并采用恒等映射的方式完成特征提取。 ResNeXt-101-64×4d的模型结构如图3所示。

图3 ResNeXt-101-64×4d模型结构

图3中,每一个方框代表一层网络,其中的3个数据从左到右依次为输入数据的通道数目、卷积核大小和输出数据的通道数目,共64条路径,即基数cardinality=64。 在不改变计算量的前提下,ResNeXt-101-64×4d网络增加了路径的数量,各个模块的输出通过求和进行汇总,较好地提高了网络的特征提取能力。

ResNeXt-101-64×4d网络采用ReLU函数作为激活函数,计算公式如下:

(1)

2.2 递归特征金字塔

特征金字塔(feature pyramid networks,FPN)[19]主要利用深度卷积神经网络解决目标检测过程中存在的多尺度问题。 本文采用的递归特征金字塔则是在特征金字塔的基础上,增加反馈机制和重复应用主干模块,迭代融合输出特征图[20],提升对小目标缺陷的检测性能。

递归特征金字塔网络结构如图2中RFP模块所示。 设Dn为主干网络自底向上的第n阶段特征提取过程;Fn为第n阶段自上而下的FPN运算;fn为递归特征金字塔输出的特征图,其中n=1,2,…,S;S为特征层数;Hn表示自顶向下传输到自底向上的过程的预处理操作;xn为第1次递归时主干网络输出的第n阶段特征图,则fn表达式为:

fn=Fn(fn+1,xn),xn=Dn(xn-1,Hn(fn))

(2)

多次迭代后的特征图输出为:

(3)

其中,r为迭代次数。

2.3 可切换的空洞卷积

钢板表面缺陷图像进行特征提取的过程中,因为钢板表面缺陷图像之间的差异较大,没有统一的划分标准,需要进行多尺度检测,所以选择合适的卷积核至关重要,以适应不同的感受野。 本文选用可切换的空洞卷积SAC代替主干网络的传统卷积层,从而在不同的空洞率之间实现对卷积计算的软切换,实现准确高效的检测。 基于SAC的总体架构如图4所示,从图4可以看出,SAC架构主要由基于SAC的空洞卷积结构、全局上、下文模块3个模块组成。

图4 基于SAC的总体架构

SAC模块的计算公式如下:

Conv(v,w,1)→Y(x)·Conv(v,w,1)+(1-Y(x))·Conv(v,w+Δw,e)

(4)

其中:v为输入;w为模型权重;e为空洞卷积的空洞率;Δw为可训练的权重;函数Y(x)由5*5的平均池化层和1*1卷积层组成。

2.4 非极大值的优化

在检测过程中,由于钢板表面缺陷图像之间的差异较大,RPN网络会产生大量冗余的锚框,Cascade R-CNN模型利用NMS将重叠的框滤除。 然而,经典的NMS算法直接将置信度低的锚框过滤掉,只保留一定数量的质量较高的建议框,很容易造成漏检和误检的问题。 因此,本文选用基于线性加权形式的Soft-NMS算法解决以上问题,将IoU阈值设置为0.7。

当得到较低分数时,不是直接过滤掉,而是进行下一次级联检测,降低漏检的概率,提高模型的检测精度。 基于线性加权形式的Soft-NMS的计算公式如下:

(5)

其中:M为得分最高的框;bk为待检测的框;Ik为最终得分;Nm为设定的阈值,即Nm=0.7。

3 实验结果与分析

3.1 实验平台

实验运行平台及参数设置见表1所列。

表1 实验运行平台及参数

3.2 缺陷数据集分析与图像增强

本文采用东北大学发布的NEU-DET数据集进行实验,其中共计1 800张图片,对于6类钢板表面缺陷检测是不足的,而数据的缺少会导致训练过拟合以及检测泛化性能较差等问题。

为了解决以上问题,本文采用仿射变换、伽马增强、镜像变换和添加色调和饱和等方式对原始数据进行增强,既增加了数据量,又提高了图像的鲁棒性。 增强后的图像为5 400张,数量为原来的3倍。

数据增强示例图如图5所示。

图5 钢板表面缺陷图像数据增强示例

钢板缺陷图片采用矩形框进行标注,采用utf-8的编码格式,200×200的分辨率,使用json记录有关数据,按照6∶2∶2的比例随机分配缺陷图像。

3.3 实验训练

CR-RFPR101模型使用随机梯度下降(stochastic gradient descent,SGD)优化器,每迭代50次纪录1次损失函数值,训练共迭代350次,损失函数随迭代次数的变化如图6所示。

图6 损失函数随迭代次数的变化

从图6可以看出,CR-RFPR101模型的损失函数值收敛至0.18左右趋于稳定,满足训练要求。

3.4 评价指标

本文选用准确率A(accuracy)、精确率P(precision)和召回率R(recall)评价模型性能,A、P、R计算公式为:

(6)

(7)

(8)

其中:TP为钢板无缺陷,预测为无缺陷;FP为钢板有缺陷,预测为无缺陷;FN为钢板无缺陷,预测为有缺陷;TN为钢板有缺陷,预测为有缺陷。

3.5 实验结果分析

为了验证改进的特征提取网络、RFP、SAC和Soft-NMS几个模块对CR-RFPR101算法检测效果的影响,设计实验结果见表2所列。 4种不同算法的检测结果见表3所列。

表2 改进算法对比

表3 经典算法性能对比

表2,表3中:Cz为裂纹缺陷;Is为夹杂缺陷;Pc为斑块缺陷;PS为麻点缺陷;RS为压入氧化铁皮缺陷;St为划痕缺陷;mAP为平均精度均值;AP为平均精度。 从表2可以看出,数据增强后的算法mAP值为78.8%,较原始算法提高了2.7%,有效提高了算法的泛化性能。 利用SAC代替传统空洞卷积的操作使得mAP值增加了1.5%,能结合不同尺寸的空洞卷积,扩大感受野,提高算法的检测性能。

基于ResNeXt-101-64×4d网络的Cascade R-CNN算法mAP值为81.8%,在不增加参数复杂度的前提下,提高了算法的准确率。 利用线性加权的Soft-NMS代经典NMS,mAP值提高了0.5%,较好地提高准确性。 使用RFP代替传统特征金字塔的操作使得CR-RFPR101算法的mAP值提高了1.1%,相比于原始Cascade R-CNN提高了7.3%,有效提高了检测的精度和鲁棒性。

由表3可知,CR-RFPR101算法有着显著的检测优势,本文算法与YOLOv3、SSD、Faster R-CNN算法相比,精确度分别提高了3.7%、3.9%、1.9%,并且6种缺陷的AP值均获得最高值。

5种检测算法的P-R曲线如图7所示,由图7可知,CR-RFPR101算法的总体检测性能较好。

图7 各模型的P-R曲线对比结果

YOLOv3、SSD、Faster RCNN、Cascade RCNN和C-RRFPR101算法检测结果的混淆矩阵如图8所示。

图8 不同模型的混淆矩阵结果

通过比较混淆矩阵,可以看出,CR-RFPR101在6种缺陷中的Pc、PS、St 3种上产生了较好的分类性能,表明所提出的CR-RFPR101算法的可行性和适用性。

为了更加直观地比较不同算法的检测性能,本文增加了可视化实验,检测结果如图9所示。 其中:绿色框代表实际结果;橙色框表示检测结果。

图9 缺陷检测对比结果示例

从图9可以看出,CR-RFPR101算法的检测框与实际标签的贴合程度最高,优于其他对比缺陷检测算法。

4 结 论

本文提出了一种基于CR-RFPR101的目标检测算法,该算法使用ResNeXt-101-64×4d作为Cascade R-CNN模型的骨干网络,采用恒等映射的方式优化特征提取功能;利用递归特征金字塔代替经典特征金字塔,以反馈的方式优化主干网络,实现多尺度的目标检测;采用可切换的空洞卷积改变主干网络的卷积层,通过改变空洞率以确定适合钢板表面缺陷的感受野,提高模型的检测性能;利用线性加权形式的Soft-NMS对非极大值抑制进行优化,以降低误检和漏检率,提高模型的准确率。

通过消融实验和与经典的检测算法相比较,CR-RFPR101算法在钢板表面缺陷检测问题上具有明显的检测优势。

猜你喜欢
金字塔空洞特征提取
“金字塔”
A Study of the Pit-Aided Construction of Egyptian Pyramids
海上有座“金字塔”
基于Daubechies(dbN)的飞行器音频特征提取
神秘金字塔
Bagging RCSP脑电特征提取算法
空洞的眼神
用事实说话胜过空洞的说教——以教育类报道为例
基于MED和循环域解调的多故障特征提取
臭氧层空洞也是帮凶