美章网 资料文库 分形方法的压力容器内壁缺陷检测方法范文

分形方法的压力容器内壁缺陷检测方法范文

本站小编为你精心准备了分形方法的压力容器内壁缺陷检测方法参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

分形方法的压力容器内壁缺陷检测方法

摘要:为提高高压氧舱内壁缺陷检测效率,降低漏检率,提出一种基于分形方法的高压氧舱内壁缺陷可视化检测方法。利用分形方法将数据点置于双对数坐标上,构建各阶累积和,选取最佳的分形参数作为缺陷参数。通过在高压氧舱内移动相机获取内壁上缺陷图像,计算图像中点的一阶差分,通过Canny算子求得各点梯度的幅值和方向,实现对缺陷轮廓的边缘检测;测量轮廓线长度和外接椭圆圆度拟合处理,并通过腐蚀运算和膨胀实现对缺陷的检测。仿真分析表明,该方法可有效检测出容器内壁缺陷,成像稳定,且对缺陷的检测偏差率较低,满足实际应用条件。

关键词:分形方法;载人压力容器;缺陷检测;轮廓线;Canny算子

0引言

由于高压氧舱的工作环境处于高压下,对各部分的要求都比较高,高压氧舱的缺陷检测成为热点之一。高压氧舱在使用过程中,不可避免地会对内壁造成一定程度的损伤,如划痕、凹坑等缺陷。在高压环境的作用下,一些小缺陷会不断放大,如果不及时发现和处理,将造成严重后果。对此,国内外相关学者展开了大量研究,其中,国外学者专注于硬件设计部分,如渐开式外开舱门等,而国内学者专注于软件优化部分,如文献[1]反应堆压力容器内壁面异种金属焊接缺陷的修复及力学评价方法和文献[2]研究的收发式X型涡流检测探头在压力容器顶盖焊缝检测中的运用成果。分形方法对零散、连续、关联度小、非均衡、长期相关的问题具有很好的统计效果[3]。因此,本文在分形方法的基础上,提出了载人压力容器内壁缺陷可视化检测方法。根据不同的缺陷类型,确定相应的判别依据。本文以凹坑缺陷为例,其创新之处在于对目标缺陷中间隔的区域进行填充,将其他缺陷类型的干扰信息剔除干净,保留凹坑缺陷信息,测量其轮廓线长度和外接圆圆度,选取符合条件的轮廓线进行拟合处理,利用腐蚀运算和膨胀运算实现对缺陷的检测,为提升其有效性以及准确率提供保障。

1基于分形方法的缺陷参数确定

1.1分形维数的确定

分形维数不仅对整数有效[4],对分数同样有效。可通过以下幂指数分布来定义分形维数:N=CrD(1)式中:r为特征线度,如时间、长度等,本文取时间的定义,第1年表示为r1=1,第2年表示为r2=2;N为与r有关的数目,如缺陷指数等;C为常数项;D为分维数。本文中,D为常数项,任意取两点(Ni,ri)、(Nj,rj),作为分形参数使用,也就是D和C的值,即有:D=ln(Ni/Nj)/ln(rj,ri)(2)C=NirD(3)在计算对数时数值不能为负数,所以当Ni中含有负数值时,必须对所有N值添加一个常数项保证所有数为整数,即将所有N值进行平移处理。为了使计算结果更精确,可在计算之前对所有N值先进行平移处理后再代入式中进行计算。

1.2变换形成的分形

在实际运算时,只给出了数据点信息[5],它们之间的函数关系是未知的,因此需要变换R或者N,使得数据点信息可以采用本文的分形方法来处理。累积和变换步骤如下。步骤一:将数据点(Ni,ri)置入双对数坐标中,为了使数据点与分形模型融合,将Ni置换为一个基本序列:Ni{}=N1,N2,N3{,…}(i=1,2,…,n)(4)其他的序列也可根据这种基本序列来构造。假设构造一阶累积和序列S1,其中S11=N1,S12=N1+N2,S13=N1+N2+N3等,以此类推可构造二阶、三阶累积和序列,则有:S1i{}=N1,N1+N2,N1+N2+N3{,…}(i=1,2,…,n)S2i{}=S11,S11+S12,S11+S12+S13{,…}(i=1,2,…,n)S3i{}=S21,S21+S12,S21+S22+S23{,…}(i=1,2,…,n)S4i{}=S31,S31+S32,S31+S32+S33{,…}(i=1,2,…,n)(5)步骤二:将数据点(S1i,ri)(i=1,2,…,n)置入双对数坐标中,获得离散的分形模型。步骤三:将各阶累积和构成的数据点分别置于双对数坐标上,与分形分布模型进行对比,选择效果最佳的变换并得到相应的分形参数,即本文中的缺陷参数。利用分形方法,将数据点信息置于双对数坐标上来构建各阶累积和,并将各阶累积和构成的数据点同样置于双对数坐标上,以此选取最佳的分形参数作为缺陷参数。

2载人压力容器内壁缺陷可视化检测模型

本文为了获取高压氧舱内壁缺陷图像,利用移动相机在不同的内壁位置获取完整的图像信息。

2.1通过边缘检测获得内壁缺陷

凭借Canny算子完成对缺陷的边缘检测,通过计算缺陷图像中各个点的一阶差分获得各点梯度的幅值和方向,从而实现对缺陷图像的边缘检测[6]。Canny算子实现边缘检测的过程为:1)计算各点梯度的幅值和方向对图像进行平滑处理,即利用σ=2的高斯滤波,对图像各点进行差分计算,根据式(6)的一元差分方程计算得到二元一阶差分方程:fx=f'(x)=f(x+1)-f(x)(6)G(i,j)=f(i,j)-f(i+1),(j+1)+f(i+1,j)-f(i,j-1)(7)Canny算子利用两个矩阵分别对各个梯度的x方向和y方向求卷积值,以此获得该梯度的幅值和方向。x方向和y方向卷积算子的计算式为Sx=-11-11[],Sy=11-1-1[](8)通过式(8)计算可得到x方向和y方向的一阶偏导值,各个梯度的幅值和方向为:P(i,j)=[f(i,j+1)-f(i,j)+f(i+1,j+1)-f(i+1,j)]/2Q(i,j)=[f(i,j)-f(i+1,j)+f(i,j+1)-f(i+1,j+1)]/2(9)M(i,j)=P(i,j)2+Q(i,j)槡2N(i,j)=arctan(Q(i,j)/P(i,j))(10)2)梯度幅值的非极大值抑制对图像中各点梯度的最大值和极大值点做非极大值抑制处理,即可使缺陷的边缘逐渐细化。3)双阈值算法的缺陷检测和边缘连接运用T1和T2(T1<T2)两个不同的阈值,可以分别得到边缘图像M1[i,j]和M2[i,j]。边缘图像是通过高阈值(本文高阈值设置为15,低阈值设置为10)检测出来的,所以边缘信息基本为真边缘,但是高阈值所得的边缘之间存在间隔,所以需要将边缘图像M1[i,j]中各个边缘点信息与M2[i,j]上距离较近的边缘点信息保留下来,以此将间隔的边缘信息连接起来。算法实现过程如图1所示。从图中可以看出,Canny算子不仅将高压氧舱内壁上的凹坑缺陷精准地检测出来,而且还将线性边缘和一些存在变化梯度的杂质也提取了出来。

2.2缺陷拟合获得完整的缺陷轮廓

获取缺陷图像的边缘信息后,可能会出现轮廓不完整的情况,而且Canny算子提取的是所有缺陷的边缘信息,本文仅对凹坑缺陷进行分析,所以需要将其他类型的缺陷剔除掉,只保留凹坑缺陷的边缘信息[7]。Canny算子的检测结果中多多少少包含了一些其他类型的缺陷信息,根据每种缺陷类型的几何特点,实施以下步骤完成对缺陷轮廓的筛选和拟合:1)凹坑缺陷的轮廓线长度在1~1000像素之间,所以将不在范围内的轮廓线去除;2)对保留下来的轮廓线进行拟合处理;3)轮廓线最外层的最小外接圆,圆度保持在0.4~0.6之间,轮廓线≥20像素;4)对保留下来的轮廓线再次进行拟合处理。通过以上4个步骤即可将其他类型的缺陷剔除干净,只保留凹坑缺陷信息,并获得了清晰的轮廓图像。其中外接椭圆的圆度计算公式如下:Distance=1F∑p-p_i(11)s2igma=1F∑(p-p_i-Distance)2(12)Roundness=1-sigmaDistance(13)式中:p为外接椭圆中心点;p_i为外接椭圆轮廓上各点;F为外接椭圆的面积。筛选后各个亚像素轮廓即待拟合的区域[8],相邻两条轮廓线之间的最大距离为d≤MaxDistAbs、最大相对距离为d/l≤MaxDistRel;二者之间延长线的最大距离为s≤MaxShift,最大角度为α≤MaxAngle,对轮廓线拟合情况的判别示意图如图2所示。针对不同的缺陷类型,轮廓线拟合参数为:划痕缺陷的轮廓线拟合参数MaxDistAbs=30,MaxDistRel=1,MaxShift=2,α=π/12。容器内壁缺陷的第一次轮廓线拟合参数为MaxDistAbs=10,MaxDistRel=1,MaxShift=10,α=π/6。第二次轮廓线拟合参数为MaxDistAbs=30,MaxDistRel=1,MaxShift=10,α=π/3。

2.3凹坑缺陷表征化处理

在检测高压氧舱内壁凹坑缺陷时,还需对平面缺陷做有规则的表征化处理,处理后的图像统一为圆形或者矩形。所以,在拟合轮廓线之前,需要将凹坑缺陷信息转换为区域单位。对完成转换的缺陷类型进行一系列的形态学处理,使缺陷图像变得有规则、可合并。a)形态学处理规则1)腐蚀运算与膨胀运算利用腐蚀运算可有效缩小图像中的目标区域轮廓。实现步骤为:首先确定结构元素和中心点信息,并以中心点作为结构元素的中心坐标,在目标图像上遍历。遍历的过程中,将可以被区域完全包含的结构元素坐标保留下来,建立集合L存储这些坐标信息。最后,将集合L中所有的坐标点连接在一起,形成的区域即为腐蚀运算的结果。假设A、B分别为二维图像Z2中的一个子集,那么A被B的腐蚀运算过程可分为以下3种:A⊙B=c∈Z2{}|c+b∈A,∨b∈BA⊙B=c∈Z2|Bc{∈A}A⊙B=∪b∈BA-b(14)在遍历过程中,将可以被区域完全包含的结构元素坐标点、区域外的点、与结构元素有交集的点全部保留下来,将两种坐标取并集,并用集合L表示。最后,将集合L内所有的坐标点连接在一起,形成的区域即为膨胀运算结果。假设A、B分别为二维图像中的一个子集,则A被B膨胀的过程可以表示为AB=c∈Z2{|c=a+b,a∈A,b∈B}AB=∪b∈BMb(15)以此,可以切断区域之间的连接,直接过滤出小而独立的点区域,缩小缺陷区域的轮廓信息。2)开运算和闭运算在特定区域内,对于同一个结构元素来说,先对其进行腐蚀运算再进行膨胀运算。假设A、B分别为二维图像Z2中的一个子集,用A对B实施开运算的过程为A•B=(A⊙B)B(16)闭运算是对目标图像先膨胀后腐蚀的过程,与开运算恰恰相反。假设A、B分别为二维图像Z2中的一个子集,用A对B实施闭运算的过程为A•B=(AB)⊙B(17)开运算可有效消除图像中的细小对象、平滑区域边缘和分离区域,但可保留图像中符合结构元素的区域。闭运算可有效填充图像中的细小对象、连接相邻的区域以及将间隔的小区域融合在一起等。b)凹坑缺陷检测为了确保得到一个完整的缺陷信息,并且能有效合并,在综合对比了多个尺寸后,本文采用半径为3.5个像素的圆形结构对缺陷区域做膨胀操作。检测目标缺陷和完成区域转换后的目标缺陷以及经过膨胀操作后的效果如图3所示。图3膨胀操作结果经过膨胀运算后,每个缺陷中的细小区域都可进行合并,但如图3所示,部分缺陷内部存在孔洞,部分区域并不能很好地实现连接。为了解决这个问题,本文在进行膨胀运算后对存在孔洞的区域又进行了闭运算。将实际缺陷尺寸测量结果与计算后的缺陷尺寸结果对比,根据阈值标准来判断该高压氧舱是否合理,若不合格,将缺陷表明、注释。

3仿真实验

为了检测本文方法的有效性,在缺陷检测和准确率两方面进行实例的仿真实验,以山东半岛国家自主创新示范区为实验环境,在深海载人潜水系统中,以2m×4m×9m压力容器为实验对象,设工作温度为37℃,工作压力为14.4/4.0MPa,焊接系数为0.85,X射线检验为15%,试验压力为16.5MPa,实验过程如下所示:当发现压力容器内壁有磕痕后,排除那些遗留下来的“先天缺陷”,采用水平测量仪对构件吊具水平度进行复测,检验使用中产生的“后天缺陷”,以防止压力容器失效和突然事故的发生。其中,泵进3处,纵缝6处,环缝和飘缝各5处,共19处缺陷,长度平均值为5.64mm。在载人压力容器内固定相机并进行图像采集,进行多次仿真实验和实验结果,从中随机抽取5次实验数据如表1所示。如表1所示,在同一实验环境下,本文方法可以有效检测出容器内壁的缺陷,稳定成像,符合现场实际应用条件,由此可以证明本文方法在缺陷检测方面具有较强的有效性。

4结语

为了解决高压氧舱内壁出现细小缺陷而导致的安全性问题,本文提出了基于分形方法的载人压力容器内壁缺陷可视化检测方法,利用Canny算子实现对缺陷的提取、边缘轮廓的拟合和缺陷规则化处理等,实现对容器内壁缺陷的有效检测,有效解决了成像难、缺陷检测困难的问题。值得一提的是,根据缺陷类型的不同,修改算法参数和相关阈值数,可实现对其他缺陷类型的检测。

作者:张鹏 丛林 单位:烟台宏远氧业股份有限公司