百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

基于yolov4的航天发动机,如何改进损伤检测方法以及优化设计?

bigegpt 2024-08-02 10:48 9 浏览

引言:

航空发动机长时间在高温、高压和交变负荷等环境下工作,其零/部件容易出现裂纹、烧蚀和缺失等损伤,及时发现损伤对航空发动机安全运行十分重要。孔探检测是航空发动机检修必不可少的关键环节,但目前孔探仪不能自动识别损伤类型,检修过程依赖人员的专业知识和经验。

自动识别损伤类型可提高孔探检测效率,避免外部因素的干扰,给检测人员提供更为客观的判断依据,因此,实现航空发动机损伤的自动、准确检测成为研究热点。近年来,研究人员将图像处理技术和机器学习应用到航空发动机损伤自动检测中。ZHENG等人将Otsu自适应阈值方法与Canny边缘检测方法相结合,对航空发动机涡轮叶片的灰度图像分割。YAN使用随机森林算法对航空发动机故障进行诊断,并通过线性特征变换解决原始随机森林算法在特征评估中没有考虑到特征相互作用的问题。

陈果等人设计结构自适应算法,将反向传播(Back Propagation, BP)神经网络和遗传算法结合,实现模型参数自适应选取,解决网络结构设计困难的问题,验证了模型对航空发动机损伤检测的有效性。叶志锋等人将概率神经网络与BP神经网络进行对比,在测量参数噪声较小时。

两者对航空发动机损伤检测准确率都较高;当测量参数噪声较大时,PNN损伤检测的准确率高于BP神经网络,但图像处理技术和传统机器学习存在较大局限性,对噪声和灰度不均匀敏感,需要人工设计特征,提取损伤特征信息有限,模型泛化能力差,并且航空发动机孔探图像背景复杂,包含大量噪声,同种类型损伤形状和尺寸差异较大,上述方法难以满足航空发动机损伤自动检测的需求。随着深度学习的快速发展,越来越多的目标检测模型被提出,给损伤检测提供新的思路。深度卷积神经网络(Deep Convolutional Neural Networks, DCNN)在航空发动机损伤检测领域性能优越,主要有两阶段检测和单阶段检测共2种方法。

两阶段检测方法中主要为Faster R-CNN算法[8]及优化方法在孔探损伤检测中得到应用。Faster R-CNN算法由Fast R-CNN算法基础上改进而来,添加区域建议网络(Region Proposal Network, RPN)产生候选区域,再对目标进行分类。JANG等人使用Faster R-CNN算法对涡轮叶片上裂纹和凹痕2种损伤进行了检测,平均准确率为96.1 %。

HE等人提出改进的Mask R-CNN算法对航空发动机叶片进行损伤检测,Mask R-CNN算法既能对损伤进行分类,又能实现损伤像素级的分割。虽然两阶段检测方法损伤检测精度高,但检测过程需生成候选区域,导致检测速度慢,不能满足实时检测的工作需求。以YOLO为代表的单阶段检测方法舍弃候选区域生成过程,直接对目标进行定位和分类。CHEN等人使用K-means聚类方法对YOLOv4目标检测算法锚框重新设计,使锚框更接近航空发动机叶片损伤情况,平均精度提高约1 %。BIN等人提出改进的YOLOv4检测算法对航空发动机部件表面缺陷进行检测,在特征提取网络的输出层和空间金字塔池化层添加卷积结构,损伤检测的mAP值提高了4.55 %,但引入额外的参数使模型的检测速度有所降低。

与两阶段检测方法相比,单阶段检测方法网络结构精简,计算量降低,检测速度更快,能够满足实时检测的要求,但由于现有损伤检测模型参数量大,对硬件性能要求高,而孔探检测需移动设备完成,其算力有限,模型不能在移动端部署。为了减少模型参数量和提高检测速度,降低模型对硬件性能的要求,本文提出了一种基于YOLOv4目标检测算法的轻量化航空发动机损伤检测模型。

通过引入深度可分离卷积结构,将颈部结构(Neck)中普通卷积重构为逐通道卷积和逐点卷积,实现了特征融合结构的轻量化,减少了网络的冗余参数;使用MobileNetv3作为特征提取网络,进一步降低了模型参数量和提高了检测速度;在路径聚合网络的卷积层中引入注意力卷积模块,从通道和空间两个维度优化特征权重分布,增强有效特征权重,同时抑制无效特征权重,提高了轻量化改进后的模型对航空发动机损伤检测的准确性。轻量、高效的损伤检测模型更好地满足了航空发动机对智能化孔探检测的需求。

YOLOv4基本模型

YOLOv4是一种高效快速的单阶段检测算法,分析验证了免费包(Bag-of-Freebies)和特赠包(Bag-of-Specials)2种方法对训练和推理的影响,并引入了跨小型批量连接(Cross mini-Batch Normalization, CmBN)、跨阶段部分连接。(Cross-Stage-Partial-Connections, CSP)和标签平滑(Label Smoothing)等方法对网络结构和训练策略改进。这些改进方法使得YOLOv4的检测精度有了较大的提升。YOLOv4模型整体结构主要由主干(Backbone)、颈部结构(Neck)和检测头(Prediction Head)3部分组成。

YOLOv4的网络结构模型

可知,YOLOv4的主干网络为CSPDarkNet53,其中包含5个CSPX模块,每个CSPX模块中包含X个小残差单元结构。跨阶段部分连接中的小残差单元结构。

可知,CSPX将输入特征图分割成两部分,一部分经过包含X个残差单元的路径进行卷积,另一部分通过残差边与上一部分输出经过Concat结合,使特征提取网络的梯度在不同路径中传播,从而使特征提取网络的梯度组合更丰富,同时去除了重复的梯度信息,在精度损失较小的情况下,有效降低了模型计算量。同时,在CSPDarkNet53网络中引入了Mish激活函数,与Leaky ReLU激活函数相比,Mish激活函数非单调,函数曲线平滑,具有下边界,能够保留较小的负值,使特征提取网络梯度更加稳定,提高了网络的准确性和泛化能力。

颈部结构使用了空间金字塔池化结构和PANet。颈部结构将不同尺度和多层次的特征融合,提高了模型的检测精度。

SPP结构使用了4种尺度的最大池化对主干网络输出的特征进行处理,有效分离上下文特征,扩大了卷积的感受野;PANet在特征金字塔网络(Feature Pyramid Network, FPN)的基础增加了自下向上的特征融合结构,增强路径充分利用了浅层特征的位置信息,将浅层特征与深层特征融合,进一步提高网络特征提取能力。在颈部结构中,使用了较多的3×3卷积,其中CBL×3卷积块和CBL×5卷积块分布,这些标准卷积引入了较多的参数,不利于模型对损伤的检测和在移动设备上的应用。检测头用来预测目标位置、种类和置信度信息。检测头部分输出3个不同尺度的特征图,利用3×3卷积和1×1卷积分别对特征和通道进行调整。

综上可知,在训练过程中,YOLOv4检测方法使用了Mosaic数据增强、CIoU损失函数、学习率余弦退火衰减和Label Smoothing等方法优化了模型的训练过程。

结合注意力机制的轻量化YOLOv4

现有的目标检测模型通过加深网络和增加分支等方法提升检测精度,以极大的运算代价换来微小的性能提升。在实际航空发动机损伤检测场景中,模型计算量是评估模型的重要指标。减少模型参数可以提高模型的检测速度,使模型用更少的计算时间对目标进行特征提取,降低对硬件的算力要求。

航空发动机孔探检测通常在室外进行,含有大量参数的模型很难在移动端部署,不能满足实际工作需求,因此,为了满足移动设备的要求,需要对目标检测模型进行轻量化改进。

基于深度可分离卷积的Neck轻量化改进

普通卷积输出通道与所有输入通道有关,在卷积过程中会产生大量冗余参数。深度可分离卷积对特征图的每个通道设置一个卷积核,使输出通道数与输入通道数保持一致,然后使用1×1的卷积对通道数进行调整,有效减少了模型的参数量。深度可分离卷积包含逐通道卷积和逐点卷积共2个过程,普通卷积和深度可分离卷积计算过程。

可知,输入特征大小为DF×DF×M,输出特征大小为DH×DH×N,其中M为输入通道数,N为输出通道数,DF和DH均为特征映射边长,DK为卷积核边长。普通卷积计算过程所示,使用DK×DK×M大小的卷积核和相应特征图相乘,再将结果相加。在普通卷积计算过程中,乘法计算量远大于加法,因此加法的计算量忽略不计,普通卷积计算量U1为:

U1=M×DK×DK×DF×DF×N

逐通道卷积计算过程,使用DK×DK×1大小的卷积核与特征映射进行点乘求和,输出特征图为DH×DH×M,该过程计算量为DK×DK×M×DF×DF。为逐点卷积计算过程,负责对通道进行调整,使用的卷积核大小为1×1×M,该过程计算量为 DF×DF×M×N。综上所述,可知,深度可分离卷积总的计算量U2为:

U2=DK×DK×M×DF×DF+DF×DF×M×N

则深度可分离卷积和普通卷积计算量比值为:

U2U1=DK×DK×M×DF×DF+DF×DF×M×NM×DK×DK×DF×DF×N=1N+1DK2??????

U2U1=DΚ×DΚ×Μ×DF×DF+DF×DF×Μ×ΝΜ×DΚ×DΚ×DF×DF×Ν=1Ν+1DΚ2???????

YOLOv4检测算法的Neck结构使用了较多的3×3普通卷积,为降低模型参数量,本文设计了轻量化的特征融合结构,在CBL×3模块和CBL×5模块中引入了深度可分离卷积结构,将普通卷积重构为逐通道卷积和逐点卷积的形式。

改进后的卷积模块

Conv3和Conv5为轻量化改进后的卷积模块,Conv-dw为深度可分离卷积过程。CBR卷积结构是由ReLU6激活函数替换原CBL卷积结构中的LeakyReLU激活函数而来。ReLU6激活函数限制了最大输出值,使设备在低精度的情况下有很好的数值分辨率,减少精度损失。假设卷积过程采用3×3的卷积核,输出通道数为512,通过上述公式计算可得深度可分离卷积计算量约为普通卷积的1/9,因此,在Neck结构中使用深度可分离卷积重构普通卷积可有效降低模型参数量和计算量。

基于MobileNetv3的主干网络轻量化改进YOLOv4检测算法的主干网络在DarkNet53的基础上引入了跨阶段部分连接,降低了模型计算量,但CSP DarkNet53网络中包含了72个卷积层,并使用了大量3×3普通卷积,对设备的算力要求较高,损伤检测模型难以在移动端部署。为进一步降低模型计算量,对YOLOv4的主干网络进行改进。

相关推荐

当Frida来“敲”门(frida是什么)

0x1渗透测试瓶颈目前,碰到越来越多的大客户都会将核心资产业务集中在统一的APP上,或者对自己比较重要的APP,如自己的主业务,办公APP进行加壳,流量加密,投入了很多精力在移动端的防护上。而现在挖...

服务端性能测试实战3-性能测试脚本开发

前言在前面的两篇文章中,我们分别介绍了性能测试的理论知识以及性能测试计划制定,本篇文章将重点介绍性能测试脚本开发。脚本开发将分为两个阶段:阶段一:了解各个接口的入参、出参,使用Python代码模拟前端...

Springboot整合Apache Ftpserver拓展功能及业务讲解(三)

今日分享每天分享技术实战干货,技术在于积累和收藏,希望可以帮助到您,同时也希望获得您的支持和关注。架构开源地址:https://gitee.com/msxyspringboot整合Ftpserver参...

Linux和Windows下:Python Crypto模块安装方式区别

一、Linux环境下:fromCrypto.SignatureimportPKCS1_v1_5如果导包报错:ImportError:Nomodulenamed'Crypt...

Python 3 加密简介(python des加密解密)

Python3的标准库中是没多少用来解决加密的,不过却有用于处理哈希的库。在这里我们会对其进行一个简单的介绍,但重点会放在两个第三方的软件包:PyCrypto和cryptography上,我...

怎样从零开始编译一个魔兽世界开源服务端Windows

第二章:编译和安装我是艾西,上期我们讲述到编译一个魔兽世界开源服务端环境准备,那么今天跟大家聊聊怎么编译和安装我们直接进入正题(上一章没有看到的小伙伴可以点我主页查看)编译服务端:在D盘新建一个文件夹...

附1-Conda部署安装及基本使用(conda安装教程)

Windows环境安装安装介质下载下载地址:https://www.anaconda.com/products/individual安装Anaconda安装时,选择自定义安装,选择自定义安装路径:配置...

如何配置全世界最小的 MySQL 服务器

配置全世界最小的MySQL服务器——如何在一块IntelEdison为控制板上安装一个MySQL服务器。介绍在我最近的一篇博文中,物联网,消息以及MySQL,我展示了如果Partic...

如何使用Github Action来自动化编译PolarDB-PG数据库

随着PolarDB在国产数据库领域荣膺桂冠并持续获得广泛认可,越来越多的学生和技术爱好者开始关注并涉足这款由阿里巴巴集团倾力打造且性能卓越的关系型云原生数据库。有很多同学想要上手尝试,却卡在了编译数据...

面向NDK开发者的Android 7.0变更(ndk android.mk)

订阅Google官方微信公众号:谷歌开发者。与谷歌一起创造未来!受Android平台其他改进的影响,为了方便加载本机代码,AndroidM和N中的动态链接器对编写整洁且跨平台兼容的本机...

信创改造--人大金仓(Kingbase)数据库安装、备份恢复的问题纪要

问题一:在安装KingbaseES时,安装用户对于安装路径需有“读”、“写”、“执行”的权限。在Linux系统中,需要以非root用户执行安装程序,且该用户要有标准的home目录,您可...

OpenSSH 安全漏洞,修补操作一手掌握

1.漏洞概述近日,国家信息安全漏洞库(CNNVD)收到关于OpenSSH安全漏洞(CNNVD-202407-017、CVE-2024-6387)情况的报送。攻击者可以利用该漏洞在无需认证的情况下,通...

Linux:lsof命令详解(linux lsof命令详解)

介绍欢迎来到这篇博客。在这篇博客中,我们将学习Unix/Linux系统上的lsof命令行工具。命令行工具是您使用CLI(命令行界面)而不是GUI(图形用户界面)运行的程序或工具。lsoflsof代表&...

幻隐说固态第一期:固态硬盘接口类别

前排声明所有信息来源于网络收集,如有错误请评论区指出更正。废话不多说,目前固态硬盘接口按速度由慢到快分有这几类:SATA、mSATA、SATAExpress、PCI-E、m.2、u.2。下面我们来...

新品轰炸 影驰SSD多款产品登Computex

分享泡泡网SSD固态硬盘频道6月6日台北电脑展作为全球第二、亚洲最大的3C/IT产业链专业展,吸引了众多IT厂商和全球各地媒体的热烈关注,全球存储新势力—影驰,也积极参与其中,为广大玩家朋友带来了...