当前位置: 首页 > news >正文

SCI论文解读复现【NO.3】MSFT-YOLO:基于变压器的改进YOLOv5钢表面缺陷检测(代码已复现)

        此前出了目标检测算法改进专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读发表高水平学术期刊中的SCI论文,并对相应的SCI期刊进行介绍,帮助大家解答疑惑,助力科研论文投稿。解读的系列文章,本人会进行创新点代码复现,有需要的朋友可关注私信我获取。

一、摘要

随着人工智能技术的发展和智能化生产项目的普及,智能检测系统逐渐成为工业领域的热门话题。作为计算机视觉领域的一个基础性问题,如何实现工业中的目标检测,同时兼顾检测的准确性和实时性,是智能检测系统发展中的一个重要挑战。钢铁表面缺陷的检测是物体检测在工业中的重要应用。正确快速地检测表面缺陷可以大大提高生产率和产品质量。为此,本文引入了MSFT-YOLO模型,该模型是在单级检测器的基础上改进的。针对图像背景干扰大、缺陷类别易混淆、缺陷尺度变化大、小缺陷检测效果差的工业场景,提出MSFT-YOLO模型。通过在主干和检测头中加入基于Transformer设计的TRANS模块,使特征与全局信息相结合。通过组合多尺度特征融合结构对不同尺度的特征进行融合,增强了检测器对不同尺度目标的动态调整。为了进一步提高MSFT-YOLO的性能,我们还引入了大量有效的策略,如数据扩充和多步训练方法。在NEU-DET数据集上的测试结果表明,MSPF-YOLO能够实现实时检测,MSFT-YOLO的平均检测准确率为75.2,较基线模型(YOLOv 5)提高约7%,较Faster R-CNN提高约18%,具有一定的优势和启发性。  

二、网络模型及核心创新点

 MSFT-YOLO的总体原理图如图所示,主要包括三个部分:骨干网部分、特征增强部分和预测部分。在第一部分主干中,我们没有使用YOLOv5原有的卷积层,而是主要使用了自主开发的TRANS结构,通过将其组装到CSPDarknet中来扩展卷积的接收域。TRANS为检测提供了具有全局信息的多层次特征,增强了MSFT-YOLO对钢铁表面背景特征的识别能力。在网络的颈部,用简单有效的BiFPN结构代替PANet对骨干网的多层次特征组合进行加权,并将TRANS模块集成到预测头中,替代原有的预测头,挖掘了YOLOv5自注意的预测潜力,能够在高密度场景中准确定位目标,并能处理目标的大尺度变化。TRANS的具体细节见第3.2节。

三、应用数据集

论文中使用的主要数据集NEU-DET是东北大学发布的表面缺陷数据库,收集了热轧带钢的六种典型表面缺陷,包括银纹、夹杂物、补丁、麻面、轧制氧化皮和划痕。该数据库包括6种不同类型的典型表面缺陷的1800幅灰度图像,每种缺陷包含300个样本。

 四、实验效果(部分展示)

消融研究的结果。从实验数据中可以观察到,通过在主干处增加TRANS模块,对两种较为明显的缺陷斑和划痕的检测有了很大的提高,而BiFPN对裂纹斑、麻面、轧入氧化皮和划痕的检测效果更大,这些缺陷斑、麻面、轧入氧化皮和划痕的bon均大于3%。通过分析检测结果,TRANS使模型能够适应更宽范围的纵横比,解决了缺陷分布不均匀的样品问题,如传感器2022、22、3467 15个中的13个表面凹陷、滚入氧化皮和划痕,所有这些都有超过3%的奖金。通过对检测结果的分析,TRANS使模型能够适应更宽的长径比范围,解决了缺陷长径比分布不均匀的样品问题。同时,由于缺陷经常以独立和不规则形状的组合出现,TRANS对严重干扰、扰动和区域移动的高鲁棒性以及整合高级视觉语义信息的能力使得能够收集与较大邻域中的缺陷特征相关的信息,MSFT-YOLO集成了TRANS模块和BiFPN模块,能够捕捉模型中不同位置的信息,这再次提高了划痕和麻点表面两个类别的检测精度。BiFPN结构使模型能够适应更大的缺陷尺寸变化,解决了缺陷尺寸分布差异大的问题。我们的方法以YOLOv 5为基线进行了改进,虽然检测速度降低了40%,但仍然具有实时检测的潜力,检测准确率从0.682提高到0.757,检测准确率有了较大的提高。通过对检测样本的分析,我们加入TRANS模块和融合BiFPN对模型精度的提高起到了积极的作用,可以看出,我们的方法结合全局特征进行多层次特征融合,对于背景复杂、目标尺度差异大的工业场景中的缺陷检测效果非常明显。

 对比实验结果。表2显示了我们在NEU-DET数据集上评价的模型结果。在工业场景中,不仅目标检测任务的准确性很重要,而且检测效率也是衡量其能否在工业场景中投入使用的因素之一。只有在保证检测结果和检测速度的前提下,才能真实的做出正确的判断,满足工业生产的使用要求。因此,在本部分的论述中,将使用平均精度(mAP)作为模型和每秒帧数(FPS)来对缺陷检测模型进行综合评价。

 五、实验结论

本文设计了一种基于YOLOv 5的钢材表面缺陷检测仪MSFT-YOLO。MSFT-YOLO结合了计算机视觉中的一些现有技术,包括Transformer编码块、多层次特征融合、数据扩展和一些训练技术。针对缺陷图像背景杂乱、缺陷类别易混淆的问题,提出在主干和检测头中增加基于Transformer的TRANS模块。针对缺陷尺度变化大、小缺陷检测效果差的问题,提出了BiFPN结构,通过融合不同尺度的特征,增强了检测器对不同尺度物体的调节能力。通过在NEU-DET数据集上的测试,MSFT-YOLO达到了0.752mAP,较基线提高了7.5%,FPS为30.6,表明该算法达到了很好的准确率,同时也具有实时检测的潜力,是一种具有实用价值的目标检测算法。在未来的研究中,将向模型中引入更丰富的数据集以增强其泛化能力,并对模型进行压缩以更好地适应工业场景下的实时监控。在实验过程中,我们在钢材表面缺陷数据处理和检测算法设计方面积累了大量经验,希望本文能对更多钢材表面缺陷的开发人员和研究人员有所帮助。

六、投稿期刊介绍

注:论文原文出自MSFT-YOLO: Improved YOLOv5 Based on Transformer for
Detecting Defects of Steel Surface. 本文仅用于学术分享,如有侵权,请联系后台作删文处理。

解读的系列文章,本人已进行创新点代码复现,有需要的朋友欢迎关注私信我获取

相关文章:

  • 2022年度总结|我的CSDN成长历程
  • CSS基础总结(五)定位
  • 一文学会基础的TypeScript
  • js函数之call和apply
  • stm32平衡小车(1)---蓝牙模块及其bug处理
  • [JavaEE]线程的状态与安全
  • 【Qt】事件处理——按键事件处理
  • opencv-python常用函数解析及参数介绍(八)——轮廓与轮廓特征
  • flutter项目编译问题汇总
  • C++关联容器(复习题篇)
  • 02SpringCloudAlibaba服务注册中心—Eureka
  • opencv-python常用函数解析及参数介绍(七)——边缘检测
  • 14---实现文件上传和下载(头像上传功能)
  • Vue2学习笔记(四):计算属性(computed)和监事属性(watch)
  • 《信号与系统实验》实验 4:连续离散时间信号与系统的复频域分析实验
  • SegmentFault for Android 3.0 发布
  • Angular2开发踩坑系列-生产环境编译
  • C# 免费离线人脸识别 2.0 Demo
  • CAP理论的例子讲解
  • express如何解决request entity too large问题
  • JAVA之继承和多态
  • Redis提升并发能力 | 从0开始构建SpringCloud微服务(2)
  • Spring Boot MyBatis配置多种数据库
  • vagrant 添加本地 box 安装 laravel homestead
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 从0搭建SpringBoot的HelloWorld -- Java版本
  • 聊聊redis的数据结构的应用
  • 前言-如何学习区块链
  • 实习面试笔记
  • 使用SAX解析XML
  • 一些css基础学习笔记
  • 转载:[译] 内容加速黑科技趣谈
  • 2017年360最后一道编程题
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • $.type 怎么精确判断对象类型的 --(源码学习2)
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (C)一些题4
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第2节(共同的基类)
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (二)windows配置JDK环境
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (转)PlayerPrefs在Windows下存到哪里去了?
  • (转)负载均衡,回话保持,cookie
  • (转)原始图像数据和PDF中的图像数据
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • .NET Core跨平台微服务学习资源
  • .Net6支持的操作系统版本(.net8已来,你还在用.netframework4.5吗)
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • ??在JSP中,java和JavaScript如何交互?
  • ?php echo $logosrc[0];?,如何在一行中显示logo和标题?
  • @GetMapping和@RequestMapping的区别