APP下载

基于FasterR睠NN的铝材表面瑕疵检测

2021-07-01季忠源李丹美

科技风 2021年16期
关键词:深度学习

季忠源 李丹美

摘 要:为了解决工厂实际中遇到的铝材表面缺陷问题,本文介绍了基于RCNN上发展的Faster RCNN与Cascade RCNN算法,并且简要概述了利用特征金字塔网络来解决Faster RCNN在处理多尺度检测问题上的不足,还提出了通过改进RPN来加强Faster RCNN的检测准确率,利用残差网络ResNet50替换了原始网络,增强其检测效果。

关键词:深度学习;Faster RCNN;Cascade RCNN;瑕疵檢测;残差网络

,因为多方因素的干扰,铝材表面会出现多种缺陷,例如脏点、起坑、喷流等各种表面瑕疵[1],这些表面存在的缺陷会使得铝材在实际的使用过程中受到不同程度的影响。为了铝材在工业实际应用中不会出现问题,造成各种事故或者导致各种工程存在缺憾,检测铝材表面是否存在明显瑕疵的需求日益壮大。但是传统地利用工人肉眼检查十分费时费力,并且还可能出现错漏,效率低下的同时还要付出极大的人工成本。所以,各大工厂将目光投向了近几年技术发展异常迅猛的深度学习领域[2],开展了为数不少的图像识别竞赛,想要将图像识别项目落实于工厂实际,为工业领域做出贡献。人工智能领域技术的革新让不少铝材商人看到了机会,本文将探讨现有的深度学习算法检测铝材表面瑕疵的实际过程,并且对现有算法进行一定改进,使得其更贴合于工业实际应用。

1 基于RCNN的目标检测算法

1.1 Faster RCNN

Faster RCNN[3]是目前在目标检测领域应用十分广泛并且地位相当高的一种Twostage的目标检测算法。Faster RCNN可大致概括为两个步骤,第一步通过RPN来获得输入图像的感兴趣的区域ROI,接着Fast RCNN网络会检测和分类之前初步得到的ROI。相比起一些Onestage的算法,faster RCNN的检测效果要更加地精确,但是在检测速度上可能会落后于一些Onestage的算法。

上图1为Faster RCNN的网络结构,主要由以下四部分组成:(1)对输入图片进行特征提取,并且输出其特征的卷积层。(2)初步划分设定的感兴趣区域,代替了Fast RCNN中的Selective Search用于产生建议窗口的RPN网络。(3)对不同的输入的图片进行转换并且输出固定大小的ROI Pooling层。(4)精确定位每个图像中的候选的特征,输出特征的类别并且加以定位的分类和回归层。

1.2 Cascade RCNN

Cascade RCNN[4]是近两年来在RCNN算法的基础上,加以拓展的用于目标检测的新算法。其算法的主要思想是利用不断提高的IoU(intersection over union)阈值,在样本数保持不变的情况下不断训练,来得到高精度的检测器,级联多个RCNN检测网络来达成检测的目标。这个目标检测算法还是通过分类与定位两个步骤来实现检测。

Cascade RCNN的网络结构在Faster RCNN的网络结构上进行了延伸,首先是将用于提取候选区域的子网络H0用于一整张输入的图片,然后是用于ROI检测的网络H1会得到分类分数和边界框。Cascade RCNN中的模型是将前一个步骤中的输出用来训练,而不是与之前的Faster RCNN网络一样对最早输入的图片数据进行训练。利用调控不同的IOU阈值来得到想要得到的数据,这是Cascade RCNN的一大优点。

总的来说,Cascade RCNN由四个阶段组成,分别是一个RPN与三个检测IOU阈值为0.5、0.6、0.7的网络。

该网络的特性可以概括为以下三点:(1)调高IOU阈值的同时,网络的检测能力会降低,这是因为提供的训练样本数量呈指数减少,导致了过拟合。(2)这是一个极具创新性的级联RCNN,由一系列的检测器组成,这些检测器会随着IOU阈值的提高而训练。(3)每一个级联的RCNN网络都设有不一样的IOU阈值,这使得结果精确度得到了提高,并且作为下一级网络的输入,来不断地提升网络的精确性。

2 改进Faster RCNN

2.1 重新定义anchor框尺寸

工业中使用的铝材在多方因素干扰下,会生成较多种类的瑕疵,较容易分辨的分为不导电、擦花、漏底、脏点、起坑、喷流、桔皮、角位漏底、漆泡、杂色共十类瑕疵。每种瑕疵对应的部位、分布面积均有细微差异,而且多种瑕疵密集分布时可能使得检测框出现重叠情况,导致检测结果不理想。所以为了能够适应不同种类瑕疵的检测情况,我们需要重新设计anchor框的长宽比以及尺寸来产生较为合适的建议区域。

模型中原有的anchor框长宽比固定在2∶1、1∶2、1∶1的比例,但是铝材中存在桔皮、擦花等大面积不规则瑕疵,例如桔皮瑕疵如果在检测过程中将anchor框比例设置在5∶1会得到更好的检测准确度结果。

2.2 使用特征金字塔网络

在原始的Faster RCNN网络中仅仅利用了单个高层特征,即RPN只选择特征提取网络中最后一层的特征,这种方式在大目标检测时有很好地发挥,但是对于像素信息十分少的小型目标来说,其信息在采样的过程中十分容易丢失,导致检测精度的减小并且会出现不少检测错误。为了解决检测小目标困难的问题,常用的办法是使用图像金字塔来对多尺度变换进行增强,但是图像金字塔会使计算量急剧增加,所以文中选择了特征金字塔网络结构来改进Faster RCNN在多尺度变化检测上的不足。

常见的图像金字塔结构能够对输入的每一尺度的图像进行特征提取,能够解决大多数的多尺度变化问题,但是其运行时间过长,而且运行期间会占用大量内存使得它在实际应用中不可行。而SSD中也存在一定的问题,例如网络中的低层会存在特征图信息不足,分辨率不高等缺陷。

为了解决这些常见的问题,我们所使用的特征金字塔(FPN)网络结构中每一层不同尺度的特征图像都具备足够的信息。FPN能够在仅增加较少计算量的同时解决多尺度变化问题。

2.3 利用resnet50替代原始网络

原始Faster RCNN采取VGG16网络为特征提取网络,在模型训练期间将网络中提取到的误差进行反向传播从而使权重得到更新,但是这样的过程在小目标检测时会产生两个严重的问题:(1)瑕疵检测中目标瑕疵过小,所携带信息容易在特征提取的过程中丢失,导致检测结果不理想。(2)不断加深的网络深度中,会导致反向传播过程中的梯度发生弥散甚至会使得梯度消失。

为了防止上述的问题出现,本文提出更换特征提取网络,选择了另一种resnet50残差网络。ResNet利用捷径连接将输入与输出进行跳层连接,将单元的输入输出加在一起进行激活,通过这种操作模型会学习到映射后相对于原来的偏差,这种结构可以使小目标缺陷在深度网络中存活更长时间。

上述为resnet50的网络结构,由于加入了大量跳层连接,训练过程中会保留更多的小目标瑕疵信息,在检测效果上会得到优化。

3 结论

为了加大深度学习算法在检测铝材瑕疵的工业实际上得到灵活运用,本文介绍了Faster RCNN与Cascade RCNN的基本原理,并且分析了其优劣与网络结构区别。还在Faster RCNN的基础上提出了算法改进,使其能够更加充分灵活地应用于铝材这类小目标瑕疵的检测。

参考文献:

[1]張旭.基于深度卷积神经网络的铝材表面缺陷检测[D].华东理工大学,2020.

[2]魏若峰.基于深度学习的铝型材表面瑕疵识别技术研究[D].浙江大学,2019.

[3]Ren S,He K,Girshick R,et al.Faster RCNN:Towards RealTime Object Detection with Region Proposal Networks[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2017,39(6):11371149.

[4]Zhao W,Huang H,Li D,et al.Pointer Defect Detection Based on Transfer Learning and Improved CascadeRCNN[J].Sensors,2020,20(17):4939.

作者简介:季忠源(1996— ),男,汉族,浙江温州人,硕士,研究方向:图像识别。

猜你喜欢

深度学习
从合坐走向合学:浅议新学习模式的构建
面向大数据远程开放实验平台构建研究
基于自动智能分类器的图书馆乱架图书检测
搭建深度学习的三级阶梯
有体验的学习才是有意义的学习
电子商务中基于深度学习的虚假交易识别研究
利用网络技术促进学生深度学习的几大策略
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究