论文:YOLOX: Exceeding YOLO Series in 2021

作者

在这里插入图片描述

Abstract

In this report, we present some experienced improvements to YOLO series, forming a new high-performance detector— YOLOX. We switch the YOLO detector to an anchor-free manner and conduct other advanced detection techniques, i.e., a decoupled head and the leading label assignment strategy SimOTA to achieve state-of-the-art results across a large scale range of models: For YOLO-Nano with only 0.91M parameters and 1.08G FLOPs, we get 25.3% AP on COCO, surpassing NanoDet by 1.8% AP; for YOLOv3, one of the most widely used detectors in industry, we boost it to 47.3% AP on COCO, outperforming the current best practice by 3.0% AP; for YOLOX-L with roughly the same amount of parameters as YOLOv4-CSP, YOLOv5-L, we achieve 50.0% AP on COCO at a speed of 68.9 FPS on Tesla V100, exceeding YOLOv5-L by 1.8% AP. Further, we won the 1st Place on Streaming Perception Challenge (Workshop on Autonomous Driving at CVPR 2021) using a single YOLOX-L model. We hope this report can provide useful experience for developers and researchers in practical scenes, and we also provide deploy versions with ONNX, TensorRT, NCNN, and Openvino supported. Source code is at https://github.com/Megvii-BaseDetection/YOLOX.

本文介绍了YOLO系列的一些改进经验,形成了一种新型的高性能探测器——YOLOX。我们将YOLO检测器切换到无锚方式,并采用其他先进的检测技术,即解耦头和领先的标签分配策略SimOTA,在大范围的模型中实现最先进的结果:对于只有0.91M parameters和1.08G FLOPs的YOLONano,我们在COCO上获得25.3%的AP,超过NanoDet 1.8%的AP;对于工业界使用最广泛的探测器之一YOLOv3,我们将其在COCO上的AP提高到47.3%,比当前最佳实践的AP高出3.0%;为YOLOX-L大致相同数量的参数作为YOLOv4CSP, YOLOv5-L,我们在COCO达到50.0% APTesla V100 68.9帧/秒的速度,超过YOLOv5-L 1.8%。进一步,我们赢得了第一名在Streaming Perception Challenge (Workshop on Autonomous Driving at CVPR 2021)使用单一YOLOX-L模型。我们也提供了支持ONNX、TensorRT、NCNN和Openvino的部署版本。源代码在 https://github.com/Megvii-BaseDetection/YOLOX。

Introduction

随着目标检测的发展,YOLO系列[23,24,25,1,7]一直在追求实时应用的最佳速度和精度权衡。他们提取了当时可用的最先进的检测技术(例如,用于YOLOv2[24]的锚定[26],用于YOLOv3[25]的残留网络[9]),并优化了实现的最佳实践。目前,YOLOv5[7]具有最佳的平衡性能,在COCO上13.7 ms时AP为48.2%。
然而,在过去的两年中,学术界在目标检测方面的主要进展集中在无锚检测器[29,40,14]、高级标签分配策略[37,36,12,41,22,4]和端到端(无nms)检测器[2,32,39]。这些还没有被整合到YOLO家族中,YOLOv4和YOLOv5仍然是基于锚的检测器,带有手工制定的训练分配规则。

这就是我们来到这里的原因,通过经验丰富的优化,向YOLO系列提供这些最新的改进。考虑到YOLOv4和YOLOv5对于基于锚的管道可能有一点过度优化,我们选择YOLOv3[25]作为我们的起点(我们将YOLOv3- spp设置为默认的YOLOv3)。的确,YOLOv3由于计算资源有限,在各种实际应用中软件支持不足,仍然是业界使用最广泛的探测器之一。

如图1所示,通过对上述技术的经验更新,我们将YOLOv3在640 × 640分辨率的COCO上的AP提高到47.3% (YOLOv3 - darknet53),大大超过了YOLOv3目前的最佳实践(44.3% AP,超解析版本2)。此外,当切换到采用先进CSPNet[31]骨干和额外PAN[19]头的高级YOLOv5架构时,yolovl在640 × 640分辨率的COCO上实现了50.0%的AP,比对手YOLOv5- l提高了1.8%的AP。我们还在小型模型上测试了我们的设计策略。yolo - tiny和yolo - nano(仅0.93 m Parameters和1.08G FLOPs)比YOLOv4-Tiny和NanoDet3分别高出10% AP和1.8% AP。

We have released our code at https://github.com/Megvii-BaseDetection/YOLOX,支持ONNX、TensorRT、NCNN和Openvino。值得一提的是,我们使用一款YOLOX-L车型赢得了流媒体感知挑战赛(CVPR 2021年自动驾驶研讨会)的第一名

2.YOLOX

2.1 YOLOX-DarkNet53

我们选择YOLOv3[25]和Darknet53作为我们的基线。在接下来的部分中,我们将一步一步地介绍YOLOX的整个系统设计。

Implementation details
从基线到最终模型,我们的训练设置基本上是一致的。我们在COCOtrain2017[17]上用5个epoch warm-up训练模型共300个epoch。我们使用随机梯度下降法(SGD)进行训练。我们使用的学习率为 l r × B a t c h S i z e

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值