1.一种基于深度卷积神经网络模型的船舶焊缝缺陷检测方法,其特征在于,包括如下步骤:
(1)获取船舶X射线焊缝图像集;
(2)基于距离最值M‑SMOTE算法处理不平衡数据集;
(3)构建面向船舶焊缝缺陷检测的深度卷积神经网络模型;
所述面向船舶焊缝缺陷检测的深度卷积神经网络包括13层,分别为一个输入层、三次卷积与池化层、五个全连接层和一个输出层,所述输入层的输入是来自对船舶X射线焊缝图像集的特征数据进行改进近邻传播聚类的结果,所述深度卷积神经网络中间各层的输入数据采用自适应PCA降维;
(4)训练用于船舶焊缝缺陷检测的深度卷积神经网络模型;
(5)基于深度卷积神经网络模型进行焊缝缺陷检测。
2.根据权利要求1所述的一种基于深度卷积神经网络模型的船舶焊缝缺陷检测方法,其特征在于,步骤(2)所述基于距离最值M‑SMOTE算法处理不平衡数据集的流程采用如下步骤:
(1) 对于少数类焊缝样本集中每一个体xi,计算它到少数类样本集中所有样本的欧式距离di,设dx为少数类样本集类间平均欧氏距离,其计算如下:(2)计算样本xi与多数类K个邻近样本的最大欧氏距离dmax和最小欧氏距离dmin;
(3)在合成样本之时,针对每个少数样本,计算该样本与同类K个邻近样本的平均欧氏距离davg1,以及该少数样本与多数类K个邻近样本的平均欧氏距离davg2;
(4)定义μ为相对距离比,且计算如下:(5)定义λ为距离系数,其主要针对新样本合成时,考虑周围多数类样本造成影响而设定,且计算如下:
式中,rand(0,1)表示区间(0,1)内的随机数;
(6)借鉴SMOTE算法,新少数类样本生成方式如下:xnew=xi+λ(xi‑xj);
xi为选取进行过采样处理的任一个少数类样本,xj为xi的同类K个邻近样本之一,xnew为使用M‑SMOTE算法要生成的新少数类样本;当μ小于等于1,少数类样本xi与同类K个近邻的平均欧氏距离较小,说明该样本周围少数类分布较密集,合成的新样本xnew在xi与xj之间随机生成;当μ大于等于1,少数类样本xi与同类K个近邻的平均欧氏距离较远,合成新样本应该与少数类密集区域距离远,使xnew远离xi。
3.根据权利要求1所述的一种基于深度卷积神经网络模型的船舶焊缝缺陷检测方法,其特征在于,所述深度卷积神经网络模型的输入层的船舶X射线焊缝图像集的特征数据包括基于几何、强度和背景对比反差三个角度的5类焊接缺陷特征,其中所述几何角度的缺陷特征,包括长度W和纵横比Ar,前者是指缺陷边缘两点间的最大距离,后者是指缺陷的宽度与长度之比;所述强度角度缺陷特征,包括缺陷区粗糙度Rr,是指缺陷内部像素的强度变化;所述背景对比反差角度缺陷特征,包括直方图对比Hc和纵横比对比Kc,前者是指缺陷区域与背景灰度直方图的卡方距离;纵横比对比Kc为缺陷区与背景的纵横比之比。
4.根据权利要求1所述的一种基于深度卷积神经网络模型的船舶焊缝缺陷检测方法,其特征在于:所述深度卷积神经网络模型的输入层的改进近邻传播聚类的方法,采用如下步骤:
(1)设吸引信息矩阵R,矩阵R中元素r(u,v)为两个数据点u和v的吸引信息,即u成为v聚类质心的适合度;设归属信息矩阵A,矩阵A中元素a(u,v)为u和v两个点之间的归属信息,即u有意向选v作为u的质心的认可程度;
(2)设相似度矩阵S,在相似度矩阵中两个数据点的相似度使用马氏距离的负值表示,对于欧式距离均值θ,协方差矩阵为V,马氏距离相似度矩阵S中每一个元素s(u,v)的表示方式如下:
(3)使用迭代法更新矩阵,吸引信息rt+1(u,v)的迭代方式如下:归属信息at+1(u,v)的迭代方式如下:式中u′表示除当前u以外的其他点,v′表示除当前v以外的其他点;
(4)引入了衰减系数ψ,设定如下更新方式:rt+1(u,v)←(1‑ψ)rt+1(u,v)+ψrt(u,v)at+1(u,v)←(1‑ψ)at+1(u,v)+ψat(u,v)(5)设定最大迭代次数,将吸引度信息矩阵R与归属度信息矩阵A相加,取对角线的值大于0的点为聚类质心,得到z个聚类质心。
5.根据权利要求1所述的一种基于深度卷积神经网络模型的船舶焊缝缺陷检测方法,其特征在于:所述深度卷积神经网络模型的中间各层输入数据的自适应PCA降维的方法,采用如下步骤:
(1)对于传统的PCA降维方法,首先在所有线性组合中选取方差最大的组合F1,称为第一主成分;如果待降维原数据量F0不足以被第一主成分完全表示,再考虑选取第二个线性组合F2;为能有效地反映原数据量信息,F1已有信息就不需要再出现在F2中;用协方差方式来使F2中不再包含F1中的信息;
协方差的数学表达式如下,
Cov(F1,F2)=E[(F1‑E(F1))][(F2‑E(F2))]=E[F1F2]‑E[F1]E[F2]式中E[·]表示各样本的期望值;
依此类推可以构造出第三、第四、……,第p个主成分,使得原数据量F0能够用各个主成分表达,关系式如下:
F0=α1F1+α2F2+α3F3+…+αpFp式中αl(1≤l≤p)表示第l个主成分Fl的权值;
(2)PCA降维法需要确定出p个主成分,才能完全表示出原始数据量F0,因此降维过程较为繁琐,且需要对降维对象有一定认知,才方便找出各个主成分;鉴于船舶焊缝缺陷种类繁杂,使用传统PCA法降维效率低下,预期效果差,无法在保存有效特征的基础上高效降维,为此基于误差控制原理,利用参数化方式提出了自适应PCA算法;当第k个主成分的权值小于
1e‑5时,就停止寻找下一个主成分,即把后面成分忽略;
(3)得到关于原始数据量F0的近似表达式:F0=α1F1+α2F2+α3F3+…+αkFk(4)引入调节因子c,构造中间变量fq(1≤q≤k‑1):fq=Fq‑c·Fq+1
(5)确定第l个主成分fl的权值βl(1≤l≤p)使得满足下式:F0=β1f1+β2f2+β3f3+…+βk‑1fk‑1对于不同k值,该算法能自动地去确定c取值;舍弃可忽略成分,可以避免传统PCA算法需要繁琐地确定p个主成分的缺点。