APP下载

基于改进Faster R-CNN的钢板表面缺陷检测*

2022-06-08林中康李锦达

组合机床与自动化加工技术 2022年5期
关键词:特征提取钢板聚类

李 玉,汤 勃,孙 伟,林中康,李锦达

(武汉科技大学机械自动化学院,武汉 430081)

0 引言

钢板表面质量检测对于提高钢板产品质量十分重要。传统人工检测方法仅依靠人眼识别,局限性较大[1]。随着视觉检测技术的发展,基于视觉检测技术的表面检测方法逐渐被用到钢板表面检测中。如SONG等[2]首先提取了图像的改进局部二值模式特征,然后使用支持向量机对图像进行分类识别;韩英莉[3]使用改进的ReliefF算法对带钢的多维混合特征进行处理,然后利用遗传算法优化后的BP 神经网络进行识别。这些方法虽然速度较快,对特定缺陷精度较高,但是由于需要人工设计特征提取器,对图片的特征提取能力弱,受环境因素影响较大。

近年来,随着深度学习技术的不断发展,基于深度学习的目标检测方法被越来越多的学者应用到缺陷检测方面[4-5]。针对钢板表面缺陷检测这一具体问题,本文使用改进后的Faster R-CNN算法[6]对钢板表面缺陷进行检测。首先使用不同特征提取网络在ImageNet数据集[7]上的预训练模型作为初始权重参数对Faster R-CNN模型进行迁移学习,对比选择结果更优的卷积神经网络作为Faster R-CNN模型的特征提取网络;然后针对原Faster R-CNN算法中锚框的尺寸和比例与钢板表面缺陷尺寸大小不匹配的问题,采用聚类的方法来确定锚框的尺寸和比例,提高算法模型的准确率;最后针对钢板表面低对比度的微小缺陷检测准确率有待提高的问题,融入特征金字塔网络(feature pyramid networks,FPN)[8]将深层的高语义特征和浅层特征图的细节特征融合,进一步提高算法模型的准确率。通过在8类常见的钢板表面缺陷样本数据集上进行缺陷检测试验,验证了改进后的模型的有效性。

1 图像数据集制作

本文所用数据集图片由白点、黑斑、磷化班、麻点、针孔、划痕、孔洞和露金等两种不同带钢的共8类缺陷图片组成。由于原始图像尺寸较大,为了降低运行成本和提高运行速度将图像分辨率调整为224×224。

在训练基于深度学习的目标检测模型时,训练数据越多,训练后模型的性能也就越好。由于本文涉及到的缺陷种类相对较多,存在低对比度难识别的微小缺陷,且样本数量有限,因此本文采用了对图像的水平翻转、垂直翻转和水平垂直翻转等操作来扩充数据集图片数量。扩充后数据集图片数量为1600张,每类缺陷的图片数量分别为200张。

使用labelImg标注工具对图像中的缺陷种类和边界框位置进行标注,并且将标注文件及其图像制作成为PASCAL VOC2007数据集格式。数据集制作完成后从每种缺陷的200张图片中随机选择出150张图片作为训练集,50张图片作为测试集,整个数据集共包含图片1600张,其中训练集图片1200张,测试集图片400张。

2 Faster R-CNN模型网络结构

Faster R-CNN是在Fast R-CNN算法[9]的基础上改进后提出的,它使用区域候选网络(region proposal network,RPN)替代原来的选择性搜索(selective search,SS)方法来产生建议框,有效的提高了目标检测速度,取得了良好的效果。Faster R-CNN目标检测模型的基本步骤如下:

(1)特征图提取。使用特征提取网络进行特征提取,获取输入图像的特征图,后续的RPN网络和Fast R-CNN检测模块将共享这一特征图。

(2)区域候选框生成。将第一步生成的特征图输入到RPN网络,并通过n×n的滑动窗口结合不同尺寸和比例,生成一系列锚框。通过二分类器对锚框属于前景还是背景进行分类判断,并通过锚框回归获取区域候选框的位置。

(3)生成固定尺寸建议特征图。在Fast R-CNN检测模块中以特征提取网络输出的特征图和RPN输出的区域候选框为输入,综合特征图和候选框的信息,通过RoI池化层生成固定尺寸的建议特征图。

(4)分类定位。在Fast R-CNN检测模块中将RoI池化层生成的固定尺寸的建议特征图输入全连接层,利用Softmax进行分类并得到对应得分,同时利用回归层得到预测目标的准确位置。

3 改进后的Faster R-CNN模型

针对钢板表面缺陷种类复杂多样,缺陷尺寸大小不一,低对比度微小缺陷多等特点,结合Faster R-CNN模型网络结构,本文提出了改进的Faster R-CNN模型网络结构,改进的Faster R-CNN模型网络结构如图1所示。

图1 改进的Faster R-CNN模型网络结构

3.1 特征提取网络的对比选择

通过分析Faster R-CNN模型网络结构可知特征提取网络对缺陷目标特征提取能力的好坏对最终模型的性能有着不小的影响。

因此本文分别选取了VGG16[10]、ResNet-50[11]、MobileNet-V2[12]这3种不同的特征提取网络作为对比实验,并将其在ImageNet上预训练所得到的网络模型参数用于Faster R-CNN网络的初始化,以便对比分析不同特征提取网络模型的性能,选择针对钢板表面缺陷检测任务性能更优的卷积神经网络作为特征提取网络。

3.2 基于K-means聚类算法的锚框方案生成

在原始Faster R-CNN模型的RPN网络中,锚框方案是针对PASCAL VOC数据集根据经验所设定的,锚框尺寸和比例分别设置为{1282,2562,5122}和{0.5,1,2}。由于本文所用数据集的图片大小为224×224,且由图2可以看出本文数据集的钢板表面缺陷区域大小差异较大,所以使用原始锚框方案不能很好的与缺陷尺寸相对应,容易影响最终的检测效果。

图2 K-means聚类效果图

因此,为了提高模型检测精度,需要针对本文数据集建立新的锚框方案,使锚框方案与缺陷尺寸和比例相对应。本文通过K-means[13]聚类算法对钢板表面缺陷数据集中的8类缺陷的标注框大小和比例进行聚类,并在原始锚框方案3个边框尺度的基础上增加了2个边框尺度,使新的锚框方案生成的锚框数目为15个,具体过程如下:

首先对数据集所有缺陷的标注框进行宽高维度的聚类,聚类簇个数设置为15,得到15个锚框坐标,结果如图2所示;其次对这15个锚框坐标分别计算其锚框面积,并对这15个面积进行开方计算,得到15个边框尺寸;再次对15个边框尺寸进行K-means聚类分析,聚类簇个数设置为5,得到5个边框尺度;然后对15个锚框坐标分别计算其宽高比例,得到15个比例值;最后对这15个比例值进行K-means聚类分析,聚类簇个数设置为3,得到3个比例尺度。

最终通过聚类得出的新的锚框方案为:锚框边框尺度为{302,802,1202,1802,2202},锚框的比例尺度为{0.3,0.7,1}。新锚框方案共包含5种边框尺度,3种比例尺度,共定制生成15种锚框。

3.3 融入特征金字塔的特征提取网络

在原始Faster R-CNN模型中,RPN网络仅使用最后一层的高层特征图做检测,但是卷积神经网络在对图像进行多次卷积和池化操作时特征图的分辨率会不断变小,目标的特征会变得模糊不易提取,而且高层特征图会丢失细节信息,所以原始Faster R-CNN模型对小目标的检测精度相较于大目标有较大差距[14]。

针对本文数据集中包含的钢板表面低对比度微小缺陷,引入FPN网络将提取的高层特征图的高语义特征和浅层特征图的细节特征进行自顶向下融合,在融合后的新特征图上进行物体检测,保证低对比度微小缺陷的检测精度。FPN网络结构简图如图3所示,它对深层特征图进行上采样后与相邻浅层特征图进行自顶向下融合,并在融合后的每个特征图上进行预测[15]。

图3 FPN网络简图

4 试验结果与分析

4.1 试验环境与参数设置

本文采用云服务器来搭建模型训练需要的深度学习环境。试验平台的硬件环境为:Intel(R)Xeon(R)CPU E5-2678v3 @ 2.50 GHz、运行内存62 GB、显卡型号为NVIDIA GeForce RTX 2080 Ti、显卡内存为11 GB。软件环境为:Ubuntu18.04操作系统、pytorch1.6.0深度学习框架、CUDA10.2,使用GPU加速计算。

训练Faster R-CNN网络模型时,特征提取网络初始权重采用在ImageNet上预训练好的参数,优化算法采用带动量的随机梯度下降法(SGD),训练方式采用近似联合训练的方法,在保持精度的基础上节约了25%~50%的训练时间[6]。具体的参数设置为:初始学习率为0.005,每训练5个epoch学习率下降一次,下降的倍率因子为0.33;动量设置为0.9,衰减因子为0.000 5。

4.2 结果与分析

对改进前后的Faster R-CNN网络模型分别进行训练和测试,主要评价指标使用目标检测模型中常用的平均精度(average precision,AP)和平均精度均值(mean average precision,mAP),得到试验结果对比如表1所示。

表中结果表明,从特征提取网络的对比来看,使用ResNet50作为特征提取网络的Faster R-CNN模型具有更出色的性能,在原始Faster R-CNN模型中使用ResNet50的mAP值达到了84.59%,比使用VGG16和MobileNet-V2分别高出了3.68%和2.79%,但是通过分析每类缺陷的AP值(以ResNet50为例)可以发现对于低对比度小缺陷的黑斑和麻点等缺陷其AP值分别只有61.78%和58.56%。

为了提升模型的检测性能,对Faster R-CNN网络模型使用K-means聚类算法生成新的锚框方案,锚框边框尺度为{302,802,1202,1802,2202},锚框的比例尺度为{0.3,0.7,1},共定制生成15种锚框。通过对表1中的结果对比可以发现,以ResNet50为例,虽然改进锚框后在部分缺陷上的AP值有略微下降,但是并不影响模型整体性能,而且在黑斑和麻点上的AP值均有所提升,分别提升了22.71%和4.34%,在整体性能mAP上提升了0.95%。通过分析可以发现,经过聚类改进锚框方案后,模型的性能有了提高,但是提高的精度有限。

为了进一步提高模型的性能,本文对改进锚框后的Faster R-CNN网络模型进一步融入FPN网络,选择具有更好表现的ResNet50作为特征提取网络与FPN网络融合,充分利用低层特征高分辨率和高层特征的语义信息,对原有网络中的不同层次的特征图进行预测和叠加连接。改进后的试验结果如表1中ResNet-50+FPN一行所示,可以看出融入FPN后的网络模型的性能再次有所提高,mAP值提高了12.9%达到了98.44%,在黑斑和麻点上的AP值分别提高了13.53%和30.87%,而且每一类缺陷的AP值都达到了93%以上。相比原始的Faster R-CNN网络模型(以ResNet50为特征提取网络),白点、黑斑、麻点、针孔、划痕、孔洞、露金等缺陷的AP值分别提高了12.71%、36.24%、35.21%、3.32%、7.23%、8.78%、7.41%,网络模型的整体性能mAP值提高了13.85%。部分检测结果如图4所示。

图4 部分检测结果图

表1 试验结果对比

5 结论

本文以钢板表面缺陷为研究对象,结合缺陷图片特点,对原始Faster R-CNN网络模型进行了特征提取网络的对比选择、K-means聚类定制锚框、融入FPN网络3个方面的改进。从试验结果可以看出,在基于本文数据集的钢板表面缺陷检测任务上,与VGG16和MobileNet-V2相比,以ResNet50作为特征提取网络的Faster R-CNN网络模型性能最佳;使用K-means聚类算法对锚框方案进行定制生成后,能够有效提升黑斑等低对比度小缺陷的检测精度,对模型的整体检测性能也有小幅提升;在改进锚框生成方案的基础上将以ResNet50作为特征提取网络的Faster R-CNN模型与FPN网络融合,有效的提升了各类缺陷的检测精度,使各类缺陷的AP值都达到了93%以上,进一步地提高了模型的整体检测精度。

改进后模型的mAP值从原始Faster R-CNN模型的84.59%提升到了98.44%,本文改进后的Faster R-CNN模型能够更好地检测钢板表面缺陷。

猜你喜欢

特征提取钢板聚类
双钢板与锁定钢板在复杂肱骨近端骨折治疗中的疗效比较
探讨拉森钢板桩在市政工程基坑支护中的应用
空间目标的ISAR成像及轮廓特征提取
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于特征提取的绘本阅读机器人设计方案
非加劲钢板剪力墙显著屈服位移角的研究
基于Daubechies(dbN)的飞行器音频特征提取
面向WSN的聚类头选举与维护协议的研究综述
钢板组装式屏蔽体的关键技术浅析
基于高斯混合聚类的阵列干涉SAR三维成像