1、前言
前两天,通过OpenCV 对猫和老鼠视频的抽取,提取了48张图片。这里不再介绍,可以参考之前的文章:利用OpenCV 抽取视频的图片,并制作目标检测数据集-CSDN博客
数据的目录如下:
项目的下载见文末
2、制作YOLOV5 的目录
这里的labelimg 里面,有个classes.txt 需要单独拿出来,后续要用
因为YOLOV5的数据结构如下:
这里参考代码:数据集生成 YOLOV5 可训练的数据目录、并且可视化-CSDN博客
生成的数据如下:
3、训练
YOLOV5 的训练,将数据集放进yolov5的主目录
3.1 调整coco128.yaml参数
这里默认的参数是 coco128.yaml 文件,也可以新建,这里改个路径即可。为了方便,这里直接在coco128文件更改
注意,这个coco128.yaml 必须更改!!!
更改如下:
因为这里的路径是相对路径,因为更改为下面的形式,
names就是labelimg生成的classes.txt 文件,照着样子更改即可
权重的话,可以在下面选择:这里就是默认的 yolov5s
3.2 开始训练
coco128.yaml 是必须更改的
更改完成后,直接运行train文件即可
运行效果如下:
看到,训练结果保存在runs/train/exp 目录下
3.3 训练过程可能出现的问题
如下:
修改虚拟内存这个比较重要,按照下面操作即可:
设置-->系统-->关于(或者系统系统)-->高级系统设置
高级-->设置
高级-->更改
这里更改的盘必须是虚拟环境安装的盘符!!
3.4 推理部分
需要指定权重和推理的文件
3.4.1 推理文件夹
下面代码意思是使用runs目录下最好的权重,来推理datasets下val目录下所有图像
python detect.py --weights runs/train/exp/weights/best.pt --source datasets/images/val
可以在runs/detect 目录下查看
3.4.2 推理视频
代码如下:
python detect.py --weights runs/train/exp/weights/best.pt --source ../test.mp4 --view-img
3.5 训练过程的文件展示
项目下载:YOLOV5 实战项目:猫和老鼠图像目标检测数据集