APP下载

具有复杂纹理的木板表面刮痕缺陷检测模型

2024-02-21刘成良石闻天

计算机集成制造系统 2024年1期
关键词:刮痕木板纹理

胡 勍,秦 威+,刘成良,石闻天

(1.上海交通大学 机械与动力工程学院,上海 200240;2.中移(上海)信息通信科技有限公司,上海 200331)

1 问题的提出

木板作为一种重要的材料,在制造业的各行各业均有着不可替代的作用。根据数据显示,我国木板市场规模逐年递增,由2017年的374亿美元增长至2020年的450亿美元,预计2021年我国木板市场规模将达到475亿美元。市场上的木板主要以人造板为主,是以木板或其他非木质材料,经过机械加工形成基板,使用胶粘剂将打印好的木质纹理和基板粘连压制形成的。由于制造过程复杂,在木板加工以及后续运输过程中,可能会出现表面缺陷,例如常见刮痕缺陷,如图1所示。由于木板的需求量主要来自于家具和建筑行业,木板的表面存在刮痕将会直接降低产品的质量,影响用户的体验。因此,木板入库之前需要进行木板表面缺陷检测。

图1 不同纹理的木板表面刮痕缺陷

目前,大多数木板生产厂家采用的木板表面缺陷检测方式是人工识别,检测效率低下,单块木板通常需要2 s~3 s,个体检测标准的差异导致质量一致性较差,无法达到生产质量高标准的要求。而且,随着人工费的上涨,人工检测必然是一笔巨大的开销,成为企业的负担。另外,长时间高强度的检测作业对工人的眼睛可能会造成一定的损伤。木板表面具有复杂多变且不规则的纹理背景,导致刮痕缺陷难以识别,同时采集的木板图像存在缺陷样本数目少的问题。现有的纹理缺陷检测算法对单一规则纹理背景下的缺陷识别效果较好,难以应用到纹理背景复杂多变的木板表面进行刮痕缺陷识别,因此研究高鲁棒、高精度的木板表面刮痕检测方法是非常有必要的。

随着计算机视觉的快速发展,缺陷检测技术已经由基于传统图像处理向基于深度神经网络转变[1]。在图像中找出缺陷的位置并对其进行分类在深度学习中被称为目标检测。2012年,KRIZHEVSKY等[2]构建AlexNet一举拿下ImageNet图像识别的冠军,深度学习开始得到世界范围内的广泛关注,随着计算机性能的提高,深度学习得到爆炸式的发展,目标检测网络如雨后春笋般涌现。目前主流的目标检测网络分为双阶段目标检测网络和单阶段目标检测网络两种,接下来介绍两种网络的优缺点及其在缺陷检测方面的应用。

双阶段目标检测网络发展主要历经了RCNN(region convolutional neural network)[3],Fast RCNN[4],Faster RCNN[5]三个阶段,3种目标检测算法是逐步优化的,但均包括候选框生成和候选框分类两个阶段,因此被称为双阶段目标检测网络。RCNN基于选择性搜索(Selective Search,SS)选出2 000个候选框;候选框归一化之后输入到卷积神经网络(Convolutional Neural Network,CNN)提取特征,特征输入到SVM分类,缺点是候选框区域互相重叠,计算量大,CNN只能接受固定大小输入。Fast RCNN仍基于SS生成候选框,但是将原图输入到CNN中而不是候选框,候选框映射成固定尺寸的特征图,候选区域不会失真,同时引入多任务损失函数用于分类和回归,缺点是依旧采用SS提取候选区域,速度慢,无法满足实时性要求;没有实现端到端训练测试。Faster RCNN引入RPN(region proposal network)网络,采用滑动窗口方式产生9个锚框,锚框输入到全连接层来判断是否有目标存在,将RPN的输出输入到第二阶段进行精细分类和包围框位置修正,速度与单阶段检测算法相比仍然较慢,但基本能满足实时性要求。

Faster RCNN兼顾精度和速度的要求,在目标检测问题上有着优异的表现。CHA等[6]将Faster RCNN骨干网络替换为ZF-net,应用到桥梁表面缺陷识别并得到了mAP值为87.8%的结果。ZHONG等[7]基于Faster RCNN提出三阶段的开口销缺失检测网络。TAO等[8]将Faster RCNN网络应用于绝缘子缺陷检测并取得较好的结果。XUE等[9]将Inception网络和位置敏感的ROI pooling引入到Faster RCNN,在隧道衬砌缺陷检测中得到单张图像检测速度48 ms,精度95%的结果。DING等[10]将多尺度金字塔网络引入到Faster RCNN,并采用k均值聚类选取合适的锚框高宽比加速网络收敛,在PCB缺陷数据集取得mAP值为98.9%的结果。Faster RCNN还广泛应用于带钢表面[11],铝材表面[12],玻璃表面[13]以及轮胎轮毂[14]等领域,均取得了优异的缺陷检测检测效果。

单阶段目标检测网络去掉了双阶段目标检测网络的候选区域生成阶段,直接回归目标包围框的位置及所示类别,检测速度与双阶段相比有很大的提升。典型的单阶段目标检测网络包括YOLO(you only look once)系列和SSD(single shot multibox detector)[15]。YOLO是继RCNN,Fast-RCNN和Faster-RCNN之后,REDON等[16]针对DL(deep learning)目标检测速度问题提出的另一种框架,其核心思想是生成RoI+目标检测两阶段算法用一套网络的一阶段算法替代,直接在输出层回归bounding box的位置和所属类别。YOLO以降低mAP为代价,大幅提升时间效率。后续出现的YOLOv2、YOLOv3、YOLOv4、YOLOF[17-20]在YOLO的基础上引入很多提高精度和加快网络收敛速度的方法,如多尺度预测、引入残差网络作为骨干网络、细粒度特征提取、软分类等,在保持目标检测速度的同时,目标检测精度稳步提升,但是对小目标检测精度较低。SSD从YOLO中引入将目标检测转化为回归问题的思路,同时加入基于特征金字塔的检测方式,运行速度可以和YOLO媲美,检测精度可以和Faster RCNN媲美,但是网络中prior box的基础大小和形状不能直接通过学习获得,而是需要手工设置,调试过程过度依赖经验,对小目标精测精度同样较低。

单阶段目标检测网络适用于对实时性要求高,对精度要求不是很严格的缺陷检测场景。CHEN等[21]基于改进SSD网络对紧固件缺陷位置进行定位,并取得不错的效果。LI等[22]将MobileNet引入到SSD网络中,提出了轻量级密封容器表面缺陷检测方法。ZHANG等[23]应用YOLOv3并针对桥面缺陷提出了新的损失函数,在桥面缺陷取得了mAP值为94.3%的结果。

总体而言,深度神经网络已广泛应用于缺陷检测领域,并取得不错的结果,但是,对于木板这类研究对象应用较少。木板具有不规则且多样性的纹理背景,且木板表面的刮痕缺陷具有较大的长宽比(如图1),此类目标在目标检测领域相关研究内容较少,直接应用Faster RCNN进行刮痕缺陷检测精度较低。因此,本文基于Faster RCNN提出了木板表面刮痕检测模型,模型引入可形变卷积和旋转包围框,设计新的预测框回归损失函数来提高刮痕缺陷检测精度。本文将该模型应用于绍兴市杰品木塑公司生产线上,实现木板表面刮痕精确定位,验证了所提模型的可行性与有效性。

2 木板表面刮痕检测模型

2.1 图像预处理

图像预处理包括纹理背景平滑和数据增强两部分。纹理背景平滑是通过纹理平滑算法在保持结构边缘细节的同时,对木板纹理背景进行一定程度的模糊化,以较少复杂多变的纹理背景对刮痕缺陷识别的影响;数据增强是针对刮痕缺陷样本数目少的问题,提出一种灰度自适应刮痕生成方法,增加缺陷样本数量,防止网络训练过拟合。

2.2.1 纹理背景平滑

木板表面具有复杂多变的纹理背景,刮痕缺陷在整张图像中占的比重较小,检测效果易被纹理背景影响,因此在图像预处理时,需要采用适当的纹理平滑算法,在保持结构边缘细节的同时,对纹理背景进行一定程度的模糊化,提高模型对不同纹理背景下的刮痕检测精度与鲁棒性。

目前纹理平滑通常采用滤波方法,主要分为高斯滤波,双边滤波以及全局优化滤波算法。高斯滤波是一种局部滤波方法,采用模板扫描图像中的每一个像素,用模板确定的领域内像素的加权平均灰度值替代中心像素点的值,高斯滤波对纹理背景平滑较好,但却导致结构边缘细节模糊化,不利于缺陷特征保持。全局优化滤波是在进行纹理平滑的过程中需要保证纹理平滑之后的图像与原图像之间的差异最小,全局优化滤波能够实现强梯度纹理平滑,缺点是无法平滑尺度变化的纹理。

双边滤波算法[24]在纹理平滑领域表现优异,双边滤波是在高斯滤波的基础上,同时考虑像素点周围的灰度值以及像素点之间的位置关系,像素灰度值计算可表示为:

(1)

(2)

式中:i,j,k,l为像素点位置坐标;I(i,j)为(i,j)像素点的灰度值;σd表示与空间位置相关的平滑权重值;σr表示与像素相关的平滑权重值;ID(i,j)表示平滑之后的像素点灰度值。

通过测试发现,木板图像经过双边滤波算法之后,刮痕缺陷也变得模糊,原因在于刮痕特征过于细长,像素灰度值易受周围像素灰度值影响而被模糊掉。因此,本文提出像素边缘长度的概念并应用到双边滤波算法中,在权重计算时考虑像素点之间的边缘细节长度关系,在纹理背景平滑的同时能够很好地保持细长边缘结构。像素边缘长度计算如下:

(3)

式中L(m,n)为像素点(m,n)的边缘长度,通过递归方式计算,若该像素的灰度值和相邻像素的灰度值相同,则该像素的像素边缘长度为相邻像素最大的边缘长度值加1。

将像素边缘长度引入到权重计算公式中,权重计算之后通过式(2)计算待平滑像素点的灰度值,权重计算如下:

(4)

式中σl表示与像素边缘长度相关的平滑权重值。

改进之后的双边滤波算法在纹理背景平滑的同时,较好地保持了木板表面的细长刮痕,如图2所示。为了定量评价改进双边滤波算法纹理平滑效果的好坏,使用SSIM(structural similarity)指标来进行评价,SSIM是一种用来衡量图片相似度的指标,数值越接近于1,代表两种图片相似度越高。从表1可以看出,改进的双边滤波算法在纹理背景平滑的同时能够较好地保持刮痕缺陷特征。

表1 改进双边滤波算法的SSIM指标对比

图2 改进双边滤波算法纹理平滑效果对比

2.1.2 数据增强

通过CCD相机采集的木板图像,存在刮痕缺陷的样本数目较少,为防止网络训练出现过拟合的现象,本文提出灰度自适应刮痕生成方法,在无缺陷木板图像上生成刮痕作为合成图像,将合成图像与存在真实刮痕的木板图像混合划分成训练集、验证集和测试集,最后进行网络训练和测试验证。

灰度自适应刮痕生成方法步骤如下:

步骤1将输入的木板图像转化为灰度图像,并求取图像的平均灰度值。

步骤2根据图像的平均灰度值选取合适的灰度值作为刮痕中心像素的灰度值。

步骤3在图像上随机生成两个点,在两点之间生成第3个点,并约束第3个点的y值与前两个点的平均y值差值不超过图像高度的10%。

步骤4使用3个点进行曲线拟合,对曲线坐标取整,并通过坐标转换得到刮痕中心像素点的图像坐标。

步骤5刮痕中心点上下两个像素的灰度值逐级递减,并采用随机取点的方式将刮痕边缘像素点的灰度值设置成纹理背景的平均灰度值,保证生成的刮痕与纹理背景之间过渡平滑。

使用上述方法合成的刮痕图片如图3所示。

图3 生成刮痕与原始刮痕效果对比

图3左图是原始带有刮痕的木板图像,右图虚线方框内是生成的刮痕,生成的刮痕与原始刮痕的宽度、灰度值等统计信息基本一致,可作为一种数据增强方法。

2.2 改进Faster RCNN的木板表面刮痕检测模型

Faster RCNN网络结构包括特征提取层、RPN层以及分类回归层3个部分。特征提取层一般采用卷积神经网络对输入图像进行特征图提取;RPN层在特征图上生成候选框,并通过候选框回归筛选出包含目标物体的候选框;分类回归层将RPN网络生成的候选框映射到输入图像生成候选区域,并对候选区域进行缺陷分类与回归,得到缺陷类别与准确位置。

本文基于Faster RCNN网络结构,针对刮痕细长且形状多变的特点引入可形变卷积以及旋转包围框,设计新的包围框框回归损失函数,提出一种木板表面刮痕缺陷检测模型,模型整体网络结构如图4所示。

图4 本文提出的模型网络结构图

2.2.1 可形变卷积

Faster RCNN特征提取层一般采用多层卷积网络对输入的图像进行特征图提取,常用的网络结构包括VGG-16,ResNet50,ResNet101等。ResNet[25]网络引入短连接,在加深网络的同时,解决梯度消失和梯度爆炸的难题,保证网络整体性能的提升。因此,本文使用ResNet50作为特征提取层。

木板表面刮痕形状具有多样性,为了增加网络对刮痕不同形状的鲁棒性,本文将可形变卷积网络(Deformable Convolutional Networks,DCN)引入ResNet50中。DAI等[26]首先提出可形变卷积,可形变卷积是在传统的卷积层上添加位移变量,位移变量可以通过反向传播学习得到,特征图与位移变量结合形成新的特征图,将感受野从原始的矩形区域变成形状可变的多边形区域,从而提升网络对不同形状的目标特征提取能力,能够有效应对几何图形的变化,提升了卷积神经网络的形变建模能力,广泛应用于目标检测与语义分割等领域。BERTASIUS等[27]将可形变卷积应用于视频目标检测,提高了单帧中存在遮挡或运动模糊的目标检测性能。WANG等[28]在晶圆缺陷模式识别中引入可形变卷积用于解决晶圆缺陷种类多,形状多变的难题,实验结果表明,可形变卷积能够有效提取缺陷特征,提升晶圆缺陷识别精度。

原始的卷积层输出:

(5)

式中:po为卷积核中心像素点的坐标,R为卷积核覆盖的图像区域,pi为卷积核内除po以外的其他像素点坐标,x(·)表示(·)的像素值。

引入偏移量后的卷积层输出:

(6)

引入偏移量之后,原始的卷积核的网格点可以在x、y方向变化,如图5a所示,因此可形变卷积层具有更丰富的特征表达能力。

图5 可形变卷积随刮痕特征变化

图5b左侧图片表示刮痕的真值包围框,中间图片表示ResNet50第5个阶段原始3×3卷积在原始图片上所采样的点,右侧图片表示ResNet第5阶段改为3×3可形变卷积后在原始图片上所采样的点。由此可知,与原始卷积相比,可形变卷积在采样点分布上能够通过位置变换,贴近目标物体的真实形状,因此,可形变卷积具有更强的特征提取能力。

ResNet50包含5个阶段,每个阶段由2个基本的残差块组成,残差块1的作用是改变网络的维度,残差块2的作用是加深网络深度。将可形变卷积引入ResNet50中,将残差块中的3×3卷积层替换为可形变卷积层,结果如图6所示。

图6 引入可形变卷积后的残差块

将Faster RCNN原有的卷积层替换成可形变卷积后,ResNet50能够自动调整尺度或感受野,更好地提取刮痕缺陷的特征,提高了网络检测不同形状刮痕的鲁棒性。

2.2.2 旋转包围框

水平包围框在许多场景中存在局限性,如场景文本检测和遥感对象检测,以上场景均存在待检测目标具有较大的长宽比、分布密集和具有一定倾角3个难点。若使用水平包围框,背景占比远大于目标占比导致检测精度降低,改为旋转包围框可减少背景占比从而提高识别精度。JIANG等[29]引入旋转包围框,提出旋转区域卷积神经网络用于检测任意方向的文本,实验结果表明,使用旋转包围框的检测精度与采用水平包围框相比提高4.12%。LIU等[30]验证了在遥感对象检测领域,使用旋转包围框进行旋转物体检测与水平包围框相比具有更好的性能及鲁棒性。

刮痕检测与上述3个场景类似,具有较大的宽高比,而且倾角是任意的,若采用传统的水平包围框的标注方式,纹理背景占比远大于刮痕,不利于刮痕缺陷的正确识别。如图7所示,采用水平包围框的标注方式,红色框预测效果较差,但交并比的计算结果大于0.5,因此将被视为正样本而干扰网络的预测性能;若用旋转包围框的标注方式,红色预测框的交并比小于0.5,将被作为负样本舍弃掉,确保网络参数朝正确的方向收敛。

图7 旋转包围框与水平包围框标注对比

图8 像素分类计算方法示意图

因此,本文将水平包围框的标注方式改为旋转包围框标注。旋转包围框可分为五参数标注[31]和八参数标注[32]两种标注方式。五参数标注(cx,cy,w,h,θ)在水平包围框基础上引入角度参数,cx为包围框中心x轴坐标,cy为包围框中心y轴坐标,w为包围框的宽度,h为包围框的高度,θ为包围框的宽度与图像x轴正方向的夹角,取值范围是[-90°,0°),其中包围框的宽度定义为x轴绕y轴坐标最大的顶点逆时针旋转碰到的包围框第一条边。损失函数常采用Smooth L1损失,由于角度存在周期性以及包围框高宽交换导致五参数标注方式的损失函数存在边界不连续以及参数单位不一致的问题。八参数标注(x1,y1,x2,y2,x3,y3,x4,y4)直接使用包围框的4个顶点坐标(xi,yi)(i=1,2,3,4),通过L1损失函数计算包围框回归损失,解决参数单位不一致的问题,但仍存在边界不连续的问题。

边界不连续问题关键在于计算损失函数时考虑了角度因素,当包围框从水平位置逆时针或顺时针旋转时,角度因周期性而产生突变造成损失函数发生突变,但是相交面积变化是连续的。因此,本文在五参数标注方式的基础上提出一种基于像素分类的交并比(IoU)计算方法,并基于该方法设计新的包围框回归损失函数。

首先将最大包围框内的像素点分为4种:包含于预测框、包含于真值框、包含于预测框和真值框、既不包含于真值框也不包含于预测框。像素(i,j)的属于真值框概率的计算方式如下:

(7)

其中:gt表示真值;bboxgt表示真值包围框;wgt和hgt表示真值框的宽度和高度,dw和dh可通过式(8)求得。

(8)

其中:(i,j)为待分类像素点坐标,(cxgt,cygt)为真值框中心点坐标,αgt可通过θgt求得。按式(7)和式(8)同样可求得像素(i,j)∈bboxp的概率p((i,j)∈bboxp)。

当像素点在包围框内部时,上述概率趋近于1;当像素点在包围框外部时,概率趋近于0,因此包围框内部像素点个数近似等于预测概率之和。新的IoU可通过式(9)计算求得:

(9)

因此,新的回归损失函数可定义为:

nLoss=-∑lnnIoU。

(10)

新的回归损失函数nLoss在计算过程中仅考虑相交面积的变化,不存在边界不连续的问题,且计算nLoss的过程公式都是可导的,因此反向传播过程也是可导的。nLoss能正确反映两个包围框的交并关系,随着损失函数的不断下降,确保预测框向真值框回归,适用于旋转包围框的回归训练。

3 实验结果与分析

3.1 数据集标注

数据集包括真实数据集和合成数据集。真实数据集图像采集于绍兴市杰品木塑有限公司木板生产线,包含705张2 400×1 700大小的不同纹理背景木板表面图像。采用512×512的滑动窗口对木板图像进行裁剪,裁剪后包含刮痕缺陷的1 323张图像作为真实缺陷数据集,对不包含刮痕缺陷的3 428张图像使用刮痕生成方法生成随机数量刮痕作为合成缺陷数据集。

对于真实木板数据集,采用roLabelImg进行标注,roLabelImg在labeling的基础上增加旋转包围框标注的功能,生成VOC格式的标注数据。对于合成木板数据集,在生成刮痕的同时,直接生成旋转包围框的标注文件,方法步骤如下:

步骤1根据生成的刮痕获得刮痕曲线的多边形凸包。

步骤2将凸包两个相邻的点连线作为旋转包围框的一条边。

步骤3寻找凸包上距离已得的边的最远点,过该点做平行线获得旋转包围框的第二条边。

步骤4将凸包上的点向已求得的边作投影,求得投影点相距最远的两个点,过两点作直线作为包围框的另外两条边。

步骤5遍历凸包所有相邻两点,重复步骤2~步骤4,将面积最小的包围框作为最终的标注框。

步骤6将得到的标注框4个顶点求均值得到包围框的中心点坐标(cx,cy),计算5个顶点中y轴坐标最大的顶点所在的两条边与x轴正方向的夹角,取值范围在[-90°,0°)作为旋转角度θ,对应的边为w,相邻的边为h,从而得到五参数标注(cx,cy,w,h,θ)的旋转包围框。

将真实木板图像手动标注得到的旋转包围框以中心点对其长边(w或h)和短边进行同比例随机缩放,缩放比例在90%~110%之间,用于解决可能存在的人工标注不准确的情况;对于合成木板图像,自动生成的旋转包围框是以刮痕的边界点通过相关运算得到的,包围框的短边会出较小的值从而具有很大的长宽比,特征提取效果变差。因此,对合成木板图像的旋转包围框缩放时短边使用120%~140%比例,长边使用110%~120%的比例。为验证包围框随机缩放的有效性,进行对比试验,结果表明,包围框经过缩放的训练集训练的模型与未经过缩放的训练集训练出的模型相比,准确率提升0.42%,召回率提升1.13%。

将标注后的80%真实木板图像和全部的合成木板图像混合,按照9∶1的比例随机划分为训练集,验证集,将真实图像剩余的20%作为测试集用于模型测试。

3.2 模型参数选择

经过调参选择,最终采用的部分模型训练参数如下:记忆因子(momentum)为0.9,小批量训练尺寸(batch size)为16,最大迭代次数为1 000次,学习率(learning rate)为0.000 3,衰减迭代次数(decay step)为400和800,权重衰减因子(weight decay)为0.000 1,锚框高宽比为[1,1/2,2,1/3,3,1/4,4,1/5,5,1/6,6,1/7,7]。

模型训练环境如下:Nvidia Geforce GTX 1080 Ti,i7-8700 CPU,模型框架基于tensorflow,训练过程模型损失函数变化如图9所示。

图9 模型准确率及损失函数变化图

如图9a所示的菱形折线图代表模型总损失随训练次数的变化,总损失包括定位损失和分类损失,定位损失即为2.2.2节提出的nLoss函数,分类损失采用交叉熵损失函数,两个损失函数的变化情况如图9b所示,从图中可以看出,两个损失函数均随着训练次数的增加迅速收敛,最终总损失函数值稳定在0.01左右。图9a中的三角形折线表示模型在验证集上的识别准确率随训练次数的变化,随着训练次数的增加,准确率迅速提升并逐步稳定在97%以上。

3.3 模型测试

为验证训练好的模型对真实木板表面刮痕的检测性能与对不同纹理背景的刮痕检测泛化能力,将训练好的模型在测试集上进行测试。测试集只包括真实的木板图像,采集于绍兴市杰品木塑公司实际木板加工生产线,共包含14种纹理背景的木板图像,其中有4种纹理背景未在训练集出现,每种纹理背景包含6张存在刮痕缺陷和4张无刮痕缺陷的图像,共有140张图像。使用本文提出的模型对测试集进行刮痕检测,检测结果如表2所示。

表2 测试集缺陷检测结果

表2中的漏检数指木板表面存在刮痕,但是模型未识别出来的图片数量;错检数是指模型错误将纹理背景识别成刮痕的图片数量;正检率代表模型正确识别出木板表面刮痕的图片占图片总数的百分比。从表2可以看出,本文提出的模型在测试集上的正检率为95.71%。其中,当待检测图像纹理背景与训练集相同时,真实刮痕正检率达到98%,充分验证了本文提出的刮痕生成方法作为一种数据增强方法的有效性;当纹理背景与训练集不同时,正检率有所下降,表明模型检测能力在纹理背景发生变化时,检测能力有所下降,但正检率仍在90%左右,表明本文提出的模型在检测具有不同的纹理背景的木板表面刮痕时具有不错的泛化能力。不同纹理背景的木板表面刮痕检测效果如图10所示。

图10 不同纹理背景的木板表面刮痕缺陷检测

3.4 消融实验

为验证本文将可形变卷积与旋转包围框标注方式引入Faster RCNN进行改进是否有效,以及改进的双边滤波算法是否能增强模型对不同纹理背景下的刮痕检测能力,本文设计了消融实验。为验证可形变卷积的有效性,本文设计实验1,在相同的参数下将模型残差块中的3×3可形变卷积层替换为原始的3×3卷积层,并在测试集上进行测试。为验证旋转包围框的以及新提出的回归损失函数是否能提升模型对刮痕的检测能力,设计水平包围框+原始IoU损失函数的实验2。为验证改进双边滤波算法是否能提升网络对不同纹理背景下刮痕检测的泛化能力,设计实验3,将未经过纹理背景平滑的图像输入到模型进行训练,使用不同纹理背景的图像对模型进行测试。上述3组实验结果如表3所示。

表3 本文提出的模型改进措施对比

从表3可以看出,将水平包围框改为旋转包围框的标注方式对模型的平均正检率提升最大,且单张图像平均检测时间仅增加了0.02 s,对模型性能提升效果最明显;可形变卷积层将模型检测精度提升了3%,单张平均检测时间增加了0.13 s,对模型的泛化能力提升效果不明显。当测试集图像纹理背景与训练集相同时,是否经过纹理背景平滑预处理对模型检测精度影响很小,但是当测试集的木板图像的纹理背景与训练集不同时,经过纹理背景平滑后再进行刮痕检测,检测精度大幅度提升,因此,纹理背景平滑对提升模型的泛化能力具有非常重要的作用。

为验证模型关键参数敏感性,对可形变卷积层数和预定义锚框数量进行消融实验。实验结果如表4所示。在不同的策略中,“3,4,5”表示将ResNet50的3~5阶段的3×3卷积替换为可形变卷积,“√”表示本文采用的参数策略,锚框数量中括号内表示预设锚框的长宽比,“×3”代表每种长宽比的数量是3个。由实验结果可知,在语义信息不明确的情况下增加可形变卷积层可能会导致假阳性样本增多,从而导致准确率和召回率降低,而且增加可形变卷积层数量会导致计算量增大,训练时间和单张图像平均检测时间增长。因此,本文仅将ResNet5第5阶段的3×3卷积替换为可形变卷积,以保证可形变卷积核的位移量能够从更好的特征进行学习并减少模型计算量。因为刮痕缺陷具有较大的长宽比,进行消融实验时采取了较大的锚框比,结果表明增加随着锚框数量的增加,模型准确率和召回率均有所提升,训练时间和单张图像检测时间也相应增大,但是当锚框数量继续增加时,准确率基本不变,召回率有所下降,训练时间和单张图像检测时间继续增大,所以本文使用锚框高宽比为[1,1/2,2,1/3,3,1/4,4,1/5,5,1/6,6,1/7,7],每种比例的锚框数量为3。

表4 可形变卷积层数和锚框数量对模型性能的影响

3.5 与其他模型比较

为进一步验证本文提出的模型在刮痕检测方面的优越性,对于近几年提出的刮痕检测方法[33-34]以及性能优越的单阶段和双阶段目标检测网络[19,35-38]进行了对比实验,对其算法进行复现并使用本文的训练集进行重新训练,评价指标采用目标检测领域常用的准确率(Precision)、召回率(Recall)、模型训练时间和单张图片检测时间,测试结果如表5所示。

表5 本文提出的模型与其他算法对比

从表5可以看出,本文提出的模型识别准确率和召回率均高于其他算法,与双阶段目标检测网络性能较优的Cascade R-CNN、CBNet以及DetectoRS相比,本文提出的模型与性能最好的相比准确率提高3.15%,召回率提高2.02%,说明本文提出的改进措施对模型刮痕检测能力有较大的提升。本文提出的模型与采用轻量级骨干网络VGG-16的U-Net、EfficientDet以及YOLO v4相比,训练时间和单张图片平均检测时间有所提升,但准确率和召回率远高于单阶段目标检测网络。另外,本文提出的模型单张图片的平均检测时间是0.41 s,能够满足木板加工生产线的实时性要求。

4 结束语

本文提出一种基于Faster RCNN的缺陷检测模型,用于识别和定位具有复杂纹理的木板表面刮痕缺陷。为提升模型对不同纹理背景下的刮痕检测能力,本文提出3种改进措施:

(1)提出改进双边滤波算法对图像纹理背景进行平滑处理;为解决刮痕样本数目少的问题,提出灰度自适应刮痕生成方法进行数据增强;

(2)引入可形变卷积提升模型对不同刮痕形状的特征提取能力;

(3)针对水平包围框下刮痕占比远小于纹理背景占比的问题,引入旋转包围框并设计新的包围框回归损失函数。

将本文提出的模型在真实的木板表面刮痕数据集上进行测试,模型的平均正检率达到95.71%,使用新的纹理背景木板图像进行测试,正检率为90%,表明模型具有不错的泛化能力。对比实验验证了本文提出的改进措施对模型刮痕检测能力有较大的提升,并将模型与其他性能优越的算法进行对比,验证了本文提出的模型在木板表面刮痕检测方面的优越性。除了以上结论,作者在实验过程中还遇到了一些研究问题,计划在后续工作中解决。首先是密集刮痕识别问题,如果两个刮痕距离过近,会被识别成一个刮痕;其次是交叉刮痕识别问题,对于两条交叉的刮痕,预测的包围框并不能完整包围两条刮痕。后续会针对以上问题展开针对性研究。

猜你喜欢

刮痕木板纹理
钳子管道内刮痕对软式内镜再处理质量的影响
基于BM3D的复杂纹理区域图像去噪
木板上的世外桃源
使用纹理叠加添加艺术画特效
TEXTURE ON TEXTURE质地上的纹理
木板
不会上浮的木板
咖啡的妙用
消除凹凸纹理有妙招!
从“刮痕擦迹”谈油画语言中的偶然性元素