一种基于深度学习的轮胎缺陷检测系统*

2022-08-26 09:39顾海军
计算机与数字工程 2022年7期
关键词:均衡化原图轮胎

顾海军 陈 胜

(上海理工大学光电信息与计算机工程学院 上海 200093)

1 引言

随着国家经济的发展,汽车成为越来越常见的交通工具,日常驾驶中,轮胎的质量好坏直接影响人们的生命安全。据国家安全交通部门的数据统计,我国每年由于轮胎发生故障导致的交通事故约有46%,而其中由于爆胎引起的交通事故约占70%[1]。所以厂家有必要在出厂时对轮胎进行审核,检测是否有缺陷。

现如今,很多轮胎制造商对轮胎的检测还停留在人工观察阶段,这样不仅误差难以控制,而且大大降低轮胎检测效率,增加企业生产成本。如果使用计算机对出厂轮胎进行缺陷检测,一方面可以控制厂家检测成本,另一方面可以极大地提高工作效率,减少由于人工观察造成的误判和漏判,使得检测的结果更具鲁棒性和有效性。然而,现有的检测算法存在许多问题,在传统的计算机视觉图像处理中,需要专业的人来设计特征提取器以及分类器,并且特征提取与模型训练是分为两个阶段进行的,这极大地加大了控制人员的检测难度[2]。另外由于轮胎X射线图像本身具有的复杂纹理,比如缺陷纹理、背景底纹和结构性底纹,无形之中加大了缺陷检测的困难,使得检测算法的鲁棒性变差[3]。

在过去的几年中,各行各业的许多专家都通过深度学习的方法对图像进行缺陷检测,并且均获得了非常好的效果。

李树等[4]提出了一种基于深度学习的手机外壳缺陷识别算法,可以通过分类回归得到缺陷位置以及置信度;余永维等[5]以卷积神经网络结构为基础,对复杂射线图像的缺陷识别率超过91%;李江昀等[6]利用采集到的金属板带表面的图像来训练Faster R-CNN 网络,该系统的研发,显著改善了缺陷的检测准确率[7];周欣等[8]提出以小波分解模极大值多尺度边缘检测的核心算法,从不同尺度对轮胎缺陷图像进行了边缘检测,明显优于传统边缘检测的算法。用深度学习检测缺陷相比于传统计算机图像处理在准确率方面有非常显著的提高。

本文提出一种基于深度学习的轮胎缺陷检测系统,对每张经过预处理后的轮胎图像进行固定像素大小的切割,通过视觉图像注释器对分割后的图像进行特征标记,将准备好的训练集和测试集对Mask R-CNN 网络进行自适应训练,最后将训练好的模型用来进行轮胎缺陷检测[9]。相对于传统的轮胎缺陷检测系统,该系统的检测时间更快,检测准确率更高。标记出来的特征图像,可以更好地适用于模型的训练,并且可以同时对轮胎的多个缺陷进行分类与检测。本文轮胎检测模型经过实验验证,可以有效地检测出轮胎的缺陷,证明了它的鲁棒性和有效性。

2 系统总体设计与实现

本文主要对轮胎的杂物缺陷进行检测,一方面对轮胎训练集进行处理,比如图像预处理、固定大小切割、特征标记,使得训练集可以更好的适用于轮胎缺陷检测模型的训练;另一方面通过Mask R-CNN 网络进行缺陷训练,使得训练出来的模型更具有效性和鲁棒性,如图1 所示为该系统的主要检测步骤。

2.1 原始图像预处理

轮胎厂家在采集图像时,由于采集设备以及现场环境的一些影响,往往会使得采集到的X射线图像存在一些缺点,比如噪声大、光线明暗程度、对比度效果不好等等。这些采集到的原始图像,通常不能通过视觉系统直接使用,这就需要工作人员在初始阶段对图像进行预处理操作,从而来减少这些缺点的影响。

在图像分析中,图像的质量会影响后续算法的设计以及分析的精确度。为了让图像中有用的信息表述更清晰,抑制噪声等对后续检测产生影响的特征,提高图像信息可靠性,本文对轮胎图像进行预处理。由于直方图均衡化(Equalization)处理像素分布均匀的图像效果非常好,所以本文运用直方图均衡化的方法对轮胎图像进行归一化处理[10]。在OpenCV 中equalizeHist 函数可以对轮胎图像进行直方图均衡化[11]。

归一化之后图像的灰度值用x 表示,经直方图均衡化后图像的灰度级用y 表示,其中x,y∈[0,1][12]。因为直方图均衡化属于点运算,即可假设如下公式:

其中T(x)为单调递增函数,将x 和y 的概率密度函数用px(x)和py(y)表述,可知y的分布函数[13]:

在其中目标py(y)应当是均匀分布的概率密度函数,则py(y)=1。由上式可得:

以及其离散形式为

经过上述运算后,得知均衡化主要利用累积分布函数进行,利用分数函数的单调递增特性以及其值域为[0,1]的性质,可以有效控制像素灰度映射之间的大小关系,保证均衡化后的图像各部分明暗关系与原图一致。

2.2 图像固定大小切割

将预处理好的轮胎图像原图使用图像切割软件进行固定大小的切割,因为轮胎图像的像素大致为1500*10000 左右,图像太大不适合做目标识别,所以将这样的图像切割为1024*1024 大小像素,图像切割的重叠部分为150*150 像素。之所以切割时要重叠一部分像素,主要是因为一些缺陷可能会在图像分割的时候出现缺失,这样可以保证每个缺陷都有所体现。

本文采用splitimage 图像切割软件对轮胎图像进行分割,该方法可以很好地切割过大的图像,并且对重叠部分可以有所保留[14]。在深度学习中,足够多的训练样本将直接影响训练结果的好坏,可以有效地避免严重的过拟合。

2.3 图像缺陷标记

本文采用视觉图像注释器(VGG Image Annotator,VIA)对轮胎图像进行标记,VIA 是一个图像标记工具,由Visual Geometry Group开发,可用于定义图像中的区域并创建这些区域的文字描述[15]。利用VIA 的标注工具标记出ROI区域,结束后导出相应的json 文件,最终会通过坐标形式的数据体现。然而,Mask R-CNN 只能读取坐标,所以可以直接应用到Mask R-CNN 中,无需额外的转换。精准的标记出ROI,会使得模型训练阶段更加得心应手,使得训练出来的模型鲁棒性很好[16]。

本次实验中,将数据集划分为训练集、测试集以及验证集,由轮胎杂物缺陷图片以及对应的json文件当作训练集来训练我们的网络,验证集则是除训练集之外的图片及其对应的json 文件来验证并比较,挑选出拥有最佳权重(一般为loss 最低)的模型,最后用测试集在最终的模型上去进行测试。

2.4 Mask R-CNN模型自适应训练

为了迅速找出存在缺陷的轮胎,本文运用了Mask R-CNN 网络,它同样继承了Faster R-CNN 的RPN 部分,但是在有些部分还是做了略微的调整,使得检测,分类的效果更好,如图2 所示,为Mask R-CNN 的网络结构图。将最后选取出300 张轮胎图像作为训练集放入Mask R-CNN 模型中进行自适应训练。

如图2所示,将训练集输入至神经网络中,获得轮胎图像不同阶段对应的特征图(Feature Map)[17]。其中使用了深度残差网络(R-FPN),该网络使用具有横向连接的自上而下架构,从单一尺度输入构建网内特征金字塔,可以更好地获得轮胎图像的特征图[18]。

图2 Mask R-CNN的网络结构图

传统的R-CNN 网络架构为了提高学习速度和效率一般只关注ROI,每个ROI 单独评估卷积网络,进行训练和预测。然而在Mask R-CNN 网络中,得到轮胎图像的特征图后,我们对特征图中的每一个点设定多个ROI,这样就会存在多个候选ROI。正因为用Anchor 框标记出来的ROI 太多,存在一些假阳性或者假阴性。因此,需要将候选ROI送入深度全卷积网络(RPN)进行二值分类和边框回归过滤,生成的新ROI就是RPN从每个像素点所生成的Anchor 框中选取的一部分Anchor 框[19]。该步通过RPN 过滤掉一些无谓的Anchor 框,轮胎图像上面每一个像素点都会生成一个Anchor 框,框会非常的多,不利于选择ROI,所以利用RPN 过滤掉一些框,使得留下一部分框,更有利于ROI 的选择,以及接下来的Align 操作。比如过滤掉轮胎图像的一些标记错的ROI,使得留下来的ROI 更加准确。

在得到过滤后的ROI 后,对其进行ROI Align操作,即先将原图和特征图的像素值对应起来,然后将特征图和固定的特征对应起来,可以准确地对ROI 标记。经过ROI Pooling 的操作,会使ROI 与原图对应不上,由于该操作是直接通过round取值,而使用ROI Align 操作,可以很好地弥补这一缺憾。在轮胎检测中,所确定的一部分ROI 候选框,可能不会很好地对齐在轮胎原图上,有些可能会圈到缺陷的边缘,有些也可能从缺陷中间圈过,ROI Align可以更好地对齐轮胎原图,使得ROI候选框圈的更加准确。

将经过ROI Align 操作的特征图进行大小固定,将ROI分割为N*N个单元,其中N取7。由于输出的ROI的大小不一样,后续步骤中的方框标记以及分类都需要输入的图像维度大小必须一致,所以通过该步骤保证了轮胎图像维度和大小的一致性。

最后将维度和大小统一好的轮胎图像输入到方框标记模块(对轮胎缺陷部位进行方框标记)进行训练,这时会输出一个轮胎缺陷检测模型。

本文中Mask R-CNN模型的训练损失函数为

式中,Lfinal表示训练损失函数,Lcls表示边框的分类损失值,Lbox表示边框的回归损失值,Lmask表示Mask 部分的损失值,其中Lbox和Lmask都是对positive ROI才会起作用。

3 实验结果分析

本文算法是在3.20 GHz Intel Core i7-8700 CPU and Titan XP 12G GPU的硬件和Win10 and Python 3.6.5 platform的软件配置下进行实施的。

本文利用MS COCO 数据集上获得的权重来初始化模型,使用随机梯度下降法训练[20]。迭代次数为400,每次迭代步长为10,动量设置为0.9,学习速率为0.001。其中批量大小设置为1,置信度设置为0.9,小于该置信度的检测框将直接跳过。将最后选取出300 张轮胎图像作为训练集放入Mask R-CNN 模型中进行自适应训练,取75 张作为验证集。训练集与验证集的比例为8∶2,数据集的像素大小为1024*1024。

检测结果如图3所示,其中图(a1)、(a2)、(a3)、(a4)是轮胎经过预处理,分割后的原图,图(b1)、(b2)、(b3)、(b4)是轮胎标记后的图像,图(c1)、(c2)、(c3)、(c4)是轮胎杂物缺陷检测的结果图。由图可得,轮胎杂物缺陷被有效检测出来,但并不是每一张图的杂物缺陷都可以完全检测准确。

图3 轮胎杂物缺陷检测实验结果

如表1 所示,为本文方法与其他相关方法之间的性能比较。由检测率数据可以看出在轮胎杂物缺陷检测的各种算法之中,本文算法的检测率高于其他算法。

表1 本文方法与其他相关方法之间的性能比较

4 结语

本文提出一种高精度的轮胎缺陷检测系统,通过训练好的Mask R-CNN 模型对轮胎图像进行缺陷检测,通过实验可以发现,本文算法可以准确地检测出轮胎杂物缺陷。在方法实现中,使用图像分割软件对预处理后的图像进行固定像素大小的切割,同时运用视觉图像注释器对分割后的图像进行标记,使得在训练模型时,能够获取足够数量的训练样本,避免过拟合问题。与现有技术相比,该系统有效地解决了漏检率,误检率高,人工检测效率低的问题,可以满足轮胎厂家对轮胎杂物缺陷检测的问题。在接下来的研究中,会对轮胎其他缺陷进行特征标记,完善模型,达到同时分类与检测缺陷的效果。

猜你喜欢
均衡化原图轮胎
轮胎没气会很快成为历史吗?
完形:打乱的拼图
“蜂窝”住进轮胎里
找一找
大轮胎,玩起来
暴走的轮胎
基础教育均衡化的实施对于现阶段教育发展的重要性
跨越平凡
巧拼火柴棒
EDIUS 5.1音量均衡化