APP下载

基于Faster R-卷积神经网络的金属点阵结构缺陷识别方法

2019-12-23张玉燕李永保温银堂张芝威

兵工学报 2019年11期
关键词:断层灰度卷积

张玉燕, 李永保, 温银堂, 张芝威

(1.燕山大学 电气工程学院, 河北 秦皇岛 066004; 2.燕山大学 测试计量技术及仪器河北省重点实验室, 河北 秦皇岛 066004)

0 引言

金属点阵结构材料由有序微结构呈周期排列而成,是一种结构- 功能一体化新型有序多孔材料,具有超轻、高比强度、高比刚度、减震、耐冲击等结构特性,以及高效散热隔热、耐火、吸声、电磁波吸收等功能特性,近年来广泛应用于航空航天、武器装备等行业,应用需求日益迫切,因此对其性能要求也越来越高。

增材制造技术在金属点阵结构材料制备中的优势逐渐明显,其设计和制造自由度较大,能够有效解决复杂多层金属结构材料的制备问题[1]。国内外对增材制造技术制备多层金属点阵结构材料展开了相关研究[2-8]。Ushijima等[9]用选择性激光金属熔融(SLM)技术制备了一种金属点阵结构,研究了不同激光功率和扫描速度对其力学性能造成的影响。Maskery等[10]研究了由SLM制备Al-Si10-Mg材质金属点阵结构在准静态负载下的力学性能,验证了热处理对于改善点阵结构的结构功能特性的有效性。Van等[11]对SLM制备的Ti-6Al-4V材质金刚石晶胞结构点阵材料进行研究,分析了影响点阵材料疲劳寿命的因素,并提出了改善材料疲劳寿命的方法。

增材制造的本质是将材料加热至熔融状态再进行逐层堆积冷却成型,而材料在加热熔融后又快速凝固、产生急剧的热变化,从而产生大量残余应力,造成结构翘曲、裂纹、断层等不良效应[12],这些不良效应在很大程度上降低了金属点阵结构的结构- 功能性能。无损检测方法可以作为金属点阵结构性能可靠性、结构完整性的重要检测手段,其检测结果是新型材料设计、研制和改进的重要技术依据,也是结构质量控制和安全可靠性的有效技术支撑。对于金属三维多层点阵复杂结构的内部缺陷,常规无损检测方法[13-17]的检测精度和适用性较难满足精准、直观的检测需求。而工业CT技术能够以二维断层或三维立体图像清晰、直观地呈现被检测物体内部结构和缺陷,能够很好地适用于金属三维多层点阵结构。但是,若要求从大量断层图像中快速识别、评定、统计检出结果,仅依靠人工筛选和判定则需耗费大量时间,极易漏检、误判且效率极低,因此迫切需要研究高效的自动缺陷识别和评判方法。

深度学习由Hinton等[18]在2006年提出,具有多隐层人工神经网络,且通过逐层初始化对原始数据进行训练学习。深度学习在众多领域都有应用,如语音识别、人脸识别、唇语识别、图像分类识别、纹理识别、实时多人动作预测、医疗病患识别、自动驾驶、精准推荐等。最近几年,属于前馈深度网络的卷积神经网络(CNN)得到广泛关注和研究。从2012年起,CNN在ImageNet大规模视觉识别挑战赛中获得了优越的成绩[19-23]。由于CNN具有优异的识别分类能力,一些相关的CNN架构和算法被应用于多个领域并取得了良好效果。

截至目前,关于金属点阵结构的增材制造制备技术、单元的结构设计、力学性能等研究较多,而关于金属点阵结构内部缺陷的自动识别研究,国内外则鲜有报道。本文针对一种金属三维多层点阵复杂结构,提出基于Faster R-CNN的内部缺陷快速识别方法,用训练得到的模型实现了自动缺陷检出和位置分布情况的分析。

1 样件内部灰度图获取

本文研究对象是一种由SLM技术制备的三维多层点阵结构,其内部微结构单元为正四面体结构,每一个节点与其周围4个节点之间等距离连接且呈一个固定角度,如图1所示。整个三维多层点阵结构的内部结构较复杂,且其外部由一层板状结构构成,使整个结构处于封闭状态。因此需要一种无损检测手段,将其内部结构直观地呈现出来,对其内部缺陷进行检测识别。

图1 金属点阵结构微单元结构图Fig.1 Microstructure chart of metal lattice structure

本文采用工业CT无损检测方法对多层金属点阵结构材料进行扫描,可分别从xy、yz和xz层面分别进行切片处理,所用CT系统的切片厚度为0.1 mm. 考虑被测样件的结构外形特点,按照平行于微结构横向排布截面(即xy层面)进行切片,获得断层图像,所含有效像素个数更多。如图2所示,其中红框为缺陷。

图2 金属点阵结构二维断层图像Fig.2 Two-dimensional tomographic images of metal lattice structure

对于结构内部的某处缺陷,可能在多张相邻的二维断层灰度图像中都有所体现,但其特征的表现形式随着切片处点阵结构的变化而变化,且缺陷的大小尺寸不同(见图3),随着切片位置的不同,该处缺陷在每张图片中的呈现形式也不同。

图3 实际缺陷在不同断层图像中的表现形式Fig.3 Representation of actual defects in different tomographic images

2 基于Faster R-CNN的缺陷识别方法

2.1 Faster R-CNN网络结构

CNN非常适用于图像的特征提取,由于其神经元之间的连接是非全连接的,且部分神经元之间能够共享权值,降低了模型复杂度,大大减少了网络所需参数。近年来,在CNN基础上又相继出现了R-CNN[24]、Fast R-CNN[25]、Faster R-CNN[26]等算法。其中,Faster R-CNN得到了较广泛的应用[27-28]。

Faster R-CNN网络架构是在CNN基础上发展起来的,将Fast R-CNN与区域建议网络(RPN)相结合,它用RPN取代Selective Search来进行建议区域的提取。RPN可以直接利用整个检测网络的卷积特征提取建议区域,减少了建议区域的提取时间,而且得到的建议区域更加精确可靠,从而提高了整个网络架构的速度和准确性。RPN与Fast R-CNN通过共享卷积层训练全连接层构成一个统一网络。本文采用Faster R-CNN网络架构,对用工业CT采集到的金属点阵结构内部缺陷进行训练和识别。与R-CNN和Fast R-CNN相比,Faster R-CNN对目标的识别定位具有更高的准确度和更快的速度。

2.2 区域建议网络

RPN是Faster R-CNN网络结构中的一个重要环节,其结构图如图4所示。在得到最后一层卷积层的特征图后,用大小为3×3的滑动窗口对其进行扫描,得到新的n-d特征图,再通过分类层cls和位置回归层reg得到目标的分类和位置。其中,在每个滑动窗口中心处分别按照不同的宽、高比例获得k个区域建议,得到k个区域建议框左上角和右下角共4k个偏移量和以其为前景或背景的共2k个概率得分。

图4 区域建议网络结构Fig.4 Structure of region proposal network

在对RPN层进行训练时,遵循整个训练网络的多任务损失函数L如下:

(1)

(2)

x、y分别为区域的中心点坐标,w、h分别为区域的宽度和高度,smoothL1(x)为鲁棒的损失函数,

(3)

2.3 感兴趣区域池化层

当RPN层完成感兴趣区域(RoI)生成后,需要对RoI内的目标类型进行识别判断,而RPN生成的RoI尺寸并不一致,其所对应的特征图尺寸也不同,给目标类型的最终识别带来不便。因此需要对RoI尺寸进行处理,以使每一个RoI对应的特征图尺寸固定,而RoI池化能够实现这一目的。

RoI池化是池化的一种方式,主要是针对RoI的池化操作,RoI池化层的输入包含两部分:一是整个卷积网络的最后一层特征图;二是RPN层输出的区域建议信息,区域建议信息包括建议区域左上角和右下角4个坐标值和索引。根据区域建议和原始图像间的位置关系,将建议区域映射到特征图相应的位置,将特征图对应的映射区域划分为相同尺寸的部分,再对每一个相应部位进行最大池化,得到与RoI同等数目的特征图,进而对这些特征图进行分类和回归。

2.4 整体网络结构设计

由于本文使用的训练样本集较少且识别目标分类单一,为避免整个网络架构出现过拟合现象,通过3个卷积层和2个池化层对目标进行特征提取,其总体网络架构如图5所示。其中:第1层卷积层包含32个大小为7×7的卷积核,步长为2,填充宽度为0,用大小为3×3、步长为2、填充为0对卷积层输出进行最大池化;第2层卷积层包含64个大小为5×5的卷积核,步长为2、填充宽度为1,用大小为3×3、步长为2、填充为1对卷积层输出进行最大池化;第3层卷积层包含64大小为3×3的卷积核,步长为1、填充宽度为2.

在得到最后一层卷积特征层后,RPN和Fast R-CNN共享其特征参数。结合特征图,经过RPN网络得到了区域建议和区域得分,其中RPN网络是由3×3滑动窗口在得到的特征图上进行滑动,每滑动一个位置采用3个面积尺寸和3种不同长、宽比例进行窗口截取,每个滑动窗口得到9个不同建议区域,分别计算每个区域的位置坐标(9×4)和区域为目标或背景得分(9×2),共得到3 969(21×21×9)个建议窗口。选取得分最高的300个建议窗口,通过Roi Pooling层得到大小统一的矩形建议框,送入全连接层判定目标的类别和最终精确位置。

图5 Faster R-CNN整体网络架构Fig.5 Faster R-CNN network structure

3 缺陷识别结果分析

通过多功能X射线微聚焦CT系统[30]对金属点阵结构样件的扫描,可得到其内部结构重建。由于SLM技术的特点,点阵结构内部缺陷的方向一致性较强。因此,对于同一种类型缺陷(包含结点缺陷),可认为具有较强的空间对称性。在xy、yz和xz层面的断层图像中,同类缺陷的特征基本相同。针对不同层面的切片,需制作相应的训练样本,因为xy层面的图像有效像素个数较多,更易于处理,所以本文只对xy层面断层图像进行缺陷识别。

对样件三维重构中的xy层面二维图像进行等距离截取,共得到124张包含金属点阵结构有效区域的二维断层图像,取得的样件截面图有效区域大小为1 474×1 583×3. 从这124张断层图像中选取部分含有缺陷区域作为样本集(见图6),每张训练图片大小为350×350×3,共得到300个样本集。为了增加样本数量,在样本集中随机进行平移、缩小放大、翻转处理,与原有的样本构成新的样本集。

图6 带有缺陷的样本集(350×350×3)Fig.6 Sample set with defects(350×350×3)

实验使用的仿真平台为Windows,以开源的Caffe(Convolutional Architecture for Fast Feature)作为训练框架来快速构建所需的训练模型,用开源的OpenCV函数库进行图像处理、分析,整个训练用MATLAB在GPU模式下完成。

在缺陷识别模型训练开始前,将整个缺陷样本集随机分为两部分,即用于模型训练的训练集和判断模型是否有效的测试集,且两部分不发生交错重复。在构建好整个网络后,将制作好的训练集导入整个Faster R-CNN网络中进行训练,最终得到训练好的模型。在训练完成后对测试集进行测试,得到整个测试结果的平均正确率AP,该网络的准确率与召回率曲线所包含的面积即为AP值,AP值越大表示训练模型越好,测试集中缺陷识别的准确率与召回率曲线图如图7所示,其中AP值为0.995,其检测效果较好。

图7 测试结果的准确率与召回率曲线Fig.7 Precision-recall curve of test result

图9 金属点阵结构缺陷识别结果Fig.9 Recognised results of metal lattice structure defects

由于金属点阵结构内部某一处宏观实际缺陷在多张CT扫描断层图像都有体现,当断层图像对应实际缺陷的端部位置时,灰度图中表现出来的缺陷特征较难识别,如图8中红框所示。通过深度学习训练得到的缺陷检测模型对其进行检测识别时易造成遗漏,且由于被检测对象本身的不规则性和工业CT扫描技术的限制,在灰度图中像素点灰度值分布不均匀处也会形成误判,因此会影响缺陷识别结果的准确率。但是这种差异可以根据多层缺陷识别结果剔除一些误判,保持缺陷识别定位的准确性。

图8 同一端部位置缺陷对应的不同断层图像Fig.8 Different slices corresponding to the defect at one end

选取缺陷分布较复杂的二维灰度图,导入训练好的模型进行缺陷检测,含有缺陷断层图像的缺陷检测识别结果如图9所示。图9中,蓝色框表示缺陷对应的定位结果,其上方的数字部分是对应缺陷区域的分类得分。由于扫描金属点阵结构时断层之间的距离较小,每一个缺陷层对应多个扫描断层,将所有的扫描断层灰度图导入训练好的模型中对其中的缺陷进行识别定位,可在缺陷层对应的扫描断层灰度图中检测出缺陷并对缺陷进行定位。如图10所示,缺陷层对应的所有扫描断层都能被检测出缺陷,并且缺陷的定位框集中在同一区域。

图10 实际缺陷对应的断层图像缺陷识别Fig.10 Recognised results of defects in the tomographic images corresponding to the actual defects

将124张经工业CT扫描得到的断层灰度图像导入训练好的模型中进行缺陷检测,结合每张灰度图的缺陷识别情况,将所有缺陷定位标识框集中在一个立体图中,得到金属点阵结构样件内部缺陷的分布状况。如图11所示,整个金属点阵结构的内部缺陷分为3层,共有21个缺陷,其中底层有3个缺陷,中层有7个缺陷,上层有11个缺陷。

图11 金属点阵结构内部缺陷立体位置Fig.11 Three-dimensional positions of internal defects of metal lattice structure

在对金属点阵结构断层灰度图像中的缺陷进行识别定位后,根据CT扫描参数和图像中的有效区域对应的像素点个数,可以初步对二维图中的缺陷大小进行描述。本文从已识别出的含缺陷图像中随机取一张,对其中的缺陷部位进行了尺寸标记,如图12所示,其中红框标记对应缺陷部位涉及到的点阵单元结构二维平面尺寸范围,黄框对应的是缺陷部位的区域范围。

图12 断层图像中缺陷的尺寸标记Fig.12 Size marking of defect in tomographic image

4 结论

针对工业CT扫描技术得到的金属点阵结构内部灰度图中的缺陷识别和定位问题,本文提出了一种基于Faster R-CNN的缺陷识别算法。算法分析及实验结果表明:

1)算法通过设计特征提取网络,修改RPN网络,实现对样件内部的典型缺陷进行准确识别及定位,识别效果较好。

2)在训练算法前,使用一些数据增强方法,对提高算法性能有很大帮助。

3)本文算法只考虑一类缺陷的识别,后续可以考虑对多类型缺陷进行识别。

4)本文算法对于点阵结构中缺陷的量化表征,仅从二维图像来描述缺陷的大小,还不足以体现结构中某一处宏观缺陷的三维特征,应结合CT三维重构算法进行缺陷表征,今后尚需进一步研究。

猜你喜欢

断层灰度卷积
页岩断层滑移量计算模型及影响因素研究*
下保护层开采扰动断层区覆岩应力及 滑移变形规律研究*
采用改进导重法的拓扑结构灰度单元过滤技术
如何跨越假分数的思维断层
X油田断裂系统演化及低序级断层刻画研究
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
天津港智慧工作平台灰度发布系统和流程设计
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值