搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
我家自动化
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
服务级别协议 (SLA)管理_sla管理
2
MySQL5.7升级到MySQL8.0的最佳实践分享_数据库5.7升级到8.0
3
AI一键去衣技术:窥见深度学习在图像处理领域的革命(最后有彩蛋)_ai去衣
4
1064 -you have an error in your SQL syntax_在linux中运行select id from 'book' limit 100报1064 - yo
5
【SQL语法】MySql、Oracle、SqlServer实现批量插入insert_sqlserver insert
6
NLP(二)词袋模型及余弦相似度、编辑距离相似度_用开源embedding模型测试句子余弦距离
7
客达天下项目案例
8
【刷题记录15】Java工程师丨腾讯面试真题(3)
9
uniapp中加载Echarts图表H5可以显示正常图表, 打包app图表不显示的问题_uniapp打包发布至app端 echarts图表不显示问题
10
整数对最小和【华为OD机试JAVA题解】
当前位置:
article
> 正文
YOLOv10:实时端到端目标检测(论文学习和代码运行)_yolov10论文
作者:我家自动化 | 2024-06-09 05:05:10
赞
踩
yolov10论文
论文地址:
2405.14458 (arxiv.org)
概述:
主要针对NMS和YOLOs中存在的计算冗余进行改进,首先提出了一种一致的双任务方法,用于无nms训练的YOLOs,它同时带来了具有竞争力的性能和较低的推理延迟。此外,还介绍了整体效率-精度驱动的模型设计策略。从效率和精度两个角度对YOLOs的各个组成部分进行了全面优化,大大降低了计算开销,增强了性能。
模型训练速度是真的快,在我的数据集(2200张图片)跑了一下yolov10n,训练速度比v8要快近5倍
训练:500 epochs completed in 1.112 hours.
Speed: 1.3ms preprocess, 1.3ms inference, 0.0ms loss, 0.0ms postprocess per image
但精度比yolov8n低一点:mAP50:0.949 mAP50-95) 0.73
对比yolov8,
训练:350 epochs completed in 3.534 hours,
Speed: 0.5ms preprocess, 1.7ms inference, 0.0ms loss, 0.8ms postprocess per image
但精度比yolov8n低一点:mAP50:0.957 mAP50-95) 0.728
1 Introduction
作者指出实时目标检测是计算机视觉领域的一个关键研究方向,具有广泛的实际应用价值。尽管YOLO系列算法已经在实时目标检测中取得了显著的进展,但仍存在依赖NMS导致的端到端部署难题和推理延迟问题,以及模型设计中缺乏全面优化导致的计算冗余。因此,本研究的目标是通过提出新的后处理策略和全面优化模型架构,进一步提升YOLO算法在效率和准确性之间的平衡,推动其实时目标检测的性能边界。
2 Related Work
实时目标探测器。
实时目标检测的目的是在低延迟的情况下对目标进行分类和定位,这对现实世界的应用至关重要。在过去的几年里,大量的努力已经指向开发高效的探测器[18,51,43,32,72,69,30,29,39]。其中,YOLO系列最为主流。YOLOv1、YOLOv2和YOLOv3识别了典型的检测架构,由脊柱、颈部和头部三部分组成。YOLOv4和YOLOv5]引入了CSPNet设计来取代DarkNet,并结合了数据增强策略、增强的PAN和更多样化的模型尺度等。YOLOv6分别为颈部和脊柱提供了BiC和SimCSPSPPF,并采用锚定辅助训练和自蒸馏策略。YOLOv7引入了E-ELAN的富梯度流路径,并探索了几种可训练的免费袋方法。YOLOv8提出了C2f构建块,用于有效的特征提取和融合。Gold-YOLO提供了先进的GD机制来增强多尺度特征融合能力。YOLOv9提出了GELAN来改进体系结构和PGI来增强训练过程
端到端对象检测器。
端到端目标检测已经成为传统管道的范式转变,提供了简化的架构。DETR引入transformer架构,采用匈牙利损耗实现一对一匹配预测,从而消除了手工制作元器件和后处理。此后,人们提出了各种各样的DETR变体来提高其性能和效率。deformable - detr利用多尺度可变形注意力模块加快收敛速度。DINO将对比去噪、混合查询选择和前向两次方案集成到der中。
RT-DETR进一步设计了高效的混合编码器,并提出了最小不确定性查询选择,以提高准确性和延迟。另一条实现端到端目标检测的线路是基于CNN检测器。可学习NMS和关系网络提供了另一种网络来消除检测器的重复预测。OneNet和DeFCN提出了一对一匹配策略,以实现完全卷积网络的端到端目标检测。
3 Methodology
3.1 一致的双重赋值用于无需NMS的训练
提出了一种具有双标签分配和一致匹配度量的无nms的yolo训练策略,实现了高效率和竞争性的性能。
双重标签赋值。与一对多赋值不同,一对一匹配仅为每个真实标注分配一个预测,避免了NMS后处理。然而,这导致监督信号变弱,引起次优的准确性和收敛速度[75]。幸运的是,这种缺陷可以通过一对多赋值[5]得到补偿。为了实现这一点,我们为YOLOs引入了双重标签赋值,以结合两种策略的优势。具体来说,如图2.(a)所示,我们为YOLOs增加了另一个一对一的头部。它保持与原始一对多分支相同的结构,并采用相同的优化目标,但利用一对一匹配获得标签赋值。在训练期间,两个头部与模型一起进行联合优化,允许主干网络和连接部分享受由一对多赋值提供的丰富监督。
在推理期间,我们丢弃一对多头部,并使用一对一头部进行预测。
这使得YOLOs能够实现无需任何额外推理成本的端到端部署。此外,在一对一匹配中,我们采用顶部选择,这在训练时间上少于匈牙利匹配[4],但实现了相同的性能。
一对多赋值(One-to-Many Assignment)
:
一个真实物体可以与多个预定义框匹配,需要使用NMS来处理得到最佳的框。
一对一匹配(One-to-One Matching)
:
每个真实存在的物体(ground-truth object)在模型训练过程中只对应一个正样本(positive sample)。
YOLOv10提出的一致的双重赋值策略,实际上是结合了一对一和一对多匹配的优点。它在训练时使用一对多赋值来提供丰富的监督信号,
两个头部与模型一起进行联合优化,
而在推理时切换到一对一匹配,以实现无需NMS的高效率检测。这种方法旨在提高模型的性能,同时保持推理过程的高效性。
匹配度量的组成
:
m(α, β)
:这是匹配度量的标准函数,用于评估预测(ˆb)与实例(b)之间的一致性。
s
:空间先验,表示预测的锚点是否在实例内。
p
:分类得分,表示预测框属于某个类别的概率。
IoU(ˆb, b)
:预测框(ˆb)和真实框(b)之间的交并比,衡量预测框的准确性。
α 和 β
:超参数,用于平衡分类得分和IoU对匹配度量的影响。
图2有点难理解,感觉讲得不清楚,我理解论文的意思不知道对不对,
比如在inconsistent,不一致,
αo2o=0.5; βo2o =2.时,
One-to-One和
One-to-Many计算得到的m不一致,这个时候
One-to-One预测结果
在
One-to-Many得到的预测框中
Top-1/5/10中的频率。
但问了kimi,它解释是:
"YOLOv8-S的一对多结果的Top-1/5/10中一对一分配的频率" 这句话是说,在YOLOv8-S模型使用一对多赋值策略得到的预测结果排序中,我们考察排名最高的1个、5个和10个预测框里,有多少是通过一对一赋值策略得到的,以此来评估两种赋值策略的效果和一致性。
3.2
整体效率-精度驱动的模型设计
普通人——yolo模型的魔改,这里——
整体效率-精度驱动的模型设计听着就高端大气上档次了。
针对模型体系结构表现出不可忽略的计算冗余和约束能力问题,
从效率和准确性的角度全面进行YOLOs的模型设计。
1. 效率驱动的模型设计(Efficiency Driven Model Design):
* 轻量级分类头(Lightweight Classification Head):简化分类头的架构,以减少计算量和参数数量,同时保持性能。
* 空间-通道解耦下采样(Spatial-Channel Decoupled Downsampling):将空间下采样和通道扩展的操作解耦,以更高效的方式进行下采样,减少计算成本。
* 基于秩引导的块设计(Rank-Guided Block Design):利用内在秩(intrinsic rank)分析不同阶段的冗余度,采用紧凑的架构设计减少计算复杂性,并通过秩引导的块分配策略,在保持性能的同时实现更高的效率。
2. 准确性驱动的模型设计(Accuracy Driven Model Design):
* 大核心卷积(Large-Kernel Convolution):在深层阶段使用大核心深度卷积来扩大感受野,增强模型的表示能力,特别是在小模型尺度上。
* 部分自注意力模块(Partial Self-Attention, PSA):引入部分自注意力机制来增强模型的全局建模能力,同时通过设计减少计算复杂性和内存占用。
4 Experiments
性能提升
:YOLOv10在不同模型尺寸上与其他YOLO系列模型以及一些其他先进的目标检测模型相比,显示出了在准确性(AP)、参数数量、计算量(FLOPs)和推理延迟方面的显著提升。
延迟-准确性权衡
:YOLOv10在保持较低延迟的同时实现了更高的准确性。例如,YOLOv10-S在与RT-DETR-R18相似的平均精度(AP)下,推理速度提升了1.8倍。
参数和计算效率
:YOLOv10模型在参数数量和计算量上都有显著减少。与YOLOv9-C相比,YOLOv10-B在保持相同性能的同时,延迟减少了46%,参数数量减少了25%。
不同模型尺寸的比较
:YOLOv10提供了不同尺寸的模型变体(如N/S/M/B/L/X),以适应不同的计算能力和实时性要求。这些变体在各自的尺寸类别中均展示了优异的性能。
端到端检测
:YOLOv10作为一个端到端的检测器,无需额外的后处理步骤如NMS,进一步提高了推理速度。
COCO数据集上的表现
:在标准的COCO目标检测数据集上,YOLOv10在各种模型尺寸上均实现了比以前的模型更高的平均精度(AP)。
代码开源
:作者提供了YOLOv10的代码,使得研究者和开发者可以访问、使用和进一步研究这一模型。
5.代码运行
yolov10的代码是在v8基础上改的,代码结构也几乎一样,比较简单
如果报错
KeyError: 'SCDovn'
报错原因:'SCDovn'没有编译到环境里面,
解决办法:在代码路径下运行
pip install -e .
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/我家自动化/article/detail/692713
推荐阅读
article
YOLOv
1
0
(
1
):初探
,
训练
自己的
数据
_
yolov
1
0
训练
...
很多人YOLOv9还没有完全研究透
,
YOLOv
1
0
出来了。 惊不惊喜
,
意不意外! 据论文里提到
,
YOLOv
1
0
就是为...
赞
踩
article
【
yolov10
】
使用
自己
的
数据
集
训练
目标检测模型_
yolov10
训练
...
官方给出
的
环境配置
使用
的
torch版本是2.0.1,我电脑最高也就支持到1.11.0,所以就没法用gpu来
训练
了,当然也...
赞
踩
article
YOLOv10
:
实时
端到端
目标
检测
的新突破...
清华接手,
YOLOv10
问世
:
性能大幅提升,登上GitHub热榜!
YOLOv10
:
实时
端到端
目标
检测
的新突破 ...
赞
踩
article
Yolov10
:
详解
、
部署
、
应用一站式齐全!...
。点击蓝字关注我们关注并星标从此不迷路计算机视觉研究院公众号ID|计算机视觉研究院学习群|扫码在主页获取加入方式标题
:
Y...
赞
踩
article
YOLOv10
惊天问世
!
目标
检测
最新
SOTA
!
清华重磅开源
!
...
点击下方卡片,关注“CVer”公众号AI/CV重磅干货,第一时间送达点击进入—>【
目标
检测
和Mamba】交流群添加微信:...
赞
踩
article
人工智能
-
YOLOv10
-行人
和
车辆
检测
-
yolo
改进
测距
测速代码
和
原理...
人工智能
-
YOLOv10
-行人
和
车辆
检测
-
yolo
改进
测距
测速代码
和
原理_
yolo
v10
yolo
v10 ...
赞
踩
article
【论文阅读】
YOLOv10
: Real-Time End-
to
-End Object Detect...
在过去几年中,YOLOs 因其在计算成本和检测性能之间的有效平衡而成为实时物体检测领域的主流模式。研究人员对 YOLOs...
赞
踩
article
深度学习论文:
YOLOv10
:
Real
-
Time
End
-to-
End
Object
Detec...
YOLO在实时物体检测领域因计算成本与检测性能的平衡而领先。尽管研究人员在架构、优化目标和数据增强方面取得显著进展,但Y...
赞
踩
article
YOLOv10
/
YOLOv9
/
YOLOv8
/
YOLOv7
/
YOLOv5
系列
改进
| 目录一览表_yol...
YOLOv8
/
YOLOv7
/
YOLOv5
系列
改进
方法包括注意力机制添加、网络轻量化、优化损失函数、非极大值抑制等。此外还...
赞
踩
article
YOLOv10
:毫秒级实时
端到
端
目标
检测
开源
模型
_
yolov10
什么时候出来的...
在本文中,针对YOLO整个
检测
流程中的后处理和
模型
架构。对于后处理,提出一致的双重分配进行 NMS-free 训练,实现...
赞
踩
article
【轻量化】
YOLOv10
: Re
al
-Time
End
-to-
End
Object D
et
ectio...
在这项工作中,作者旨在从**后处理和模型架构**两方面进一步推进YOLOs的性能-效率边界。为此,首先提出了**NMS-...
赞
踩
article
推荐文章:
YOLOv10
——
实时
端
到
端
目标
检测
的
新纪元
...
推荐文章:
YOLOv10
——
实时
端
到
端
目标
检测
的
新纪元
项目地址:https://gitcode.com/THU-MI...
赞
踩
article
YOLOv10
:
Real
-
Time
End-
to
-End Object Detection...
在过去的几年里,由于在计算成本和检测性能之间取得了有效的平衡,YOLO系列算法已经成为实时目标检测领域的主导范式。研究人...
赞
踩
相关标签
YOLOv10
计算机视觉
YOLO
目标检测
人工智能
目标跟踪
机器学习
yolov10
改进目标检测
测距测速
GUI
深度学习