点击上方“CVer”,选择加"星标"置顶
重磅干货,第一时间送达
前言
从今年4月 YOLOv4正式发布后,很多同学经常在CVer 目标检测交流群中问:
"有没有同学复现YOLOv4的, 可以交流一下么"
"现在有没有很好复现YOLOv4的开源项目,可以分享一下么?"...
因为原版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。
这个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%。
上述test size与YOLOv4论文中的size不同,后者test size = 608。然后PyTorch_YOLOv4 项目作者又做了实验,给出了在MSCOCO 2017 test-dev set,test size = 608 的实验结果,数据如下。可知YOLOv4 (pacsp-x-mish)版本同样可达到 48.5% mAP!
上述均没有给出速度性能,Amusi 觉得一定不会让你失望的(因为原项目优化的相当好了)。建议想尝试PyTorch版YOLOv4的同学,一定要试试这个项目。基于此项目进行优化,改进,没准又是一个很棒YOLO改进工作。
https://github.com/WongKinYiu/PyTorch_YOLOv4
下载1
YOLOv4论文和各个版本的复现已经打包好,在CVer公众号后回复:YOLOv4,即可下载全部资料
下载2
在CVer公众号后台回复:OpenCV书籍,即可下载《Learning OpenCV 3》书籍和源代码。注:这本书是由OpenCV发起者所写,是官方认可的书籍。其中涵盖大量图像处理的基础知识介绍,虽然API还是基于OpenCV 3.x,但结合此书和最新API,可以很好的学习OpenCV。
下载3
在CVer公众号后台回复:CVPR2020,即可下载CVPR2020 2020代码开源的论文合集
在CVer公众号后台回复:ECCV2020,即可下载ECCV 2020代码开源的论文合集
重磅!CVer-目标检测 微信交流群已成立
扫码添加CVer助手,可申请加入CVer-目标检测 微信交流群,目前已汇集4100人!涵盖2D/3D目标检测、小目标检测、遥感目标检测等。互相交流,一起进步!
同时也可申请加入CVer大群和细分方向技术群,细分方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch和TensorFlow等群。
一定要备注:研究方向+地点+学校/公司+昵称(如目标检测+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群
▲长按加群
▲长按关注我们
整理不易,请给CVer点赞和在看!