APP下载

缺陷汽车玻璃检测方法

2021-10-05梁椅辉

智能计算机与应用 2021年5期
关键词:汽车玻璃灰度准确率

陈 晨,董 帅,梁椅辉,邹 昆

(电子科技大学 中山学院,广东 中山528400)

0 引 言

随着汽车行业的高速发展,汽车玻璃需求大增,每年以20%的增长率不断增加,中国汽车玻璃在全球市场份额占比高达25%以上。汽车玻璃生产过程中由于尺寸大、设备切割不精细,容易引起不规则断裂、划痕、轮廓不方正等缺陷如图1所示,给企业生产效率造成较大影响。目前很多企业依靠人眼识别,不仅无法保障识别准确率,同时也浪费巨大人力。

图1 玻璃断裂、轮廓不方正等缺陷Fig.1 Defects such as glass breakage and irregular contour

随着计算机技术的飞速发展,很多学者提出采用计算机视觉方法进行检测,张彩霞结合边缘检测、Otsu阈值分割、K均值聚类算法对缺陷标记[1];Rosli提出传统图像处理方法检测[2];Zhou,Xianen提出利用小波变换和频域方法进行检测[3];Yao则使用特殊的光配合视觉算法进行检测[4]。近些年随着深度学习的兴起,许多学者使用深度学习来提高识别准确度,例如Xiong,Honglin提出多尺度卷积神经网络进行玻璃表面检测[5];亓手动设计特征提取和识别,再使用简单的BP网络进行缺陷分类[6];Tao,Zhang提出提取玻璃的敲击声,并通过复杂变换提取特征,最终使用神经网络进行缺陷分类[7],该方法主要针对玻璃内部结构缺陷,非表面缺陷。总体而言深度神经网络相关方法优于传统方法,但其准确率是需要足够多的缺陷样本支撑,本文也提出相应方法解决该问题,同时在神经网络分类功能部分使用多分类,有效提高检测准确率。

1 缺陷样本自动生成

众所周知,深度学习的强大来源于大量高质量的数据作为驱动,因此采集大量高质量玻璃正负样本可以有效提高模型对缺陷的识别率。实际生产中玻璃缺陷样本较少,人工采集需要大量时间极其不方便,本文提出一种方法来解决该问题。首先定义缺陷类别为6种,见表1,包括了生产中常见缺陷类型。

表1 自定义常见缺陷类型Tab.1 Customize common defect types

1-2号缺陷生成方法:首先选取标准图玻璃矩形框的4个顶点,随机选择矩形框一边(边的2个端点为AB)随机中间一点,随机修改该点距离这条边(AB)的距离,得到新的点C,分别拟合3点A,C,B得到新的曲线边,生成新的边缘轮廓,2号缺陷增加曲线的弯曲幅度;3号缺陷生成方法:对玻璃的左右两边重复1-2号缺陷生成方法;4号缺陷生成方法:对玻璃的左右2边,各分别随机2个点,因此每条边共有4个点,再分别对这4个点进行贝塞尔曲线拟合,当随机的点距离边越远,得到断裂效果越严重;5-6号缺陷生成方法:对玻璃的4个角随机选择一个角,在角两边分别选择2个靠近角的点A、B,再在角内随机选择一个点C,分别连接AC、CB,生成2个新的边得到一个缺角。生成的边框效果如图2所示。

图2 自左往右、自上而下分别为1-6号生成缺陷边框Fig.2 Defect borders are generated from left to right and top to bottom respectively for No.1-6

根据生成的边框,可以生成缺陷图,公式(1)如下:

其中,⊙符号表示像素位上前值存在,则保留后图片该像素位上的值,&符号表示像素位上该值存在,则将其复制给后图片该像素位上。生成的缺陷图如图3所示。

图3 生成1-6种缺陷样本Fig.3 1-6 types of generated defect samples

2 基于深度学习缺陷检测系统

为了有效检测玻璃缺陷,尝试了不同方法的结合。首先将玻璃原图进行灰度化得到灰度图,灰度图通过抠图去噪后与原灰度图相叠加得到叠加图,叠加图作为深度神经网络的输入,最后输出原图的预测结果,即是否包含缺陷,系统框架设计如图4所示。

图4 系统框架设计Fig.4 System framework

2.1 抠图去噪

采集的玻璃图由于受车间光线不均衡、玻璃是极易反光材质、金属滚动传送装置的反光等影响,产生了较多的反光点,这些反光部分通过神经网络学习会误认为是缺陷部位,影响检测准确度,因此滤波去噪是必要图像预处理步骤;其次,需要去除图片中玻璃周围不相关的部分,使用抠图算法抠图,切割玻璃部分出来,去噪抠图处理后效果如图5所示。

图5 去噪抠图处理前后效果Fig.5 Effect after denoising and matting

其中去噪方法选择使用双边滤波算法[8],相比高斯算法而言,该算法结合了空间距离与灰度距离对卷积核权重进行计算,滤波效果对保留边缘更有效,算法公式(2)如下:

其中,Wp是归一化项,I(x)‖)gs(‖xi-x‖);I是输入的原始图像;x是当前需要过滤的像素坐标;fr是平滑灰度值差异的范围内核;gs是平滑几何差异的空间内核;Wp的权值由灰度差异值和几何空间差异值共同决定。

2.2 图像叠加

实验中原始图像灰度化后直接输入神经网络训练、预测得到的准确度并不理想,由于原始图像玻璃的反光以及玻璃外围的噪声对于神经网络提取特征造成影响,因此本文对灰度图进行了去噪抠图预处理,处理后的图像虽然减少噪声干扰,同时也对玻璃裂缝特征做了平滑处理,降低了特征的显著性,所以考虑如何保护玻璃裂缝原有的特征以及有效去掉反光噪声。玻璃裂缝出现位置处于玻璃边框附近,因此可以将灰度图玻璃边框附近像素保留,其它部分填充去噪抠图后的像素值,如图6所示。

图6 去噪抠图后的图片中黑色区域填充灰度化后图片Fig.6 The black area in the picture after denoising and matting is filled with grayscale picture

2.3 多分类神经网络

缺陷检测基本目标是判断玻璃的好坏类别,这是一个典型二分类问题。实验中发现训练过程中容易出现过拟合现象,尝试采取将二分类判别问题转为多分类判别问题[9],一方面解决过拟合问题,另一方面引导模型更好的学习缺陷的不同特征,具体按照表1所示对玻璃图片进行标注。

其次,在模型选择方面尝试了多种经典模型框架进行训练,结果表明神经网络层次太大的模型不利于特征的学习,反而层次小的模型学习效果更好,因此缺陷检测系统中的模型选择网络层次较浅的AlexNet作为基本框架,结构如图7所示。

图7 多分类卷积神经网络设计Fig.7 Multi-classify cnn

其中包括5个卷积层和3个全连接层,第一层的卷积核尺寸为11×11,第二层的卷积核尺寸为5×5,第三至五层卷积核尺寸均为3×3,前2个全连接层输出个数为4 096,最后一个全连接层输出个数为7,即玻璃的7种类别,激活函数选择ReLU激活函数,计算更简单且模型更容易训练。

3 实验和结果分析

3.1 二分类网络与多分类网络选择

为了提高分类的准确率,实验对比了多分类与二分类的准确度,实验环境为:Pytorch1.0、Alexnet网络模型、损失函数为交叉熵损失、优化算法为Adam算法、学习率为0.000 1,实验结果如图8所示。

图8 多分类与二分类预测结果对比Fig.8 Comparison of multi-classify and binary-classify

其中,多分类情况下预测准确率在epoch值为25后稳定在89%,二分类情况下的预测准确率在epoch值为25后稳定在76%,多分类比二分类的预测准确率提高了约24%,因此该问题转为多分类问题可以有效提高准确率,将玻璃缺陷细分有利于模型对于缺陷特征进行学习。

3.2 神经网络的选择

图片的分类网络目前可选的有很多,如LeNet、AlexNet、VGG、ResNet、DenseNet等,主要区别是网络的层次深度不同,本文选取了层次较浅AlexNet网络与层次较深的ResNet网络进行对比,发现ResNet在训练集上效果非常好,但是在测试集上分类效果一般,这种情况一般是出现了过拟合,主要原因可能是ResNet网络层次较深,两者的预测结果对比如图9所示。

图9 AlexNet与Resnet预测结果对比Fig.9 Predict result comparison between AlexNet and Resnet

3.3 对比其他方法

本文也尝试了其他网络分类,其结果对比见表2。实验环境:Pytorch1.0、epoch为30、训练集正负样本各4 000张、测试集正负样本各1 000张、损失函数为交叉熵损失、优化算法为Adam算法,学习率为0.000 1。对于玻璃这种图形简单、缺陷特征较明显的分类问题,在小模型上分类结果较好,因此本文最终选择多分AlexNet作为神经网络模型。

表2 多种方法结果对比Tab.2 Result comparison of methods

4 结束语

目前汽车玻璃缺陷需要大量人工检测,不仅浪费人力且准确率不高,本文提出一个汽车玻璃缺陷检测系统用于改善该问题。该系统使用深度学习方法进行缺陷检测,深度学习特征学习本质上是由数据驱动的,但缺陷样本十分有限,故提出一种人工合成缺陷样本的方法,增加深度学习的样本数据集容量;将数据集缺陷细分成6类,深度学习网络选择AlexNet这种浅网络进行多分类;其次,在图像预处理阶段,将原图像灰度化并使用去噪抠图等技术合成网络模型的输入图,可以有效降低原图中的噪声,如玻璃的反光。该系统经实验验证,在汽车玻璃数据集上分类的准确率达到89%,可以实时进行玻璃缺陷检测。不足之处是准确率还是不够高,后续可以增加实际断裂玻璃数据集数量以及使用对抗生成网络生成缺陷样本,进一步完善缺陷检测系统。

猜你喜欢

汽车玻璃灰度准确率
基于二值化灰度图像的大豆蛋白液喷雾相对雾化程度的研究
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
天津港智慧工作平台灰度发布系统和流程设计
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
Arduino小车巡线程序的灰度阈值优化方案
福耀在美设立世界最大汽车玻璃单体工厂
汽车玻璃
一种基于灰度分割的调焦评价函数