APP下载

基于机器视觉与深度学习的飞机防护栅裂纹检测系统

2023-03-21张良安陈洋谢胜龙刘同鑫

兵工学报 2023年2期
关键词:栅格卷积裂纹

张良安, 陈洋, 谢胜龙, 刘同鑫

(1.安徽工业大学 机械工程学院, 安徽 马鞍山 243000;2.安徽省工业互联网智能应用与安全工程实验室, 安徽 马鞍山 243023;3.中国计量大学 机电工程学院, 浙江 杭州 310018)

0 引言

飞机防护栅作为飞机发动机进气口的防护装置,能有效阻止沙石等外来物被吸入进气口,为飞机发动机叶片正常工作提供保护作用[1-2]。但在其使用过程中,不可避免地会受到高速气流所产生的应力作用和外来物的冲击,从而产生不同程度的裂纹。如果不及时发现并维修,则防护栅网格可能因此断裂并失效,引起沙石等外来物吸入进气口,造成发动机叶片损伤,进而导致严重的飞行事故。因此,实现飞机防护栅裂纹的快速检测十分重要[3-4]。

目前,在飞机疲劳试验中裂纹的检测手段主要包括人工检查、涡流和超声波等[5-7],这些方法因防护栅的特殊结构在检测效率和检测精度上都受到了极大的限制。机器视觉检测构成主要为相机、镜头、光源、图像处理软件、控制系统等,通过对工业相机采集到的图像进行相应的图像处理,根据反馈得到检测结果。机器视觉检测为无接触测量面,对被检测的物体材料和形状等都无特定的要求,因此应用广泛。随着机器视觉技术的快速发展,深度神经网络在分类、检测和识别方面的检测效率和精度都得到了大幅提升[8]。相比传统的机器学习需要预处理和人工提取特征等一系列复杂操作[9],深度学习只需要构造卷积神经网络,神经网络就会主动学习图像特征,从而完成特征提取,为裂纹自动化检测提供了一条新的解决路径,因此引起了国内外很多学者的关注。陈波等[10]对图像处理和卷积神经网络进行了研究,实现了对坝面裂纹的识别。Zheng等[11]设计开发了一种使用有限数量的训练图像进行轨道表面裂纹检测的深度迁移学习框架。王森等[12]为实现复杂背景下裂纹目标的有效检测及降低错误标记,将全卷积网络(FCN)引入图像裂纹检测中,并针对裂纹检测实验中FCN模型存在丢失局部信息和丧失部分精细化区分能力的问题,构建了一种Crack FCN模型。吕帅帅等[13]为了解决飞机结构构型多样及疲劳试验环境复杂等问题,提出了一种基于关键结构定位的检测策略,并以区域卷积神经网络为基础对模型架构和非极大值抑制模块进行了适应性改进,提出了一种裂纹自动识别方法。以上研究均表明图像处理与深度学习技术对裂纹的检测具有很好的效果,但目前在飞机防护栅的表面裂纹检测中尚未见到相关应用。

本文基于机器视觉技术设计了一种飞机防护栅裂纹检测装置,并结合图像处理技术与深度学习原理提出了一种飞机防护栅裂纹检测算法。在自制防护栅裂纹数据集的基础上,分别采用ZF-Net、VGG-16和ResNet-101卷积神经网络作为Faster-RCNN特征提取网络,开展了防护栅表面裂纹对比研究,并得出相关结论。

1 检测系统设计

1.1 防护栅结构

本文研究的飞机防护栅实物如图1所示,图1(a)所示为飞机防护栅正面实物示意图,图1(b)所示为其反面和槽面实物示意图。该防护栅由1.8 mm厚度的钛合金板材加工而成,其表面分布有9万多个2.5 mm×2.5 mm的小网格,网格之间的格框宽度仅为0.55 mm,且裂纹非常细小,有的裂纹宽度仅有10 μm左右,多分布在防护栅网格与网格之间的分界处,检测环境复杂。飞机防护栅这种结构特点给人工检测带来了极大的难度,而传统的无损检测技术(如超声波和涡流等)也因这种结构特点无论是在检测效率还是检测精度上都受到了极大的限制。而机器视觉因为其检测的无接触性、精度高和现场抗干扰能力强等突出的优点,在这种困难检测条件下能较好地完成裂纹检测任务。

因此,研究新型飞机防护栅裂纹自动检测系统以代替传统的检测手段,具有非常重要的意义。

图1 飞机防护栅结构示意图Fig.1 Protective grill structure

1.2 检测系统

飞机防护栅裂纹检测装置如图2所示,它由高精密三坐标机器人控制系统、末端相机装载装置、数字成像系统和计算机平台组成。

图2 检测装置Fig.2 Detection device

高精密三坐标机器人移动控制系统由1台工控机和7组高精度驱动控制平台组成。每1组精密驱动控制平台都由1个伺服驱动器、1个伺服电机组成,7组高精度驱动控制平台统一由1块PCI运动控制卡控制。防护栅放置平台如图3所示,3组高精度驱动控制平台可使该放置平台进入设备内部,并且可沿x轴、y轴方向倾斜,从而使相机能全方位采集防护栅图像。为加快图像采集和检测效率,结合防护栅的结构特点在三坐标机器人末端设计了能同时搭载8个相机的相机搭载装置,如图4所示。

图3 防护栅放置平台Fig.3 Protective grill placement platform

图4 相机搭载装置Fig.4 Camera mounting device

设备硬件具体参数如表1所示,2 000万像素的工业相机搭配光学倍率为0.44的远心镜头,能够精确成像仅10 μm宽的裂纹,有效地解决裂纹尺度较小对检测效果的影响。环形漫射光源能为防护栅提供均匀高亮度照明,千兆以太网能确保实时接收相机图像数据。

表1 设备硬件参数Table 1 Device hardware parameters

2 检测算法原理

2.1 图像处理识别原理

图5为经过放大处理后的防护栅网格图像。由于飞机防护栅由很多小栅格构成,且裂纹出现在栅格边框处,为提高检测的准确率,需分割防护栅网格图像中每一个栅格。为此,参考文献[1]中介绍的方法将栅格区域定义为Grid区域,Grid区域为一个完整的栅格图像,其中包括栅格孔洞和栅格框架,并定义栅格孔洞区域为Hole区域。后续的图像处理方法将通过Hole区域来定位Grid区域,然后将Grid区域图像精准分割送入卷积神经网络模型中进行检测。

图5 防护栅栅格示意图(放大10倍)Fig.5 Schematic diagram of protective grill (10×)

结合上述飞机防护栅的结构特点,本文设计了一种基于机器视觉和深度学习的飞机防护栅裂纹检测系统。首先对相机采集的原始图片进行图像滤波、二值化、高级形态学、阈值分割和粒子过滤器等处理,以获得栅格孔洞Hole区域中心点坐标;然后通过像素计算和图像分割获取栅格Grid区域图像;最后基于卷积神经网络建立准确高效的防护栅裂纹分类器,完成对防护栅裂纹特征的自动提取,从而将栅格分成完好和有裂纹两类。防护栅裂纹检测方法流程图如图6所示。

图6 防护栅裂纹检测方法流程Fig.6 Crack detection process of the protective grill

2.1.1 图像滤波处理

在对相机采集的图像进行处理前,需要进行滤波处理,以突出防护栅中的裂纹细节。本文图像滤波处理采用卷积滤波方法,选定一个像素,获得其窗口范围内的像素值,并与卷积核值相乘并相加,得到新的像素值再填充至滤波后图像中。对原图像中每一个像素都进行该运算,就得到卷积滤波运算后的图像。窗口范围为卷积核大小,本文采用3×3大小的卷积核,卷积核参数如下所示:

(1)

防护栅在使用过程中,其本身材质的颜色逐渐变暗,也因其结构特点导致防护栅部分结构复杂区域光照不均匀,裂纹细节不明显,经过对大量防护栅裂纹数据的试验,发现将卷积核的中心值设为9.2,可以更有效地突出裂纹细节,解决上述问题。图像滤波处理结果如图7所示,图7(a)为相机采集的原图像,图7(b)为滤波处理后的图像。通过图像对比可以看出,处理后的图像更为清晰且裂纹的细节更加突出,从而有助于后续的裂纹检测识别。

图7 图像处理前后对比Fig.7 Comparison before and after image processing

2.1.2 图像二值化

对滤波处理后的图像进行二值化处理,通过二值化处理将图像灰度值处理为0或255,从而使图像中数据量大为减少,以便更能凸显出目标的轮廓。其计算公式如下:

(2)

式中:I(x,y)为二值化图像中像素点(x,y)处的灰度值;g(x,y)为原图像位于象素点(x,y)处的灰度值;T为图像二值化的设置阈值。

常见的二值化方法有OTUS阈值化、二维OTUS阈值化和固定阈值二值化等[14],在防护栅网格图像中,其栅格孔洞与栅格框架的像素灰度值差别较为明显,因此选择固定阈值二值化,减少计算量。经过大量数据实验,最终设定颜色阈值为T=28,所得到的防护栅栅格示意图(见图5)对应的二值化图如图8所示。从图8中可以明显发现,图像二值化后,原来图像的部分信息会产生明显的缺失。为了使栅格Hole区域轮廓信息完整,需对二值化后的防护栅图像采用高级形态学处理。此外,在Grid区域以外也分布有大量噪点,还需要采用粒子滤波器过滤这些噪点,以提高轮廓提取的准确率。

图8 防护栅二值化图Fig.8 Diagram of protective grill binarization

2.1.3 高级形态学处理

高级形态学处理的原理为通过生成一个能将图8图片中所有的白色像素点都包含在内的凸多边形,从而对图像中的缺失部分进行连通性处理,方便后面图像轮廓的提取。经过高级形态学处理后的Hole区域(图8中第2行第1列)如图9所示。从图9中可以看到:高级形态学处理前的Hole区域中白色为缺失部分,影响该Hole区域的轮廓提取;而经过高级形态学处理后该白色区域被填充,且周围的轮廓更为光滑,便于下一步对白色区域面积计算。

图9 高级形态学处理前后对比Fig.9 Comparison before and after advanced morphological processing

2.1.4 粒子过滤器

粒子滤波的思想基于蒙特卡洛方法,是利用粒子集来表示概率。粒子滤波法是指通过寻找一组在状态空间传播的随机样本对概率密度函数进行近似,以样本均值代替积分运算,获得状态最小方差分布的过程。这里的样本即指粒子,当样本数N接近无限大时可以逼近任何形式的概率密度分布。尽管算法中的概率分布只是真实分布的一种近似,但由于非参数化的特点,它摆脱了解决非线性滤波(例如中值滤波、双边滤波等)问题时随机量必须满足高斯分布的制约,能表达比高斯模型更广泛的分布,应用范围非常广泛。

为过滤图8中二值化后产生的噪点,本文提出一种粒子过滤器算法:随机在图像中产生N个随机粒子,并记录在白色封闭区域的随机粒子数C,估算图8中每一个不规则白色封闭的面积,过滤掉面积较小的白色封闭区域。面积计算公式如下:

(3)

式中:SR为白色封闭区域面积;SP为图片总面积;其中N越大,面积计算越准确。

根据大量样本数据计算分析,孔洞面积均在20 000以上,因此过滤面积范围在0~16 000的白色封闭区域即可过滤全部噪点,留下所需的Hole区域的轮廓。提取出的Hoel区域轮廓如图10所示,其中图10(a)为未使用粒子过滤器的图像,图中紫色框选中区域为图像部分噪点,图10(b)为采用粒子过滤器处理后的图像。对比图像可以看出粒子过滤器过滤掉了面积范围为0~16 000的噪点,排除了噪点的干扰,因此可以准确地提取Hole区域轮廓的中心坐标。

图10 粒子过滤前后对比Fig.10 Comparison before and after particle filtration

2.1.5 计算及分割Grid区域

由于防护栅网格大小相同,即图像中Grid区域尺寸相同,可假设图11中Hole轮廓的中心像素坐标为点O,令点O到Grid区域左上角像素坐标A的像素距离为(x1,y1),到Grid区域右下角像素坐标B的像素距离为(x2,y2),计算可得A、B两点的坐标为

(4)

通过式(4)可计算得出Grid区域左上角和右下角的像素坐标,此即在栅格图像中分割Grid区域的理论基础。

图11 区域坐标示意图Fig.11 Schematic diagram of area coordinates

经过上述一系列操作处理后的图像,可用于构建防护栅裂纹数据集,并作为卷积神经网络的输入,用于飞机防护栅裂纹检测。

2.2 裂纹图像深度卷积网络架构

为研究Faster-RCNN在飞机防护栅裂纹检测领域的应用,本文选取ZF-Net、VGG-16以及ResNet-101卷积神经网络作为Faster-RCNN特征提取网络。3种网络的特点如下:

1)ZF-Net[15]网络架构是在AlexNet基础上修改而来,使用一个多层的反卷积网络来可视化训练过程中特征的演化,便于使用者针对性的调整网络参数,提高检测精度。但是其训练时参数收敛越到高层则需要越长的时间。

2)VGG16[16]网络的特点在于结构规整,通过反复堆叠3×3的卷积,卷积核数量逐渐加倍来加深网络提高检测精度,采用5个卷积块提取图像特征,卷积后使用池化层降低参数量并与下一个卷积块连接,最后使用全连接层加激活层进行分类,简化了卷积神经网络的结构。但是其训练的特征数量非常大,且网络越深,梯度消失的现象就越来越明显,网络的训练效果也不会很好。

3)ResNet-101[17]即深度残差网络,基本思想是引入一个深度残差框架来解决梯度消失的问题,即让卷积网络去学习残差映射,解决网络模型的退化问题,从而能够让神经网络更深,提升网络的识别效果。

3种卷积网络结构参数如表2所示。

表2 网络结构参数Table 2 Network structure parameters

3 实验与结果

3.1 数据集制作

利用1.2节提出的检测系统采集2 000幅具有裂纹的飞机防护栅图片,并采用第2节提出的方法对图片进行处理。由于飞机防护栅的数量较少且裂纹不多,实验仅采集了防护栅各种类裂纹图片共2 000张。防护栅裂纹种类和样本较少会影响模型的训练效果,可能导致模型出现过拟合,训练出的模型泛化能力较差,裂纹检测率低等问题,降低模型的使用能力。为了在有限数据下得到更好的识别效果,往往需要使用数据增强的方式,通过对样本图像的旋转、加入噪音、仿射变换等方式增加数据量。为此,本文分别对图像进行水平镜像、竖直镜像、180°旋转、平移和高斯噪声变换进行数据扩充。高斯随机变量z的概率密度函数计算公式如下:

(5)

式中:z表示图像像元的灰度值;μ表示z的均值;σ表示z的方差。本文设置均值μ=0,方差σ=0.01。

数据扩充结果如图12所示,经过5种变换方式得到裂纹图像共12 000张,并对其像素大小调整为510 像素×510 像素。按照VOC2007数据集的格式修改飞机防护栅数据集,标注图片,数据集中80%作为训练集,20%作为验证集。

图12 数据扩充Fig.12 Data expansion

3.2 结果分析

对比实验为单变量实验,使用了相同的数据集和相同的参数且在同样的环境下运行。模型训练完成后在验证集上测试,对比不同模型的最终结果。

随着训练步数的增加,各模型的损失函数值呈整体下降的趋势,其中ZF-Net随着步数的增加,损失值曲线波动最大,而ResNet-101表现最为稳定且损失值整体维持在较低值,未发生明显的过拟合现象。各模型的损失值曲线如图13所示。随着迭代次数的增加,各模型准确率整体都呈上升趋势,基本都保持在90%以上且没有显著变化。ResNet-101具有较高的准确率,且在迭代过程中表现稳定。各模型的准确率曲线图如图14所示。

图13 各模型在训练时的损失值Fig.13 Loss of each model during training

图14 各模型在验证集上的准确率曲线Fig.14 Accuracy curves of each model on the validation set

为定量分析上述3种神经网络的检测效果,并与文献[1]中提出的传统机器视觉检测方法进行对比,采用文献[18]中介绍的3个评价指标进行进一步分析:

(6)

(7)

(8)

式中:RM为漏检率;NM为漏检个数;NC为检出个数;RF为虚警率;NF为虚警个数;RD为检测率。实验结果如表3和图15所示。与文献[1]提出的机器视觉检测方法对比,实验数据采取其表现最好的第1组实验数据。

表3 不同裂纹检测算法实验结果Table 3 Experimental results of different crack detection algorithms

图15 4种算法实验结果对比Fig.15 Comparison of the experimental results of the four algorithms

从实验结果中可以看出,传统机器视觉检测方法漏检率和虚警率最高,且虚警率高达91%,检出率较低为75%。传统机器视觉检测虚警率高是因为该方法通过机器视觉的图像处理方法,发现裂纹的灰度值比其他地方灰度值小的特点,并根据该特点通过判断灰度值较小区域的连续性和长度来确定可疑裂纹。该方法虽然能够识别部分裂纹,但是容易受裂纹尺度、环境、防护栅本体使用情况等种种因素影响,造成虚警率高的现象。而本文提出的基于机器视觉与深度学习的飞机防护栅裂纹检测系统,通过图像处理可将防护栅网格全部分割并获取裂纹样本,采用卷积神经网络提取裂纹特征,生成裂纹检测模型,再将分割后的网格图像输入模型中检测,能极大地降低虚警率和漏检率并提高识别精度。

对比实验结果,3种不同卷积模型的检测效果在各方面都比传统机器视觉检测要好,其中以ResNet-101网络检测效果最好,与文献[1]提出的机器视觉检测相比,漏检率和虚警率分别下降了22.54%和89.28%,检出率提高了22.54%,体现了深度学习算法在目检测上的优越性能。

为进一步分析不同光照对3种神经网络裂纹检测效果的影响,在验征集中分别挑出强光照、弱光照和正常光照下防护栅裂纹照片各100张,组成3个不同光照的数据集,送入3种模型中进行检测,定量分析3种模型在不同光照下的漏检率、虚警率和检出率,实验结果如表4所示。表4的结果表明,光照不足会对3种模型的检测效果产生较大影响,当光照强度达到一定程度后,对3种模型的检测效果几乎不再产生影响。

表4 不同数据集下的实验结果Table 4 Experimental results under different data sets %

图16 不同光照下ResNet-101网络的检测效果Fig.16 Detection results of ResNet-101 network under different illumination conditions

图16所示为以ResNet-101作为特征提取网络在不同光照背景下的检测效果,其中数字为ResNet-101网络检测裂纹的置信率,从中可见该网络对不同光照下的裂纹检测结果均有较好的检测精度。

以上实验结果表明,3种神经网络中以ResNet-101作为Faster-RCNN基础提取网络在验证集上针对防护栅裂纹的检测,具有最低的虚警率、漏检率和最高的检出率,且该算法能适应不同光照和环境,满足实际应用的需求,证明了深度学习在飞机防护栅裂纹检测上的可行性。

由于仅采集2 000幅具有裂纹的飞机防护栅图片,飞机防护栅表面裂纹样本数量和不同光照下裂纹样本数量较少,造成训练的模型检测存在漏检和误检现象,后续可在检测系统使用的过程中保存防护栅的裂纹图像,增加样本数量,进一步提高模型精度。

将现有的防护栅裂纹检测方法与本文设计的检测系统在检测效率、检测精度和可靠性上进行对比,结果如表5所示。

表5 不同裂纹检测方法性能对比Table 5 Performance comparison of different crack detection methods

从表5中可以看出,本文设计的一种基于机器视觉和深度学习的飞机防护栅裂纹检测系统在检测效率、检测精度和可靠性上都有较高的表现,有效地解决了人工检查和文献[1]机器视觉检测方法存在的效率较低、检测精度和可靠性不高的问题。

需要指出的是,虽然本文是针对特定结构的飞机防护栅表面裂纹和缺陷裂纹开展的研究,但对于其他类型的防护栅,只需调节相机参数,改变末端运动路径和更换图3中的防护栅放置平台,即可方便地对其他类型的飞机防护栅的裂纹开展检测研究。针对其他缺陷如气孔等检测,只需要在深度学习裂纹检测模型中添加对应的样本数据进行训练,即可对其他缺陷开展检测研究。因此本文方法有效地解决了人工检测和传统检测方法存在的误检、漏检和虚警率高的问题,实现飞机防护栅表面裂纹的检测,提高了检测的效率和精度。

4 结论

本文针对传统飞机防护栅裂纹检测效率低、可靠性差的现状,基于机器视觉设计了一种飞机防护栅裂纹检测装置,并结合图像处理技术与深度学习原理对飞机防护栅的裂纹进行了检测。研究并制作了飞机防护栅裂纹检测数据集,在此基础上分别以ZF-Net、VGG-16和ResNet-101卷积神经网络作为Faster-RCNN特征提取网络开展了防护栅裂纹检测研究,3种模型均达到了良好的检测精度,其检测精度分别为92.79%、95.12%和97.54%。其中ResNet-101网络检测效果最好,与文献[1]提出的机器视觉检测相比,漏检率和虚警率分别下降了22.54%和89.28%,检出率提高了22.54%。进一步研究发现ResNet-101网络在不同光照条件下仍有较高的检测精度,从而为飞机防护栅的裂纹在线检测提供了新方法。

猜你喜欢

栅格卷积裂纹
基于扩展有限元的疲劳裂纹扩展分析
一种基于微带天线的金属表面裂纹的检测
基于邻域栅格筛选的点云边缘点提取方法*
基于3D-Winograd的快速卷积算法设计及FPGA实现
Epidermal growth factor receptor rs17337023 polymorphism in hypertensive gestational diabetic women: A pilot study
从滤波器理解卷积
心生裂纹
基于傅里叶域卷积表示的目标跟踪算法
不同剖面形状的栅格壁对栅格翼气动特性的影响
基于CVT排布的非周期栅格密度加权阵设计