图像识别之Yolov5训练自己的模型
文章目录
- 图像识别之Yolov5训练自己的模型
- 一、简介
- 2.注释图像
- 三、数据集的划分
- 四、配置训练文件
- 1、修改yolov5l.yaml配置文件
- 2、修改coco128.yaml配置文件
- 5.开始训练
- 6. 培训成果展示
- 1、训练相关参数
- 2、测试
- 7. 总结
一、简介
上一篇文章讲解了如何使用Yolov5的原有的模型进行识别,本文将会介绍使用Yolov5来进行自己的数据集的训练。
上一篇文章的链接是:
https://blog.csdn.net/m0_54218263/article/details/122601330?spm=1001.2014.3001.5501
2.注释图像
首先,我们需要获取数据。您可以根据自己的需要和数据要求,选择从不同的数据集中下载获取。此处无需赘述。获取数据后,需要对数据进行标注。我使用的在线标签平台模式:
https://www.makesense.ai/
我打算用猫狗的图片来训练,最后希望能准确识别出这两种动物。
在下面。让我们标记数据集:
导入数据:
添加标签:
手动圈出绘图空间:
一个图像可以有多个狗:
一张图片也可以只有一只狗:
一个图像可以有多个猫:
一张图片也可以只有一只猫:
在我们完成所有图像的标记后,我们需要导出标签:
然后,我们需要对数据集进行分类:
三、数据集的划分
将自定义测试的图像数据和标签数据集分别 划分为:训练集、验证集、测试集,,比例根据数据量不同,一般可以为 96%:2%:2%
将图片和标签放在如上所示的文件夹中:
这里需要注意的是,标签和图片需要一一对应。
四、配置训练文件
我们需要配置训练文件,以便我们可以根据自己的数据进行训练。
我们需要对后缀名为yaml的文件进行修改,从而使得它们满足我们自己的训练的需求:
1、修改yolov5l.yaml配置文件
我们在models下面找到yolov5l,因为我是准备使用yolov5l.pt来进行训练,因此使用这个配置文件来进行修改,这里只需要修改一个位置:
2、修改coco128.yaml配置文件
在这里,我们找到data下面的coco128文件,复制一份,然后将download注释掉,修改数目,修改标签的名称,然后就修改完成了。
5.开始训练
python train.py --cfg models/myyolov5l.yaml --data data/mycoco.yaml --weights yolov5l.pt --epoch 150 --batch-size 32
如果你不想要这么高的训练准确率,你可以稍微降低它:
python train.py --cfg models/myyolov5s.yaml --data data/mycoco.yaml --weights yolov5s.pt --epoch 150 --batch-size 32
接下来是一个漫长的训练过程。
6. 培训成果展示
1、训练相关参数
训练完成后,会有一些训练过程或结果的记录,这里展示一些:
接下来我们用图片来测试一下,看看训练效果如何。
2、测试
python detect.py --weights runs/train/exp3/weights/best.pt --source data/test/test1.jpg
这是测试的语法:
python detect.py --weights runs/train/exp3/weights/best.pt --source data/test/test1.jpg
7. 总结
以上就是,使用yolov5来训练自己的数据集的一个案例,希望对大家有帮助,最后,谢谢大家的阅读与支持,喜欢的话就点个赞,我一定会再接再厉接着加油的呢。
版权声明:本文为博主hhh江月原创文章,版权归属原作者,如果侵权,请联系我们删除!
原文链接:https://blog.csdn.net/m0_54218263/article/details/122695719