YOLOv4 PyTorch最强复现来了!

作者:Amusi
原文链接:YOLOv4
最强PyTorch复现来了!

前言

从今年4月 YOLOv4正式发布后,很多同学经常在CVer 目标检测交流群中问:
“有没有同学复现YOLOv4的, 可以交流一下么”
“现在有没有很好复现YOLOv4的开源项目,可以分享一下么?”…

YOLOv4 PyTorch最强复现来了!_第1张图片

因为原版YOLO是基于C语言所写,光凭这一点就让不少同学望而却步。于是Amusi 上个月整理了:YOLOv4最全复现代码合集(含PyTorch/TF/Keras和Caffe等)

上述整理的项目虽然更新频率较高,复现相对较全,但还没有真正能接近原版YOLOv4的性能,不少项目中只给了代码,并没有给出自己在COCO上的训练结果。

在前几天Amusi 介绍百度推出的PP-YOLO文章中,提到了在COCO上能达到48.5% mAP的YOLOv4 PyTorch版本。不少同学追问是哪个项目,那么今天Amusi 就来正式介绍一下这个优质项目。截止目前,Amusi 还没看到任何平台推荐过这个开源项目。

PyTorch_YOLOv4

https://github.com/WongKinYiu/PyTorch_YOLOv4

首先值得说的是,这个复现作者就是YOLOv4的二作:Chien-Yao Wang,他也是CSPNet的一作。再值得说的是YOLOv4 和 “YOLOv5” 都用到了CSPNet。

YOLOv4 PyTorch最强复现来了!_第2张图片
这个PyTorch版本的YOLOv4是基于 ultralytic的YOLOv3基础上实现的。再值得说的是:ultralytic 复现的YOLOv3 应该最强的YOLOv3 PyTorch复现:
https://github.com/ultralytics/yolov3

PyTorch_YOLOv4 的复现日志如下,不断接近原版YOLOv4:

2020-07-23 - support CUDA accelerated Mish activation function.
2020-07-19 - support and training tiny YOLOv4. yolov4-tiny
2020-07-15 - design and training conditional YOLOv4. yolov4-pacsp-conditional
2020-07-13 - support MixUp data augmentation.
2020-07-03 - design new stem layers.
2020-06-16 - support floating16 of GPU inference.
2020-06-14 - convert .pt to .weights for darknet fine-tuning.
2020-06-13 - update multi-scale training strategy.
2020-06-12 - design scaled YOLOv4 follow ultralytics. yolov4-pacsp-s yolov4-pacsp-m yolov4-pacsp-l yolov4-pacsp-x
2020-06-07 - design scaling methods for CSP-based models. yolov4-pacsp-25 yolov4-pacsp-75
2020-06-03 - update COCO2014 to COCO2017.
2020-05-30 - update FPN neck to CSPFPN. yolov4-yocsp yolov4-yocsp-mish
2020-05-24 - update neck of YOLOv4 to CSPPAN. yolov4-pacsp yolov4-pacsp-mish
2020-05-15 - training YOLOv4 with Mish activation function. yolov4-yospp-mish yolov4-paspp-mish
2020-05-08 - design and training YOLOv4 with FPN neck. yolov4-yospp
2020-05-01 - training YOLOv4 with Leaky activation function using PyTorch. yolov4-paspp

根据上述日志其实可知,该PyTorch版的YOLOv4实现了多个版本,比如s、m、l、x,性能依次增强,这个与"YOLOv5"的命名风格一致。而且就连前不久推出的YOLOv4-Tiny也复现出来了。

PyTorch_YOLOv4 各个model的性能如下,当test size = 736时,AP(val) 可达 48.5%

YOLOv4 PyTorch最强复现来了!_第3张图片

上述test size与YOLOv4论文中的size不同,后者test size = 608。然后PyTorch_YOLOv4 项目作者又做了实验,给出了在MSCOCO 2017 test-dev set,test size = 608 的实验结果,数据如下。可知YOLOv4 (pacsp-x-mish)版本同样可达到 48.5% mAP!

YOLOv4 PyTorch最强复现来了!_第4张图片

上述均没有给出速度性能,Amusi 觉得一定不会让你失望的(因为原项目优化的相当好了)。建议想尝试PyTorch版YOLOv4的同学,一定要试试这个项目。基于此项目进行优化,改进,没准又是一个很棒YOLO改进工作。

https://github.com/WongKinYiu/PyTorch_YOLOv4

下载

YOLOv4论文和各个版本的复现已经打包好,在CVer公众号后回复:YOLOv4,即可下载全部资料

YOLOv4 PyTorch最强复现来了!_第5张图片

你可能感兴趣的:(目标检测,计算机视觉,卷积神经网络,人工智能,机器学习,计算机视觉,深度学习,python)