基于遗传卷积神经网络的微小零件缺陷分类
2021-09-02陶沙司伟王奎
陶 沙 司 伟 王 奎
(1.铜陵学院,安徽 铜陵 240061;2.中国联合网络通信有限公司,北京 100032)
随着我国工业的发展,尤其是纳米和集成技术的不断进步,对其检测的精度和速度要求越来越高,受到人主观性影响,检测结果往往存在一定偏差,传统的利用显微镜测量显然已经达不到要求。随着计算机的发展,利用计算机视觉去测量微小零件可以获得较高的精确度,但是这种方法有一定的局限性,是由于缺陷特征的选取需要人为的进行,必然会造成测试的准确率有所偏差,卷积网络的诞生解决了测量精度低的问题,为零件检测提供了新的方法。
卷积神经网络是深度学习[1-2]的一种,最近发展比较迅速并广泛应用于各个行业当中。20世纪60年代,Hubel和Wiesel在研究猫脑皮层中用于局部敏感和方向选择的神经元时发现其独特的网络结构可以有效地降低反馈神经网络的复杂性,继而提出了卷积神经网络(Convolutional Neural Networks-简 称CNN),卷积神经网络相对别的神经网络有自己的优势,尤其在图像分类上,检测的准确率相对较高。比如在ILSVRC2012比赛事中,Alex Krizhevsky等提出的Alex Net就是以卷积神经网络作为模型对任务进行分类,准确率比第二名高10%,随后又提出VGGNet-Goog Le Net等新的网络结构,进一步提高了准确率。
针对以上问题,本文提出了一种基于遗传算法(GA)优化的卷积神经网络混合模型 (GA-CNN)算法。遗传卷积神经网络的高精度零件缺陷分类结构如图1所示,利用CCD视觉采集图像并对图像进行预处理以及样本标注,对采集到的表面缺陷数据通过遗传卷积算法简称(GA-CNN)进行试验性训练,其中预处理是利用局部区域假设的亚像素边缘算法去提高采集零件图像边缘的清晰度。样本标注针对零件的划痕、残缺、端口进行分类,对处理后的零件进行标记以便于遗传卷积神经网络的缺陷分类。遗传算法解决了训练容易陷入局部最小值、收敛速度慢等问题。基于遗传卷积神经网络明显提高了测量精度,解决了单一的网络模型预测精度不高的缺点。
图1 零件缺陷分类系统框图
一、数据预处理
本研究采用的是局部区域假设检测算法对采集的数据进行预处理,这种处理数据得到的图像精度高,有利于神经网络对零件缺陷的分类。
(一)图像采集
如图2所示,图像采集是利用CCD相机视觉抓取技术抓拍待测工件,由于相机的亮度有限以及捕获图像不够完整,所以图像要进行预处理,相机是采集图像的重要设备,选择合适的相机可以在一定程度上提升采集到图像的质量。采集的相机参数如表1所示。
表1 相机参数
图2 测试环境
(二)图像预处理
在本文中检测的零件边缘清晰度对于后面GACNN算法缺陷分类是很重要,需要进行边缘检测[3-4],主要原理如下:图像的边缘形状可以由近似曲线表示,近似曲线可以用方向,曲率,距离等参数表示。假设曲线边缘y=a+bx+cx2由来表示,以3×5的区域进行研究,如图3所示,L,M,R分别表示直线下方每列面积,计算公式如式1,2,3所示:
图3 曲线边缘3×5的区域图
SL,SM,SR表达式与直线相同,从而可以得出系数a,b,c的表达式,如式4,5,6所示。
由上述3个公式得到的三个特征参数,可以算出边缘曲率表达式为:
图像边缘检测作为图像处理中最基本的操作,但却具有十分关键的作用,边缘能显示图像的大致轮廓,具有很多有用信息,后续的图像特征提取,识别定位,测量拟合都是基于图像边缘进行,因此准确的提取图像的边缘在零件检测中至关重要。图像中灰度值变化较大的边界即为图像的边缘。
二、算法模型
本文采用遗传算法(GA)优化后CNN算法模型,卷积神经网络提取数据的空间特征,网络的权重系数和偏置值由GA更新计算,替换了传统的梯度下降法的训练方法,使得整个训练学习的过程得到了优化,可以有效提升该系统对于图像识别的效率,从而减少图像识别误差,下面介绍卷积神经网络和遗传算法。
(一)卷积神经网络结构
卷积神经网络[5-8](CNN)是一种前馈网络,该网络模型通过采用梯度下降法最小化损失函数对网络中的权重参数逐层反向调节,通过频繁的迭代训练提高网络的精度,网络结构主要分为输入层,隐含层和输出层。其中隐含层包括卷积层(C)、下采样层(S)和全连接层,如图4所示,输入层用来提取特征,可以处理多维数据。卷积层对输入数据进行特征提取,其内部包含多个卷积核构,卷积层参数包括卷积核大小、步长和填充,三者共同决定了卷积层输出特征图的尺寸。下采样层是对特征选择和信息过滤,全连接层主要作用就是对网络进行分类,输出层直接输出每个像素的分类结果。
图4 卷积神经网络
(二)遗传算法
遗传算法[9]具体是针对卷积神经网络的卷积层和全连接层的初始权重,由遗传算法生成多组权重,经过选择、交叉和变异操作得到的最优权重,用这些权重作为初始权重,其效果要优于最陡下降算法随机选择的初始权重。同时,由遗传算法生成的多组权重可以构建多个卷积神经网尺络分类器,将这些分类器联合在一起进行分类,可以进一步降低分类错误率。
如图5所示对于初始化群中适应度计算,进行选择、交叉和变异。假设神经网络卷积层数为k,第i个卷积层掩膜数量为2i-1,那么总的掩膜数量为,卷积层总的权重数量为生成的GA算法染色体位数如式11所示,
图5 遗传算法流程图
GA算法位数的前位用于编码卷积掩膜,位用于初始化全连接层,遗传算法与卷积神经网络的混合方式,根据上述原理计算染色体编码以及染色体的适应度值。
三、实验结果分析
实验对本文提出的GA-CNN算法模型进行测试,同时与未优化的CNN神经网络模型的预测结果进行比较。本文主要对零件的划痕、残缺、断口和无缺陷四种情况进行分类,分类之前要对缺陷进行标记,标记包括缺席的名称、尺寸和位置坐标,主要用于神经网络进行检测学习。选用Caffe[10]作为实验用深度学习架构去实现卷积神经网络。通过前面的理论学习,把卷积神经网络结构分为卷积层5个,3×3卷积核;下采样层4个,2×2大池化;全连接层2个,共11层网络。对500个零件图像进行按照训练、验证、测试集的占比大致60∶20∶20的比例进行划分,分别利用卷积神经网络和遗传卷积神经网络进行缺陷分类,两种网络训练准确率如图6所示。
图6 缺陷分类网络准确率
单一卷积神经网络和遗传神经网络在测试集上缺陷的分类准确率如表2,3所示。
表2 单一卷积神经网络网络测试分类准确率
表3 遗传神经网络网络测试分类准确率
通过上述实验可以说明,遗传神经网络模型比单一神经网络模型要比测试的分类准确率要高。
四、结论
本文利用利用基于局部区域假设检测算法获取图像,获取的图像进行卷积算法进行分类,在此基础上加入混合型遗传算法,用改进后的算法对工件的区域进行测量,通过数据处理和算法模型实验分析表明:利用基于局部区域假设检测算法,提高了图形获取的精度,误差小,遗传卷积神经网络模型,改进了传统梯度下降法的训练缺点,比未经优化的单一神经网络算法模型表现出更高的预测精度。综合上面所述,遗传卷积神经网络在现代制造业零件检测中具有一定的应用价值。