前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于YOLOv9的NEU-DET缺陷检测算法,具有切片操作的SimAM注意力,魔改SimAM

基于YOLOv9的NEU-DET缺陷检测算法,具有切片操作的SimAM注意力,魔改SimAM

原创
作者头像
AI小怪兽
发布2024-09-24 10:19:42
1280
发布2024-09-24 10:19:42
举报
文章被收录于专栏:YOLO大作战

💡💡💡本文内容:针对基基于YOLOv9的NEU-DET缺陷检测算法进行性能提升,加入各个创新点做验证性试验。

💡💡💡 具有切片操作的SimAM注意力,魔改SimAM

💡💡💡 原始mAP50为 0.733提升至0.745

1.YOLOv9原理介绍

论文: 2402.13616.pdf (arxiv.org)

代码:GitHub - WongKinYiu/yolov9: Implementation of paper - YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information摘要: 如今的深度学习方法重点关注如何设计最合适的目标函数,从而使得模型的预测结果能够最接近真实情况。同时,必须设计一个适当的架构,可以帮助获取足够的信息进行预测。然而,现有方法忽略了一个事实,即当输入数据经过逐层特征提取和空间变换时,大量信息将会丢失。因此,YOLOv9 深入研究了数据通过深度网络传输时数据丢失的重要问题,即信息瓶颈和可逆函数。作者提出了可编程梯度信息(programmable gradient information,PGI)的概念,来应对深度网络实现多个目标所需要的各种变化。PGI 可以为目标任务计算目标函数提供完整的输入信息,从而获得可靠的梯度信息来更新网络权值。此外,研究者基于梯度路径规划设计了一种新的轻量级网络架构,即通用高效层聚合网络(Generalized Efficient Layer Aggregation Network,GELAN)。该架构证实了 PGI 可以在轻量级模型上取得优异的结果。研究者在基于 MS COCO 数据集的目标检测任务上验证所提出的 GELAN 和 PGI。结果表明,与其他 SOTA 方法相比,GELAN 仅使用传统卷积算子即可实现更好的参数利用率。对于 PGI 而言,它的适用性很强,可用于从轻型到大型的各种模型。我们可以用它来获取完整的信息,从而使从头开始训练的模型能够比使用大型数据集预训练的 SOTA 模型获得更好的结果。对比结果如图1所示。

YOLOv9框架图

2.NEU-DET数据集介绍

NEU-DET钢材表面缺陷共有六大类,一共1800张,

类别分别为:'crazing','inclusion','patches','pitted_surface','rolled-in_scale','scratches'

数据集如何划分详见另一篇博客:

YOLOv9如何训练自己的数据集(NEU-DET为案列)_yolov9训练自己的数据集-CSDN博客

3.YOLOv9可视化分析

3.1原始yolov9-t结果

代码语言:javascript
复制
yolov9-t summary: 658 layers, 2618900 parameters, 0 gradients, 10.7 GFLOPs
                 Class     Images  Instances          P          R      mAP50   mAP50-95: 100%|██████████| 8/8 00:14
                   all        486       1069       0.67      0.679      0.733      0.418
               crazing        486        149      0.517      0.221       0.37      0.134
             inclusion        486        222      0.739       0.73      0.778      0.433
               patches        486        243      0.782      0.897      0.935      0.605
        pitted_surface        486        130      0.762      0.769      0.822      0.533
       rolled-in_scale        486        171      0.598      0.579      0.624      0.296
             scratches        486        154      0.621      0.877       0.87      0.509

F1_curve.png:F1分数与置信度(x轴)之间的关系。F1分数是分类的一个衡量标准,是精确率和召回率的调和平均函数,介于0,1之间。越大越好。

TP:真实为真,预测为真;

FN:真实为真,预测为假;

FP:真实为假,预测为真;

TN:真实为假,预测为假;

精确率(precision)=TP/(TP+FP)

召回率(Recall)=TP/(TP+FN)

F1=2*(精确率*召回率)/(精确率+召回率)

PR_curve.png :PR曲线中的P代表的是precision(精准率)R代表的是recall(召回率),其代表的是精准率与召回率的关系。

预测结果:

3.2 具有切片操作的SimAM注意力,魔改SimAM

原文链接:

https://blog.csdn.net/m0_63774211/category_12603790.html?spm=1001.2014.3001.5482

💡💡💡本文创新:魔改SimAM注意力,引入切片操作,增强小目标特征提取能力

💡💡💡问题点:SimAM计算整张特征图的像素差平均值时加权可能会忽略小目标的重要性,同时与整体平均值相比可能和背景信息相似,导致加权增强较弱,进而使得SimAM对小目标的增强能力较差。

💡💡💡本文解决对策:引入了切片操作,当特征图被切成不同的块后,大目标由于其纹理特征明显会影响所在块的平均值,导致其获得的额外加权减少,而合并特征图后,大目标依然可以保持高可识别度甚至获得进一步增强;而小目标的特征与局部平均值差距更大,从而获得更多加权,小目标特征得到增强,即sws模块保证了大、小目标都获得了公正的关注和增强。

💡💡💡如何创新到YOLOv9

1)高效和卷积结合,代替原始网络的卷积操作;

改进结果如下:

原始mAP50为 0.733提升至0.745

代码语言:javascript
复制
yolov9-t-Conv_SWS summary: 666 layers, 2618948 parameters, 0 gradients, 10.7 GFLOPs
                 Class     Images  Instances          P          R      mAP50   mAP50-95: 100%|██████████| 8/8 00:15
                   all        486       1069      0.669      0.689      0.745      0.433
               crazing        486        149      0.495      0.237      0.369      0.143
             inclusion        486        222      0.742      0.703      0.807      0.465
               patches        486        243      0.786      0.914      0.932      0.617
        pitted_surface        486        130      0.784      0.808      0.854      0.542
       rolled-in_scale        486        171      0.592      0.579      0.645      0.323
             scratches        486        154      0.616      0.896      0.863      0.506

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.YOLOv9原理介绍
  • 2.NEU-DET数据集介绍
  • 3.YOLOv9可视化分析
    • 3.1原始yolov9-t结果
      • 3.2 具有切片操作的SimAM注意力,魔改SimAM
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档