基于深度学习的激光粉末床熔融铺粉缺陷检测算法及其轻量化部署研究*

赵英健1,姜子萌2,张英杰3,龙 雨1

(1.广西大学,南宁 530000;2.华南理工大学自动化科学与工程学院,广州 510000;3.华南理工大学吴贤铭智能工程学院,广州 510000)

[摘要] 激光粉末床熔融技术(Laser powder bed fusion,LPBF)在航空航天工业制造中的可重复性受到缺陷的严重影响,其中铺粉过程中的缺陷对零件质量具有重要影响。本文提出了一种基于实时语义分割算法的BiseNetV2(Bilateral segmentation network)模型和加权损失的检测方法,用于实现对铺粉缺陷的类别识别和位置分割。此外,利用模型剪枝技术来优化深度学习(Deep learning,DL)模型的尺寸和性能,并通过TensorRT 技术将轻量化模型部署在监测系统中的计算机上。结果表明,结合加权损失的BiseNetV2 模型能以81.23%的平均准确率检出5 种铺粉缺陷。通过剪枝技术得到的轻量化模型在牺牲0.44%精度的同时模型大小显著减小了13.39%。利用TensorRT 技术能加速深度学习模型推理过程,在半精度浮点(Floating-point 16,FP16)数据下将检测时间缩短至5.94 ms。

关键词: 激光粉末床熔融(LPBF);铺粉缺陷;深度学习;模型剪枝;模型部署

增材制造 (Additive manufacture,AM)技术作为一种逐层累加材料制造实体零件的先进制造技术,相对于传统减材制造和等材制造具有更高的制造灵活性,是制造业最重要的支柱领域之一[1]。其中,以粉末为原料的激光粉末床熔融 (Laser powder bed fusion,LPBF)技术可制造高自由度、高致密度、高性能强度的零件,因此被广泛应用于航空航天、汽车和生物医疗等领域[2]。LPBF 工艺通过在粉末床成形区域上逐层铺设粉末,再通过激光能量作用在粉末上产生冶金结合形成具有层厚 (20 ~ 200 μm)的零件部分,如此循环最终形成零件。所以,通过LPBF 制造的零件质量不仅取决于连续层的粉末颗粒的熔融状态,还取决于粉末床的完整性和铺粉过程的稳定性[3]。而在重复成百上千次的逐层铺粉过程中,粉床中可能会出现铺粉不足、飞溅簇、烟尘、刮刀沟纹和超高等缺陷[4]。这些铺粉缺陷会进一步影响粉床的热导率、熔池状态等[5],严重的铺粉缺陷将造成缺乏融合、气孔和残余应力较高等零件缺陷,甚至破坏打印过程,导致生产成本浪费。因此,保障LPBF 工艺过程中的逐层粉床质量,对改善零件质量的一致性和提高制造工艺的可重复性至关重要。

早期的一些研究聚焦于改进粉床的传感器系统和开发更先进的粉床成像技术。例如,Craeghs 等[6]提出了一种目视检测系统,能够有效鉴别出刮刀磨损和零件局部损坏导致的刮刀条纹缺陷;Neef 等[7]利用低相干干涉测量 (Low coherence interferometry,LCI)技术实现了对粉末床中刮刀条纹缺陷和超高缺陷的检测。然而这些方法很大程度上依赖于传感器系统性能以及研究人员的专业知识能力,无法实现自动识别缺陷。因此,对于获取的任何类型的传感数据都需要建立自动识别缺陷的方法,以满足行业的质量要求和过程控制需求。随着人工智能技术的快速发展,通过基于数据驱动的机器学习方法实现了自动化检测铺粉缺陷。例如,Lin 等[8]通过多层感知机 (Multilayer perceptron,MLP)和支持向量机 (Support vector machine,SVM)对图像处理后得到的缺陷特征进行分类,实现了对杂质缺陷和刮刀条纹缺陷的识别。但这种基于传统机器学习的检测方法依然需要烦琐的手动提取特征,泛化性能较差。

深度学习作为机器学习领域中的一个先进的研究方向,相比于传统机器学习方法,通过卷积神经网络 (Convolutional neural network,CNN)自动提取缺陷特征,具有更好的泛化性,为计算机辅助缺陷检测提供了新的解决方案[9–12]。因此,近几年基于深度学习的铺粉缺陷检测方法已经被逐渐开发。Erik 等[13]利用VGG16 网络和Xception 网络实现了对选择性激光烧结 (Selective laser sintering,SLS)过程中粉床质量的自动分类,将铺粉图像分类为质量好或坏。Xiao 等[3]基于ResNet101 网络和FCN(Fully convolutional network)全卷积网络开发了一种两阶段的TSCNN (Two-stage convolution neural network)模型,实现了对SLS 过程中的3 种铺粉缺陷像素级检测。Scime 等[4]提出了一种动态分割网络DSCNN(Dynamic segmentation CNN),该网络结构由3 个支路组成,包含提取深层形态特征的U-Net、提取大尺度特征的CNN 和用于像素级分类的定位支路,实现了5 种LPBF粉床类别的逐像素检测。

虽然上述研究在LPBF 铺粉缺陷检测方面取得了良好进展,但这些研究工作大多只是实现了少量的缺陷类别识别,并且只是简单地考虑了深度学习模型的准确性,而忽略了深度学习模型的储存大小、推理时间、计算资源以及部署成本。具体来说,这些问题主要表现在3 个方面: (1)LPBF 铺粉缺陷通常因为多种产生原因而呈现不同程度的异常形式,目前所开发的大多数模型仅能支持检测少量类别的铺粉缺陷[3,13],这将导致检测结果无法全面反映LPBF 粉床信息; (2)复杂的深度学习模型虽然具有更高的精度,但模型参数量也更大,例如VGG16(Visual geometry group 16) 模型[14]的参数量高达1.38亿个,ResNet–152(Residual network 152)模型[15]的总参数量高达7.3 亿个,这将可能导致难以处理的复杂部署问题; (3)极其昂贵的计算成本和内存极大地阻碍了深度学习模型在资源有限的平台上的部署。

本研究针对以上实际问题,提出一种结合加权损失的基于BiseNetV2网络的检测模型,并通过剪枝方法对其进行轻量化,最后利用NVIDIA TensorRT 技术将轻量化模型部署在LPBF 监测系统的计算机以及资源有限的移动设备上。

1 数据采集

1.1 铺粉数据采集系统

本试验中所使用的LPBF 设备为DiMetal – 300(广州雷佳增材科技有限公司),如图1(a)所示,该设备成形腔尺寸为250 mm×250 mm×300 mm,配备红外掺镱光纤激光器,最大功率为500 W,最高扫描速度为7.8 m/s,分层厚度范围为0.02 ~ 0.2 mm,可打印包括不锈钢、钴铬合金、钛合金、高温合金、模具钢等金属粉末材料,并采用双缸单向供粉方式进行铺粉。

图1 LPBF 铺粉数据采集设备示意图
Fig.1 Schematic diagram of the LPBF powder spreading data acquisition equipment

LPBF 监测系统包括工业相机、LED 光源以及与LPBF 设备相连接的计算机。通过在LPBF 设备的成型腔顶部安装工业相机DMK33G002(德国映美精有限公司),以及在成型腔上方配置3 个LED 光源来提供可靠的照明,从上方对粉末床进行拍摄,如图1(b)所示。在每次铺粉完成后,与LPBF 设备连接的计算机收到信号并发出指令,使得相机拍摄当前粉床表面图像,经过透视校正获取包含整个基板区域的铺粉图像,最后采集得到的逐层铺粉后的图像被保存至计算机中的指定文件夹中,为后续的铺粉缺陷监测提供可靠的数据支持。

1.2 数据分析及处理

通过LPBF 铺粉监测系统可采集到3341 pixel×3340 pixel 的高分辨率铺粉图像,铺粉图像中的每个像素对应的实际视场大小约为75 μm×75 μm。其中,获取得到的铺粉图像包含了5 种铺粉缺陷,如图2 所示。这些铺粉缺陷所产生的原因分别如下[4]

图2 铺粉图像中的各缺陷类型
Fig.2 Each defect type in the powder spreading image

(1)铺粉不足缺陷。当粉仓处的粉末不足或铺粉装置出现故障时,会产生零件表面铺粉不充分的现象,多发生在粉末收集仓附近。

(2)飞溅簇缺陷。当飞溅相互碰撞或与冷原料粉末颗粒碰撞时,可以通过聚结或烧结产生更大和不规则的簇。

(3)烟尘缺陷。散落在粉床上的细小飞溅颗粒是在粉末熔化过程中产生的由熔池或熔化但未固结的喷出物组成的粉末粒子。

(4)刮刀条纹缺陷。飞溅簇或零件凸起部分与刮刀推送的粉堆相互作用,会产生沿铺粉方向分布的条纹。

(5)超高缺陷。由于残余热应力或过高的能量输入而导致的零件在粉末层上的翘曲。

在整个高分辨率的铺粉图像中,大部分像素面积来自于粉末,而铺粉缺陷所占的像素面积相对较小。若直接将高分辨率的图像作为深度学习模型的输入,将导致深度学习模型难以学习到细微的铺粉缺陷特征。此外,还会增加模型的训练以及推理时间。因此,本研究将3341 pixel×3340 pixel 的铺粉图像根据打印零件所处位置进行裁剪,获取得到300 pixel×300 pixel 和480 pixel×480 pixel 的铺粉图像,经过筛选获得800张含有缺陷的图像。使用Lablelme软件对缺陷进行逐像素的类别标注和位置标注。铺粉缺陷数据集制作流程如图3 所示。最后,为避免模型发生过拟合,将数据集按照7∶3 的比例划分为训练集和验证集,用于训练模型和验证模型的性能。

图3 铺粉缺陷数据集制作流程
Fig.3 Flow of making data set of powder spreading defects

2 方法

本研究方法流程图如图4 所示。在模型准备阶段,构建一种结合加权损失的基于BiseNetV2 网络的检测模型,利用铺粉缺陷图像数据,并结合加载预训练权重的迁移学习方法对模型进行训练。在模型轻量化阶段,通过通道剪枝方法对模型进行轻量化。最后在部署阶段,通过NVIDIA TensorRT 技术将轻量化模型部署在LPBF 监测系统的计算机,以及资源有限的移动设备上。

图4 本研究提出的轻量化部署流程
Fig.4 Lightweight deployment process proposed in this study

2.1 基于深度学习的铺粉缺陷检测模型

基于深度学习的语义分割算法提供了端到端的检测模型,通过对图像进行逐像素的分类从而实现对缺陷类别的识别及缺陷区域的像素级定位。近年来,计算机视觉领域越来越多的研究工作集中在设计轻量级、高效的模型结构上,以满足实时性要求,并在资源受限的环境中实现高性能。其中,BiseNetV2 模型[16]作为一种先进且经典的实时语义分割模型,实现了高精度和高效率的兼顾。其网络结构包含分离的双边路径,即一条全局路径捕捉全局上下文信息和一条局部路径处理细节特征。并引入Efficient context embedding(ECE)模块以有效嵌入上下文信息,同时采用适应性的上采样模块以适应不同图像分辨率。这些设计使BiseNet V2 能够在保持精度的同时,更有效地处理图像分割任务。Liu[17]和Tsiakmaki[18]等的研究表明,迁移学习方法可以帮助深度学习模型在缺乏数据的情况下获得可靠性能。因此,在本研究中采取迁移学习的方法,即通过加载模型在非常大的数据集中预训练得到的权重,再使用540张铺粉图像对网络进行微调。

在本研究中,采用CrossEntropy Loss 来计算损失。但在标注的训练集中发现各铺粉缺陷类别标注的像素点数量之间存在显著差异,详见表1。这种数据不平衡问题可能导致模型在训练过程中容易学习到数量较多的特征信息,使得模型过拟合或精度降低。因此,本研究提出了结合加权损失的BiseNetV2 方法,即BiseNetV2-WL(BiseNetV2-Weighed Loss)模型。该方法通过使用带有权重的损失函数对每个类别的损失进行加权,即增大像素数量较少的类别的权重,从而使模型更加平衡地学习各类别信息。使用式 (1)计算各类别权重。

表1 训练集中各铺粉缺陷类别标注的像素点数目
Table 1 Number of pixel points labeled for each powder spreading defect category in the training set

铺粉缺陷像素点标注数目类别权重wclass粉末(背景)632582140.056铺粉不足70437320.063飞溅簇2054100.082烟尘4913750.076刮刀条纹5009260.076超高6227430.075

式中,wclass 为各类别权重;C 为在训练时手动设置的超参数,通常取经验值为1.02;Pclass 为该类别的像素数量。

2.2 模型剪枝技术

通常,训练得到的深度学习模型的参数化程度非常高,这会带来巨大的计算和内存资源开销。因此,为了适应实际部署的需求,深度学习模型需要进一步进行轻量优化。模型剪枝技术是CNN 中常使用的一种有效的模型轻量化技术,可以减少模型参数和简化模型结构。其中,基于通道剪枝的方法通过去除模型中冗余的权重参数 (即不重要的通道)来降低模型的复杂度。因此,可以在保障模型精度的情况下加快模型推理速度。

本研究采用一种基于灵敏度的通道剪枝方法[19]对模型进行轻量化,具体步骤为: (1)设定了一个目标剪枝率 (以分数表示,0.2 表示修剪20%的权重参数); (2)计算深度学习模型中每个卷积层的敏感度,即按照0.1、 0.2、 0.3、 0.4、 0.5、 0.6、 0.7、0.8、 0.9 依次剪掉当前卷积层的输出通道数,在验证集上计算剪裁后的精度损失; (3)得到敏感度信息后,对于剪枝比例越大精度损失越小的层,认为其敏感度越低,可以进行较大比例的裁剪,根据敏感度和精度损失阈值计算出每个卷积层的剪切率,最终达到目标剪枝率; (4)在模型剪枝后,需重新训练剪枝后得到的轻量化模型,以进一步减少精度损失。

2.3 基于TensorRT 技术的模型部署

将深度学习模型直接部署在监测系统的计算机中往往是低效的,因为目前深度学习模型通常是在一些主流的深度学习框架 (例如,PaddlePaddle、TensorFlow 和PyTorch等)进行训练和推理,但在实际工程中用这些框架进行推理的速度并不优秀,难以满足实时性、低延迟或资源受限等要求。而通过NVIDIA 提供的TensorRT 技术来部署主流框架上训练的模型能够极大地优化模型结构和提高模型推理速度。因为,TensorRT 技术可以进一步优化模型网络结构,即将卷积层、偏置层以及激活函数层合并为一层CBR(Convolution,Bias,and ReLU)层,减少了网络层数和参数之间的运算时间,并且可以合理地分配计算机中的GPU 资源。

除此之外,TensorRT 还支持数据低精度校准。一般在深度学习框架下训练模型时,其网络中参数为单精度浮点类型 (FP32),模型在部署推理时可以适当降低数据的精度,即将FP32 降低为半精度浮点数据类型(FP16)进行推理,由于TensorRT 有自动校准的功能,在保持相对较好的模型准确率的同时可显著提高推理性能,因此在实际生产中得到了广泛的应用。

3 结果与讨论

3.1 训练过程及验证结果

本研究使用Python 3.8 基于PaddlePaddle 开源框架编程实现。采用PolynomialDecay 多项式衰减的学习策略,衰减率为0.9,初始学习率为0.01,逐步衰减到0。为提高梯度更新的稳定性,使用SGD 作为优化器进行梯度下降,动量参数设为0.9,每个批次训练大小为4,共训练迭代10000个批次。

BiseNetV2 模型与改进的Bise NetV2-WL 模型在训练过程中的损失曲线如图5 所示。两个模型的损失在训练初期均呈快速下降的趋势,这得益于迁移学习可以提高模型的初始性能,使得模型能够更快地降低损失,并在更小的范围内进行回归。随着训练的深入,损失均逐渐趋于稳定。其中BiseNetV2-WL 模型在训练80 个批次后损失便趋于稳定,在0.033 左右浮动。而BiseNetV2 模型在前5000 个批次时损失逐渐减小,在5000 个批次后稳定在0.62 左右。对比两种模型的训练损失结果表明,通过加权处理损失函数的方法,BiseNetV2-WL 模型的损失收敛值相较于BiseNetV2 模型降低了0.587。这一显著差异表示改进后的模型预测的回归值与最优解之间的距离更小,从而证明了通过加权损失来缓解数据不平衡的有效性。

图5 BiseNetV2 模型与改进的BiseNetV2-WL 模型在训练过程中的损失曲线
Fig.5 Loss curves of the BiseNetV2 model versus the improved BiseNetV2-WL model during the training process

进一步的,不同深度学习方法检测各铺粉缺陷的验证结果如表2 所示,其中准确率表示预测该类正确的像素占该类真实像素的比例,检测时间表示模型检测一张300 pixel×300 pixel 的铺粉图像所需时间。验证结果表明,本研究提出的BiseNetV2-WL方法能以98.66%准确率检出铺粉不足缺陷,这是因为该缺陷具有区域面积大的特点,缺陷在特征层映射的感受野面积大而易于被CNN提取。而检测其他缺陷的准确率为61.21% ~ 79.31%,这些缺陷相比于铺粉不足缺陷的准确率略低,是因为其形状更为复杂 (如飞溅簇缺陷)、缺陷面积更加细小 (如刮刀条纹、超高缺陷)、缺陷痕迹不够明显 (如烟尘缺陷)等。BiseNetV2-WL 模型检测各铺粉缺陷结果示例如图6 所示。相比原始BiseNetV2 模型,本文方法通过合理分配各类别之间的损失权值,显著提高了模型检测各缺陷的准确率,例如飞溅簇缺陷提高了9.87%,烟尘缺陷提高了9.6%,刮刀条纹提高了11.36%,超高缺陷提高了16.82%,平均准确率提高了8.28%。从各深度学习方法检测铺粉缺陷结果示例中 (图7)可以观察到BiseNetV2-WL 模型相较于BiseNetV2 模型能更好地识别出零件边缘所产生的细长的超高缺陷。这进一步验证了通过加权损失方法来缓解数据不平衡、提升模型准确率的有效性。

表2 不同深度学习方法检测各铺粉缺陷验证结果
Table 2 Validation results of different deep learning methods for detecting each powder spreading defects

铺粉缺陷检测准确率FastSCNNFCNUNetDSCNN[4]BiseNetV2BiseNetV2-WL粉末(背景)/%98.2498.8298.7899.0096.2498.42铺粉不足/%97.3399.0098.0895.7098.8398.66飞溅簇/%74.8388.0781.1567.3069.4479.31烟尘/%76.4573.1181.92—66.5876.18刮刀条纹/%74.4272.2970.8731.5062.2273.58超高/%56.5380.0369.2468.5044.3961.21平均准确率/%79.6385.2283.3472.4072.9581.23检测时间/ms20.9354.3946.03—16.7516.75

图6 BiseNetV2-WL 模型检测铺粉图像中的各缺陷结果示例
Fig.6 Example of defect detection results in powder spreading images by the BiseNetV2-WL model

图7 不同深度学习方法检测铺粉缺陷结果示例
Fig.7 Example of the results of different deep learning methods for detecting powder spreading defects

此外,与先进的实时语义分割模型FastSCNN(Fast semantic segmentation network)模型[20]相比,本文所提出的方法在检测超高缺陷方面提升了4.68%,同时检测时间减少了4.18 ms,体现出更优异的综合性能。如图7 所示,BiseNetV2-WL 模型相较于FastSCNN 模型能更完整地识别出缺陷。虽然两种经典的语义分割网络FCN 模型[21]和UNet 模型[22]均取得了更好的检测效果(分别提高了3.99%和2.11%),且在图7 中可观察到这两种模型识别出了一些更细小的缺陷,但其代价是花费了BiseNetV2-WL 模型2 ~ 3 倍的预测时间。与Scime 等[4]的研究相比,本文所提出的方法不仅扩展了对更多缺陷类别的检测 (增加对烟尘类缺陷的检测),并且在多种缺陷的检测准确率上均有了较大的提高 (提升了2.96% ~ 42.08%)。综上所述,本研究所提出的BiseNetV2-WL 模型在检测准确率和检测时间两方面进行了友好的平衡,取得了良好的综合性能。

本研究所提出的BiseNetV2-WL方法作为一种有监督学习算法,其在实际应用中往往需要考虑到训练数据成本。因此,进一步研究了模型检测准确性与训练图像数量之间的敏感关系。试验中将含有560 张图像的训练集分别随机缩减为10、 20、 40、56、 112、 168、 224、 336、 448 张图像,构成新的训练集来训练BiseNetV2-WL 模型,依然采用240 张图像来进行验证评估。BiseNetV2-WL 模型检测各缺陷准确性与训练样本数量的敏感关系曲线如图8 所示。结果表明,增加训练数据量对于提高模型准确率是有益的,尤其是在检测烟尘、刮刀条纹和超高缺陷上的准确率有了明显提高。但在达到一定数量的训练数据后,模型的性能趋于稳定,因此在实际应用中,需要权衡数据量和计算资源之间的成本。图9 展示了利用不同数量的图像训练得到的BiseNetV2-WL 模型检测一张含有多种铺粉缺陷的图像示例,可以看出随着训练图像数量的增加,得到的模型不仅能逐渐识别出更多的缺陷,并且定位分割效果更加精准细腻。

图8 BiseNetV2-WL 模型检测各缺陷准确性与训练样本数量敏感关系曲线
Fig.8 Sensitivity curves of the accuracy of BiseNetV2-WL model in detecting each defect with respect to the number of training samples

图9 不同数量训练图像训练的BiseNetV2-WL 模型检测铺粉缺陷结果示例
Fig.9 Example of results of BiseNetV2-WL model trained with different number of training images to detect powder spreading defects

3.2 模型剪枝结果

为检验模型剪枝对深度学习模型的影响,分别设置剪枝率0.2、0.4、0.6 和0.8 来对BiseNetV2-WL 模型进行剪枝,研究了剪枝率变化对模型精度和模型大小的影响。剪枝对比结果如表3所示。从试验结果可以看出,适当的剪枝率能够压缩模型,同时保证剪枝后得到的轻量化模型准确率接近原始模型的准确率,例如剪枝率为0.2 和0.4 时,剪枝模型准确率虽然分别降低了0.44%和1.65%,但模型大小分别减小了13.39%和17.21%。这是因为设置合适的剪枝率可以消除CNN 模型中神经元之间不重要的冗余参数,从而在降低模型复杂度的同时修正模型检测精度。但当剪枝率高于某个较高水平时,虽然可以进一步降低模型大小,但即使对整个剪枝得到的轻量化模型进行重新训练也无法阻止模型精度的急剧下降。例如当剪枝率为0.8 时,虽然模型大小减少了80.2%,但平均准确率却降低了26.09%。

表3 不同剪枝率的剪枝对比结果
Table 3 Comparative results of pruning with different pruning rates

缺陷检测准确率/%剪枝率模型大小/MB检测时间/ms粉末铺粉不足飞溅簇烟尘刮刀条纹超高平均准确率0 98.42 98.66 79.31 76.18 73.58 61.21 81.23 8.89 16.75 0.2 98.38 98.83 76.83 80.38 70.87 59.46 80.79 7.70 13.05 0.4 98.54 98.04 78.29 77.54 69.20 55.86 79.58 7.36 13.00 0.6 94.13 98.81 81.18 53.49 52.66 54.26 72.42 4.00 12.26 0.8 89.97 98.44 42.76 0.00 55.22 44.47 55.14 1.76 11.35

通过剪枝对比试验,证明了剪枝方法的有效性,即通过选取合适的剪枝率可以在略微牺牲模型准确率的同时有效地减少模型大小,缩短检测时间,这将有助于深度学习模型进行实时检测。最后,在综合考虑模型精度和模型大小的情况下,对选取剪枝率为0.2 得到的轻量化模型BiseNetV2-WLP(BiseNetV2-WL Prune)进行部署研究。

3.3 模型部署结果

本研究中,在监测系统的计算机中进一步部署了经过剪枝优化的BiseNetV2-WLP 模型,并使用额外的200 张300 pixel×300 pixel 的铺粉图像对其性能做了详细测试。试验中,计算机操作系统为Windows10,CPU为Inter Core i5–10500 3.10 GHz,GPU为GTX 1650,显存为4 GB,并配置CUDA 10.2、cuDNN 7.6.5 等相关环境以支持TensorRT 7.00 的使用。在计算机上部署检测结果,如表4 所示。首先,仅使用CPU 计算资源,本研究所构建的轻量化模型仍然具有推理的可行性。尽管相较于GPU,CPU推理时间显著增加至82.28 ms,但这为将深度学习部署在一些资源有限的环境中 (例如没有GPU 支持的设备)提供了可行性基础。其次,通过TensorRT 技术成功提升了模型38%的检测速度。这种提升既得益于网络模型经过进一步轻量化,减少了层之间的运算时间,也得益于TensorRT充分利用了GPU 资源来处理检测任务。GPU 使用率达到40%以上的现象表明,TensorRT 不仅在模型结构上进行了优化,还有效地利用了硬件加速,使整体性能得到明显提升。值得注意的是,将FP32 数据通过TensorRT 技术进行低精度校准处理后,采用FP16 数据进一步加速了模型推理,将检测时间降低至5.94 ms。这是因为FP16 数据的使用仅占用了FP32 数据一半的位数,从而有效减少了计算负担。这一结果强调了在资源受限的环境中,通过降低计算精度来换取推理速度的可行性。

表4 在监测系统计算机上部署检测结果
Table 4 Deployment of test results on monitoring system computers

计算资源数据类型TensorRT检测时间/msCPU 占用内存/MBGPU 占用内存/MBGPU 使用率NVDIA CPUFP32×82.28340.300.000.00 NVDIA GPU FP32×10.702390.95706.000.16 FP32√6.672937.98900.000.49 FP16√5.942934.66892.000.44

此外,本工作还对深度学习模型部署在移动设备上进行了浅尝试,即将BiseNetV2-WLP 铺粉检测模型部署在安卓手机里。试验中,安卓手机操作系统为ColorOS 基于Android 13,CPU 处理器为高通骁龙TM865,运行内存为12 GB。部署后检测流程及结果如图10 所示。通过手机APP(Application)界面右上的“Open Gallery”或“Take Photo”从手机相册或相机中加载测试图像,模型检测一张300 pixel×300 pixel 的图像需要183 ms,检测时间远高于计算机,这是因为手机通常比计算机的硬件性能低,尤其是在处理图形计算方面。但通过在手机上部署的初步尝试,可以增加监测系统的灵活性,使得检测和分析可以在不同地点和设备上进行,而不受到特定硬件设备的限制,有助于未来对于LPBF 实时远程监测的发展。

图10 在安卓手机上部署后的检测流程及结果
Fig.10 Detection process and results after deployment on an Android phone

4 结论

(1)建立了含有5 种常见铺粉缺陷的图像数据集,为激光粉末床熔融铺粉过程监测提供更多的数据支持。

(2)结合加权损失的BiseNetV2模型对5 种铺粉缺陷进行类别识别及位置分割,可实现81.23%的平均准确率。

(3)模型剪枝技术可有效构建轻量化模型,在略微降低模型精度(降低0.44%)的同时显著减少模型大小(减小了13.39%)。

(4)利用TensorRT 技术可优化深度学习模型部署加快推理速度,并且通过FP16 数据推理,进一步将检测一张300 pixel×300 pixel 图像的时间缩短至5.94 ms。

参 考 文 献

[1]KUMAR S A, PRASAD R V S.Basic principles of additive manufacturing: different additive manufacturing technologies[J/OL].Additive Manufacturing, 2021: 17–35.DOI: 10.1007/978–981–15–8319–3_4.

[2]BLAKEY-MILNER B, GRADL P,SNEDDEN G, et al.Metal additive manufacturing in aerospace: A review[J].Materials & Design,2021, 209(12): 110008.

[3]XIAO L, LU M Y, HUANG H.Detection of powder bed defects in selective laser sintering using convolutional neural network[J].The International Journal of Advanced Manufacturing Technology, 2020, 107(5): 2485–2496.

[4]SCIME L, SIDDEL D, BAIRD S, et al.Layer-wise anomaly detection and classification for powder bed additive manufacturing processes:A machine-agnostic algorithm for real-time pixel-wise semantic segmentation[J].Additive Manufacturing, 2020, 36: 101453.

[5]MALEKIPOUR E, EL-MOUNAYRI H.Common defects and contributing parameters in powder bed fusion AM process and their classification for online monitoring and control: A review[J].The International Journal of Advanced Manufacturing Technology, 2018, 95(1): 527–550.

[6]CRAEGHS T, CLIJSTERS S, YASA E et al.Onlizne quality control of selective laser melting[C]//Proceedings of the 20th Annual International Solid Freeform Fabrication Symposium—An Additive Manufacturing Conference.Austin, 2011.

[7]NEEF A, SEYDA V, HERZOG D, et al.Low coherence interferometry in selective laser melting[J].Physics Procedia, 2014, 56: 82–89.

[8]LIN Z, LAI Y, PAN T, et al.A new method for automatic detection of defects in selective laser melting based on machine vision[J].Materials (Basel), 2021, 14(15): 4175.

[9]缪寅宵, 孙增玉, 杨奕, 等.基于深度学习的X 射线胶片数字化与缺陷检测算法[J].航空制造技术, 2023, 66(7): 50–56, 72.MIAO Yinxiao, SUN Zengyu, YANG Yi, et al.Algorithm of X-ray film digitization and defect detection based on depth learning[J].Aeronautical Manufacturing Technology, 2023, 66(7): 50–56,72.

[10]JAIN S, SETH G, PARUTHI A, et al.Synthetic data augmentation for surface defect detection and classification using deep learning[J].Journal of Intelligent Manufacturing, 2022, 33(4):1007–1020.

[11]HOYOUNG L, WOONGBEOM H, JEONGHO Y, et al.Deep learning for in situ powder stream fault detection in directed energy deposition process[J].Journal of Manufacturing Systems, 2022, 62: 575–587.

[12]崔俊佳, 张军, 莦茹茹, 等.基于深度学习的自冲铆接偏铆缺陷检测算法研究[J].航空制造技术, 2023, 66(6): 22–30.CUI Junjia, ZHANG Jun, XIAO Ruru, et al.Research on detection algorithm of partial riveting defects in self-piercing riveting based on deep learning[J].Aeronautical Manufacturing Technology, 2023, 66(6): 22–30.

[13]ERIK W, HERMANN S.A machine learning method for defect detection and visualization in selective laser sintering based on convolutional neural networks[J].Additive Manufacturing, 2021: 101965.

[14]SIMONYAN K, ZISSERMAN A.Very deep convolutional networks for largescale image recognition[J/OL].3rd International Conference on Learning Representations, ICLR 2015–Conference Track Proceedings, 2015.[2015–04–10].https://doi.org/10.48550/arXiv.1409.1556.

[15]HE K M, ZHANG X Y, REN S Q, et al.Deep residual learning for image recognition[C].Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition.Las Vegas, 2016: 770–778.

[16]YU C Q, GAO C X, WANG J B, et al.BiSeNet V2: Bilateral network with guided aggregation for real-time semantic segmentation[J].International Journal of Computer Vision, 2021,129(11): 3051–3068.

[17]LIU J, GUO F, GAO H, et al.Defect detection of injection molding products on small datasets using transfer learning[J].Journal of Manufacturing Processes, 2021, 70: 400–413.

[18]TSIAKMAKI M, KOSTOPOULOS G, KOTSIANTIS S, et al.Transfer learning from deep neural networks for predicting student performance[J].Applied Sciences (Switzerland),2020, 10(6), 2145.

[19]LI H, SAMET H, KADAV A et al.Pruning filters for efficient convNets[C]//5th International Conference on Learning Representations, ICLR 2017– Conference Track Proceedings.Toulun, 2016.

[20]POUDEL R P K, LIWICKI S,CIPOLLA R.Fast-SCNN: Fast semantic segmentation network[C]//30th British Machine Vision Conference 2019.Cardiff, 2019.

[21]SHELHAMER E, LONG J,DARRELL T.Fully convolutional networks for semantic segmentation[J].IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017,39(4): 640–651.

[22]WENG W, ZHU X.U-Net:Convolutional networks for biomedical image segmentation[J].IEEE Access, 2015, 9: 16591–16603.

Deep Learning-Based Algorithm for Detection of Powder Spreading Defects in Laser Powder Bed Fusion and Its Lightweight Deployment Study

ZHAO Yingjian1, JIANG Zimeng2, ZHANG Yingjie3, LONG Yu1
(1.Guangxi University, Nanning 530000, China;2.School of Automation Science and Engineering, South China University of Technology, Guangzhou 510000, China;3.Wu Xianming Institute of Intelligent Engineering, South China University of Technology, Guangzhou 510000, China)

[ABSTRACT] The reproducibility of laser powder bed fusion (LPBF) technology in aerospace industry manufacturing is seriously affected by defects, and the defects in the powder spreading process have a significant impact on part quality.In this paper, a detection method based on the real-time semantic segmentation algorithm bilateral segmentation network(BiseNetV2) model and weighted loss is proposed for realizing category identification and location segmentation of powder spreading defects.In addition, a model pruning technique is utilized to optimize the size and performance of the deep learning (DL) model, and the lightweight model is deployed on computers in the monitoring system using the TensorRT technique.The results show that the BiseNetV2 model combined with weighted loss is able to detect five types of powder spreading defects with an average accuracy of 81.23%.The lightweight model obtained by pruning technique significantly reduces the model size by 13.39% while sacrificing 0.44% accuracy.Utilizing the TensorRT technique accelerates the deep learning model inference process and reduces the detection time to 5.94 ms with half-precision floating-point 16 (FP16)data.

Keywords: Laser powder bed fusion (LPBF); Powder spreading defects; Deep learning; Model pruning; Model deployment

DOI: 10.16080/j.issn1671-833x.2024.15.065

引文格式 赵英健, 姜子萌, 张英杰, 等.基于深度学习的激光粉末床熔融铺粉缺陷检测算法及其轻量化部署研究[J].航空制造技术,2024, 67(15): 65–73, 80.

ZHAO Yingjian, JIANG Zimeng, ZHANG Yingjie, et al.Deep learning-based algorithm for detection of powder spreading defects in laser powder bed fusion and its lightweight deployment study[J].Aeronautical Manufacturing Technology, 2024,67(15): 65–73, 80.

*基金项目: 广西重点研发计划 (桂科AB23026101);广西自然科学基金 (2023GXNSFBA026287);国家重点研发计划 (2021YFE0203500,2022YFB4601601)。

赵英健

硕士研究生,研究方向为过程监测和深度学习。

通讯作者:龙雨,教授,博士,主要从事增材制造及激光加工方面研究。

(责编 阳光)