环境
ubuntu 18.04 64bit
GTX 1070Ti
anaconda with python 3.8
pytorch 1.8
cuda 10.1
前言
本文来的有点迟! yolov5
官方在4月12日,发布了正式版5.0,这次的发布主要实现了YOLOv5-P6
模型以及重新训练了YOLOv5-P5
模型。相较于YOLOv5-P5
的3个output layer
即P3
、P4
、P5
,YOLOv5-P6
模型的输出层多了一个P6
,主要是为了检测高分辨率下的大目标,因此,模型训练时img
参数也由--img 640
更改为--img 1280
。
具体来讲,5.0版本有如下的更新
整合
youtube
,也就是可以直接测试youtube
的在线视频整合亚马逊的
AWS
,也就是在AWS
平台上方便的使用YOLOv5
,可以参考 https://github.com/ultralytics/yolov5/wiki/AWS-Quickstart整合
supervise.ly
,supervise.ly
是一个可以帮助你解决cv
任务的web
平台,需要docker
支持和本地gpu
,建议在linux
上操作优化了
W&B
,可以参考前文 https://xugaoxiang.com/2021/01/27/yolov5-wandb/
总的来说,5.0的更新并不大
本地图片检测
同样的,跑一个测试代码。创建个独立的虚拟环境,python
版本3.8
conda create -n yolov5v5.0 python=3.8
conda activate yolov5v5.0
# 要求pytorch>1.7
pip install torch==1.7.1+cu101 torchvision==0.8.2+cu101 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html
接下来编辑下requirements.txt
,将其中的torch
和torchvision
这两项注释掉,也就是在行前加个#
符号
然后执行下面命令,安装其它的依赖包
pip install -r requirements.txt
环境安装好后,直接开始检测吧
(yolov5v5.0) xugaoxiang@1070Ti:~/workshop/yolov5-5.0$ python detect.py
Namespace(agnostic_nms=False, augment=False, classes=None, conf_thres=0.25, device='', exist_ok=False, img_size=640, iou_thres=0.45, name='exp', nosave=False, project='runs/detect', save_conf=False, save_txt=False, source='data/images', update=False, view_img=False, weights='yolov5s.pt')
YOLOv5 ???? 2021-4-12 torch 1.7.1+cu101 CUDA:0 (GeForce GTX 1070 Ti, 8116.4375MB)
Downloading https://github.com/ultralytics/yolov5/releases/download/v5.0/yolov5s.pt to yolov5s.pt...
100%|██████████████████████████████████████████████████████████████████████████████████████████████| 14.1M/14.1M [02:36<00:00, 94.3kB/s]
Fusing layers...
Model Summary: 224 layers, 7266973 parameters, 0 gradients, 17.0 GFLOPS
image 1/2 /home/xugaoxiang/workshop/yolov5-5.0/data/images/bus.jpg: 640x480 4 persons, 1 bus, 1 fire hydrant, Done. (0.013s)
image 2/2 /home/xugaoxiang/workshop/yolov5-5.0/data/images/zidane.jpg: 384x640 2 persons, 2 ties, Done. (0.011s)
Results saved to runs/detect/exp2
Done. (0.099s)
(yolov5v5.0) xugaoxiang@1070Ti:~/workshop/yolov5-5.0$
检测过程中,代码会帮我们去下载yolov5s.pt
模型文件,放在代码的根目录下
youtube视频检测
找一个youtube
视频链接,使用参数--source 视频链接
可以看到,代码会帮我们去下载依赖的库pafy
,它是负责去解析视频地址的,另外还有个视频下载的工具youtube-dl
,这个工具前面我们已经介绍过,请移步 https://xugaoxiang.com/2021/06/07/youtube-dl/
训练
数据集的准备和训练过程,跟之前的没有差异,可以参考前面的文章 yolov5模型训练
参考资料
ubuntu安装cuda
windows 10安装cuda和cudnn
yolov5模型训练
https://github.com/ultralytics/yolov5/issues/2518
YOLOv4
YOLOv3
Gaussian_YOLOv3