分享:基于卷积神经网络焊管缺陷分类识别
焊缝探伤是一种常见的不锈钢焊管焊接质量检测方法[1-3],其中的涡流检测具有检测精度高、检测速率快、易于自动检测等优点。赵番等[4]设计了一套涡流检测系统,解决了金属管道内、外壁缺陷的区分难题。刘梦龙[5]以304不锈钢焊管为研究对象,采用涡流检测技术实现对不锈钢焊管焊缝位置的准确识别。
工业不锈钢焊管的涡流检测信号本质上是时间序列数据,早期的涡流检测是以阻抗分析法为基础,仅对检测缺陷或原始信号中的二次信息进行筛选,构建各种缺陷信号的特征向量,并进行区分[6-9]。但利用该方法处理信号易造成原始信号的部分丢失与失真。不锈钢焊管具有复杂的结构,其原始信号中包含了大量的关键信息,如材料的物理特性、焊缝的质量等。这些信号在处理过程中受损会影响缺陷检测与定性分析结果的准确性。因此,在对不锈钢焊管进行质量评估时,往往会出现误判或遗漏的情况。通过训练深度神经网络,可以从大量的数据中自动提取有用特征,而不需要人工干预。这种方法不仅可以有效避免信号处理过程中产生的失真现象,还可以大幅提高缺陷检测的准确率[10]。MIAO等[11]利用图像卷积增强边缘特征,提取焊缝边缘信息,可以较准确地识别焊缝缺陷。王泽[12]提出了卷积神经网络的图像超分辨率重建算法,以获取不同尺度的特征信息。深度学习模型能够根据输入的原始信号自动学习,并识别出焊管中的缺陷类型,从而对其进行准确的定性分析和评价。
笔者以304不锈钢焊管为研究对象,提出了一种基于涡流检测技术结合机器学习对不锈钢焊管进行缺陷分类识别的方法,该方法首先将采集到的一维涡流信号进行信号处理,转换成二维时频图;然后结合深度学习,将得到的二维时频图输入到卷积神经网络(CNN),并提取图像特征,从而实现不锈钢焊管缺陷的分类识别。
1. 试验装置与试样制备
检测试验装置主要包括探头、信号发生器、采集卡和计算机等(见图1)。试验材料为304不锈钢钢管。通过电火花在钢管试样上制造人工缺陷,试验共设置5种不同的缺陷类型(见图2)。采用涡流点探头可以确保探头在焊管中进行精确定位与测量,探头参数如表1所示,激励参数如表2所示。探头沿缺陷试样轴向扫描,存储离散数据,实现涡流信号采集。
项目 | 线圈内径/mm | 线圈外径/mm | 线圈宽度/mm | 匝数比 | 铜线直径/mm |
---|---|---|---|---|---|
实测值 | 19 | 20 | 3 | 160 | 0.1 |
项目 | 激励波形 | 激励频率/kHz | 激励电压/V |
---|---|---|---|
实测值 | 正弦波 | 30 | 5 |
2. 检测数据采集
试验采用AC6111采集卡,采样频率为400 kHz,分辨率为12位。利用MATLAB软件对采集的涡流信号进行分析,得到时域信号波形(见图3),横坐标为采样点,纵坐标为涡流信号振动幅值。
3. 特征变换及提取
3.1 特征变换
时频分析是一种研究信号在时域和频域上特性的方法,其结合了时间和频率的信息,可以全面地分析信号行为。时频分析通常用于处理非平稳信号,即信号统计特性随时间的变化情况。时频分析方法主要有短时傅里叶变换(STFT)、连续小波变换(CWT)、希尔伯特-黄变换(HHT)、离散小波变换(DWT)、S变换等。CWT方法是在不同尺度上应用小波函数,对信号的频率成分进行分析,常用于捕捉信号的局部结构和瞬时特性,该方法的小波基选择复杂,不同小波基的分析结果差别较大。HHT方法的时频局部性好,适用于瞬态信号和局部频率变化的情况,但局限于近似处理窄带信号,且只能处理单一频率信号。DWT方法提供了多层次分辨率,允许用户在不同精度级别上查看信号细节,但对连续信号采样会引入误差。S变换方法对相同信号选择不同的尺度和窗口参数,进而产生不同的时频,导致获得的时频分辨率不够理想。
笔者采用的时频分析方法基于短时傅里叶变换,选择合适的窗函数以分割待处理的原始信号。随着窗函数的不断移动,对截获的时域信号每一小段进行傅里叶变换,使每一时刻的时域信号对应于频域信号。
离散短时傅里叶变换对于离散序列信号x(T)和时间T的变换如式(1)所示。整体离散短时傅里叶变换如式(2)所示。
(1) |
(2) |
式中:ω(T)为窗函数;x(k)为待分析信号,其中k为时域信号,表示离散时间点;n为窗口数变量,对应于STFT的时间参数,n=0,1,2,3,…,E-1;t为频率参数,t=0,1,2,3,…,F-1;E为变换后频域信号的水平坐标;F为变换后频域信号的垂直坐标。
在频域分析中,理想的窗函数应具备两个关键特性:一是主瓣窄,即具有高频率分辨率,以准确区分不同的频率成分;二是副瓣低,以减少不同频率间的相互干扰。在常用的窗函数中,矩形窗函数的主瓣宽度相对集中,光谱分辨率较高,但其副瓣高度也相对较高,易导致频谱间产生交叉干扰。汉宁窗函数也称上升余弦窗函数,其副瓣高度低,但主瓣宽度变宽,频率分辨率不高。汉明窗函数与汉宁窗函数相似,其旁瓣较小,但衰减速率较慢;高斯窗函数的主瓣宽度宽,频率分辨率也较低。综合考虑频率分辨率和副瓣抑制的需求,选择汉宁窗函数。
为更好地处理数据采集部分获取的时域信号,对常用时频分析方法进行深入比较,采用短时傅里叶时频分析方法,选用汉宁窗函数进行频域分析,以实现更精确的信号处理。
3.2 特征提取
特征提取是从原始数据中选择或转换一组相关的信息,以描述数据的重要特征,从而对缺陷图像进行分类和识别。特征提取可以减少数据的维度并捕捉数据的关键信息,从而提高模型的性能。一般来说,缺陷特征提取主要是提取缺陷区域的物理特征,包括形状、灰度分布、纹理和图像序列等信息。利用MATLAB软件对采集到的涡流信号进行STFT,得到二维时频图(见图4)。
缺陷的类型不同,其对应的时频图也不同。图4中颜色的深浅对应了频率的不同幅值,其中蓝色是二维时频图的背景色。对每个缺陷谱图的颜色深度进行识别,可以清楚地区分缺陷类型。由图4可知:缺陷1色谱图中两种颜色区域有明显的断层峰值,表示该处为缺陷位,且峰值之间的距离表示缺陷的大小;缺陷2色谱图的正常区域为绿色区域,黄色峰区为缺陷;缺陷3的色谱图中黄色峰值区间为缺陷,且缺陷的大小与缺陷2接近;缺陷4色谱图中天蓝色表示这个区域的材料是合格、没有缺陷的,而中间的黄色峰区表示该处存在缺陷;缺陷5色谱图中峰值处与天蓝色区域有明显的断层,表示缺陷不连贯;标准试样色谱图中黄色区域贯穿了整个时间轴,即没有缺陷。通过二维时频图可以对焊管缺陷的类型进行区分。
4. 分类识别结果
在处理图像等二维数据时,其输入数据通常都是高维的。当采用传统神经网络训练时,因模型的训练参数过多,通常需要耗费更多的计算资源和更长的时间,特别是对于大规模数据集,模型对训练数据过于敏感,从而影响其在新数据上的泛化性能。CNN是一种经典的深度学习模型,其由一个或多个卷积层和其他分类神经网络组成。CNN作为一种图像识别工具,可以利用卷积层来捕捉输入数据的局部特征,通过权值共享,相同的权重被用于处理输入的不同部分,从而减少参数的数量,提高模型的效率。在采用卷积神经网络作为分类器对工业不锈钢焊管缺陷进行分类和识别时,选择合适的神经网络结构至关重要,笔者对VGG-16和GoogLeNet两种训练模型进行了对比研究。
将图4的二维时频图作为训练特征输入CNN输入层中,制作特征样本集,如表3所示,并将各种缺陷的时频图按3∶1∶1的比例随机分为训练集、验证集和测试集。
项目 | 训练集 | 验证集 | 测试集 | 总体 |
---|---|---|---|---|
缺陷1 | 120 | 40 | 40 | 200 |
缺陷2 | 120 | 40 | 40 | 200 |
缺陷3 | 120 | 40 | 40 | 200 |
缺陷4 | 120 | 40 | 40 | 200 |
缺陷5 | 120 | 40 | 40 | 200 |
4.1 学习率的优化
学习率是深度学习优化算法中的一个重要参数,其控制了模型权重在每次迭代中更新的幅度,学习率过高会引起参数的频繁更新,使模型在训练时出现剧烈的波动,直至不收敛;学习率过低会使算法收敛得很慢。通过调节学习率,使算法达到较快的收敛速率与较高的稳定性。选择学习率分别为0.01,0.001和0.000 1,其他参数保持不变,不同学习率下的准确度如表4所示。由表4可知:VGG-16模型和GoogLeNet模型均在学习率为0.01时的准确度最高,分别达到了79.1%和68.3%。
神经网络模型 | 学习率 | ||
---|---|---|---|
0.01 | 0.001 | 0.000 1 | |
VGG-16 | 79.1 | 75.2 | 76.9 |
GoogLeNet | 68.3 | 62.3 | 64.1 |
4.2 VGG-16和GoogLeNet两种模型对比
为了对VGG-16模型和GoogLeNet模型的准确性进行评估,对测试集中的40张含有各类缺陷的图像进行了试验。这些图像涵盖了多种缺陷类型,旨在全面检验模型的识别能力。试验结果显示,在面对特定缺陷时,VGG-16模型的准确性较高,因为其深层架构能够捕捉并提取特定缺陷的复杂特征。GoogLeNet模型在处理其他类型的缺陷时显示出更好的性能,能够有效地捕捉和识别多样化的缺陷。
不同模型对缺陷的识别精度和整体分类精度如表5所示。由表5可知:VGG-16模型对5种不同类型缺陷的识别精度更高,整体分类精度达到了0.800;GoogLeNet模型的整体分类精度仅为0.685。表明VGG-16模型在工业不锈钢焊管缺陷分类识别中的准确性和稳定性明显优于GoogLeNet模型。
神经网络模型 | 缺陷类型识别精度 | 整体分类精度 | |||||
---|---|---|---|---|---|---|---|
缺陷1 | 缺陷2 | 缺陷3 | 缺陷4 | 缺陷5 | 标准试样 | ||
VGG-16 | 0.825 | 0.800 | 0.850 | 0.725 | 0.775 | 0.900 | 0.800 |
GoogLeNet | 0.675 | 0.650 | 0.725 | 0.625 | 0.600 | 0.850 | 0.685 |
5. 结论
在对缺陷的分类识别中,优化神经网络参数,选择表现效果最好的0.01学习率;通过对比VGG-16与GoogLeNet两种神经网络模型的训练效果,在整体缺陷分类精度的表现上,VGG-16模型的精度优于GoogLeNet模型,达到了0.800。将短时傅里叶变换和卷积神经网络相结合,并对工业不锈钢焊管的缺陷进行分类识别。通过多种信号处理方法的对比,采用短时傅里叶方法对涡流信号进行分析,将经过处理后的信号转换成时频图,并作为卷积神经网络的输入,采用该方法可以有效避免特征提取不足、计算速率低、识别精度低等问题,实现了焊管缺陷的分类识别。
文章来源——材料与测试网