在Colab下快速训练yolov5
1.学习链接
油管:YOLOv5 training with custom data
百度云:YOLOv5 training with custom data(密码:5680)
提示:视频中做的是yolov5_5.0版本,当前已经到了yolov5_6.0,存在一些差异。
本套流程的优势:熟练后,可以在两个小时内从数据收集,数据标注,到训练结果出来。
2.数据准备
推荐准备100张图片
2.1图片标注方法
1:labelImg(传统标注方法)
2:Make Sense(小数据集推荐)
准备的数据的结构目录:
比如有100张图片,可以将66张图片放在train中,34张图片放在val中。
train:val=3:1
文件压缩成zip格式,方便上传到Colab平台
3.项目迁移到Colab平台
打开github上yolov5项目
可以看到,当前已经发布了yolov5的v6.0版本
找到下面的Open in Colab按钮,点击
注意:使用Colab平台需要有谷歌账号
4.开始训练
4.1.选择GPU
4.2.下载源码
点击运行
运行结束后,源码就下载下来了
4.3.上传和解压自己的数据集
将第2步压缩的custom_data.zip直接拖到目录下,保持和yolov5文件夹同级
添加一个代码段,输入这行代码来解压上传的文件
一个奇怪的现象:解压代码必须亲自手打,如果是复制的,会报错:
/bin/bash: unzip -q …/custom_data.zip -d …/: No such file or directory
解压后,点击刷新,就出现了同名文件夹
4.4.修改ymal配置文件
将coco128.yaml文件下载下来修改一下
我这里将文件重命名为mycoco.yaml
让训练集路径保持一致
种类以及种类的名称做了修改
注意:nc和names的数量要和标注时的数量保持一致
文件保存后,上传到原来的路径
4.5.运行train.py训练
经过多次测试,少量的数据集(100张图片),
参数设置 batch=2,epochs=60 效果还行。
大概15分钟,整个训练就完成了
训练时主要看这几个参数:
epoch:训练了多少轮了
mAP:准确度提高到多少了
Results saved to:最终训练的权重文件保存的路径
5.效果检验
使用刚才训练好的权重文件,对一张图片做训练
最终检测效果
从github上下载到自己电脑上的项目,如果是跑detect.py可以很方便的运行
如果是对视频的检测,直接将–source的路径换成视频就可以了
如果是使用摄像头检测,–source的参数设置成0,按Q键保存
但是想要运行train.py,我暂时还是使用别人修改过的版本。