YOLOv4没交棒,但YOLOv5来了!

2022-10-19,,

YOLOv4没交棒,但YOLOv5来了

前言

4月24日,YOLOv4来了!

5月30日,"YOLOv5"来了!

这里的 "YOLOv5" 是带有引号的,因为 Amusi 认为网上刚出来的这个版本并称不上YOLOv5。这也是为什么标题为:大神没交棒,但YOLOv5来了!

YOLO原项目darknet(官方)截止2020年5月31日,并没有更新添加这个"YOLOv5"的链接。最新的一次update还是上个月YOLOv4重磅出炉的那次,官方正式添加了YOLOv4项目链接。

关于YOLOv4,Amusi 认为那是真正的YOLOv4,也是YOLO系列的真正接班人。关于YOLOv4详细内容,可见:大神接棒,YOLOv4来了!

大神没交棒,YOLOv5来了!

先申明,Amusi 没有刻意针对"YOLOv5"这个项目团队,也没有否认该项目的意义和贡献。而是针对YOLOv5这个名字,个人觉得很不ok,很不ok。

项目链接:https://github.com/ultralytics/yolov5

先简单介绍一下"YOLOv5"的来历。

"YOLOv5"的项目团队是Ultralytics LLC 公司,很多人应该没有听过这家公司。但提到他们公司的一个项目,很多人应该就知道了,因为不少同学用过。那就是基于PyTorch复现的YOLOv3,按目前github上star数来看,应该是基于PyTorch复现YOLOv3中的排名第一。Amusi 之前还分享过此项目,详见:YOLOv3最全复现代码合集(含PyTorch/TensorFlow和Keras等)

https://github.com/ultralytics/yolov3

他们复现的YOLOv3版而且还有APP版本

YOLOv3 in PyTorch > ONNX > CoreML > iOS

其实这个公司团队在YOLOv3上花的功夫蛮多的,不仅有APP版,还对YOLOv3进行了改进,官方介绍的性能效果可以说相当炸裂!另外项目维护的也很牛逼,star数已达4.7 k,commits 都快逼近2500次!

Ultralytics
Professional Support

Ultralytics is a U.S.-based particle physics and AI
startup with over 6 years of expertise supporting government, academic and
business clients. We offer a wide range of vision AI services, spanning from
simple expert advice up to delivery of fully customized, end-to-end production
solutions, including:

Cloud-based AI surveillance systems operating on hundreds
of HD video streams in realtime.

Edge AI integrated into custom iOS and Android apps for
realtime 30 FPS video inference.
Custom data training, hyperparameter evolution, and model exportation
to any destination.

For business inquiries and professional support requests
please visit us at https://www.ultralytics.com.

可见Ultralytics LLC 公司在YOLO社区上的贡献还是有一定影响力的,这也是为什么他们刚推出"YOLOv5",就得到不少人的关注。

据官方称:"YOLOv5" 实际上还处于开发的阶段,预计2020年第2季度/第3季度将全部开发完成。目前放出来的版本,是集成了YOLOv3-SPP和YOLOv4部分特性。

关于项目的更新说明,详见此图

那么"YOLOv5"的性能有多强呢,Ultralytics
LLC给出的数据如下:

这里说一下,YOLOv5-x的性能已经达到:47.2 AP / 63 FPS,但项目说是在 image size = 736的情况下测得,所以从目前数据,是无法判断"YOLOv5"和 YOLOv4的性能究竟哪个更好(有意思的是,官方也没有给出)。下次Amusi 会实测一下这个版本的"YOLOv5" 和 YOLOv4性能,做一个比较。

Inference

 

Inference
can be run on most common media formats. Model checkpoints
are downloaded automatically if available. Results are saved to ./inference/output.

$ python detect.py --source file.jpg  # image 
                            file.mp4  # video
                            ./dir  # directory
                            0  # webcam
                            rtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa  # rtsp stream
                            http://112.50.243.8/PLTV/88888888/224/3221225900/1.m3u8  # http stream

To run inference on examples in the ./inference/images folder:

$ python detect.py --source ./inference/images/ --weights yolov5s.pt --conf 0.4
Namespace(agnostic_nms=False, augment=False, classes=None, conf_thres=0.4, device='', fourcc='mp4v', half=False, img_size=640, iou_thres=0.5, output='inference/output', save_txt=False, source='./inference/images/', view_img=False, weights='yolov5s.pt')
Using CUDA device0 _CudaDeviceProperties(name='Tesla P100-PCIE-16GB', total_memory=16280MB)
Downloading https://drive.google.com/uc?export=download&id=1R5T6rIyy3lLwgFXNms8whc-387H0tMQO as yolov5s.pt... Done (2.6s)
image 1/2 inference/images/bus.jpg: 640x512 3 persons, 1 buss, Done. (0.009s)
image 2/2 inference/images/zidane.jpg: 384x640 2 persons, 2 ties, Done. (0.009s)
Results saved to /content/yolov5/inference/output

Ultralytics LLC目前已经给出"YOLOv5"的代码、模型、训练/测试脚本

python train.py --data coco.yaml --cfg yolov5s.yaml --weights '' --batch-size 16

但Ultralytics LLC并没有给出"YOLOv5"的算法介绍(论文、博客其实都没有看到),感兴趣的同学只能通过代码查看"YOLOv5"的特性。只能说现在版本的"YOLOv5"集成了YOLOv3-SPP和YOLOv4的部分特性等。

侃侃

虽然现在没有给出算法介绍,但仅从给出的性能数据看起来"YOLOv5"还是不错的。不过 Amusi 认为起名"YOLOv5"实属不应该。

1. 起码要和YOLO之父Joe Redmon通知一声,经过他同意(官方项目没有更新,Amusi猜测起码没有得到认可)

2. 任何人都有起名的权利,但YOLO系列太知名了,Ultralytics LLC本身也作为YOLO社区的贡献者,应该很清楚这一点。项目很强,但YOLOv5

Amusi 不认可该项目命名为"YOLOv5"这个名字,但对开源的精神点赞,希望项目继续更新,造福更多的YOLO玩家。

YOLOv4没交棒,但YOLOv5来了!的相关教程结束。

《YOLOv4没交棒,但YOLOv5来了!.doc》

下载本文的Word格式文档,以方便收藏与打印。