YOLOv5速度比前代更快,在运行Tesla P100的YOLOv5 Colab笔记本中,每个图像的推理时间快至0.007秒,意味着每秒140帧(FPS)!
YOLOv5体积小,YOLOv5 s的权重文件为27MB。YOLOv4(Darknet架构)的权重文件为244MB。YOLOv5比YOLOv4小近90%。这意味着YOLOv5可以更轻松地部署到嵌入式设备。
此外,因为YOLOv5是在PyTorch中实现的,所以它受益于已建立的PyTorch生态系统;YOLOv5还可以轻松地编译为ONNX和CoreML,因此这也使得部署到移动设备的过程更加简单。
名称 | 发布公司 | 语言 | 框架 | 所需环境 |
---|---|---|---|---|
YOLOv5 | Ultralytics | python | pytorch | python3.7+ pytorch1.5+ |
以上数据来自——量子位:YOLOv5它来了!YOLOv4发布不到50天,它带着推理速度140帧/秒、性能提升2倍来了
Github链接:ultralytics/yolov5
这个主图有趣O(∩_∩)O
Train Custom Data
先下载项目https://github.com/ultralytics/yolov5/archive/master.zip
复制链接到迅雷下载比较快
下好了然后解压
然后到这个目录下,用控制台运行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt
,安装所需的库
但是发现卡住了,我们手动下载requirements.txt里的大文件
打开requirements.txt
复制这个链接https://github.com/cocodataset/cocoapi.git
打开
有点慢,打开后下载这个
下好后把它解压,复制到yolov5-master目录下
然后将requirements.txt里的这句注释掉(前面加#),然后保存关闭
然后重新运行
安装好了,但是报了一个错误
我们直接运行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torch==1.5
但还是报错
通过PyTorch 《动手学深度学习》学习笔记(Dive-into-DL-Pytorch)查看pytorch的安装方法
可能是我的python版本太低了
到这https://www.python.org/downloads/windows/下载python,
windows用户下这个https://www.python.org/ftp/python/3.7.0/python-3.7.0-amd64.exe
双击安装
覆盖我之前安装目录
测试一下,已经安装成功了
重新运行之前的pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt
报了一堆错误
看提示似乎要重装一下numpy
pip uninstall numpy
pip install numpy
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy
安装numpy完成
再重新运行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt
好了,但还是pytorch的问题
在这里https://pytorch.org/看pytorch对应cuda版本,我先看看我的cuda
我是9.0的
貌似我的cuda版本不支持pytorch1.5.0,重新安装一下cuda
我刚好有cuda10.1的,安装一下
半个小时安装好了,cudnn也拷贝到安装文件夹了,也没有配置系统变量、环境变量,不会装的可以看看这个Yolo-v2_ Windows平台下如何配置darknet-yolov2?(安装CUDA)
看看版本
重新运行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torch==1.5.0+cu101 torchvision==0.6.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html
好像不行,还是很慢的
可能需要下载wheel文件安装
到这里下这个https://download.pytorch.org/whl/torch_stable.html
迅雷下很快
然后安装这个wheel文件,参考:python pip如何安装wheel文件?.whl(pip install [wheel])
pip install "torch-1.5.0+cpu-cp37-cp37m-win_amd64.whl"
接下来就可以训练自己数据集了吧
这个文件是用来告诉程序你要训练的图片以及标注的路径的
它放在data文件夹下
内容格式如下,主要包含四项,训练集路径train,验证集路径val,检测类数目nc,检测类名names
像我自己因为只要检测一个类,我就像下面这样创建:创建一个记事本,填入以下内容后保存为.yaml
格式,记得重命名一下(我是跟我的数据集文件夹取同样的名字)
在yolov5或yolov5-master目录上层创建文件夹,用于下一步存放我们的图片以及标注:
作者推荐了两款创建标注的工具,Labelbox or CVAT,不过我自己用的是这款labelImg 使用教程 图像标定工具
做好标注后,将图片和标注放进我们上一步创建的文件夹中:
我这边有4000张图片和4000个已经做好的标注,直接按训练集:测试集=3:1分配到文件夹里,记得图片放图片文件夹,标注放标注文件夹
作者推荐选择的是yolov5s.yaml
,最小最快的一个
先下载预训练模型,在D:\Dontla_YOLOv5\yolov5-master\weights
路径下双击download_weights.sh
下载预训练模型
但貌似下不了不知怎么回事,一点击窗口就瞬间消失了
用记事本打开
找到这个
在这
用记事本打开,然后直接复制链接,用浏览器打开
打开后直接点击要下载的
下好了,放在这个路径下
打开train.py看看,发现里面缺少很多库,要一个一个安装,推荐使用镜像源安装:解决pip安装时速度慢的问题 镜像源(pip install -i [镜像源地址] [包名])
有时还会报其他错误,要自己动手解决
参考解决方法:由于找不到msvcp140.dll无法继续执行代码
要动我的VS2015,这手术就大了。。。
看来这个YOLO5做得还不是很完善,过段时间再试试??
python train.py --img 640 --batch 16 --epochs 5 --data ./data/my_dataset.yaml --cfg ./models/yolov5s.yaml --weights yolov5s.pt