YOLOv5系列 2、使用yolov5识别自己的数据

YOLOv5系列 1、制作自己的数据集
YOLOv5系列 2、使用yolov5识别自己的数据


文章目录

  • 前言
  • 一、下载yolov5源码
  • 二、测试下载模型
  • 三、训练并检测自己的数据集
  • 总结


前言

之前在上一篇blog中记录了如何制作自己的数据集,这篇主要是使用yolov5跑通并训练自己的数据集,环境是window10,pytorch1.7,cuda10.1。


一、下载yolov5源码

首先,需要从GitHub上下载yolov5的源码文件,下载后直接解压到自己想安装的地方即可。还有这个源码里面没有yolov5的权重文件,权重文件需要单独下载。
YOLOv5系列 2、使用yolov5识别自己的数据_第1张图片
YOLOv5系列 2、使用yolov5识别自己的数据_第2张图片

二、测试下载模型

解压好源码,并下载好权重文件后,将下载好的权重文件放在解压后的文件夹里:
YOLOv5系列 2、使用yolov5识别自己的数据_第3张图片
用pycharm打开yolov5的文件夹,点开detect.py文件,在运行前需要配置参数,其实就是添加权重文件:
YOLOv5系列 2、使用yolov5识别自己的数据_第4张图片

--weights yolov5s.pt #看自己下的是什么权重文件,写上相应的文件名即可

然后直接运行,会出现:
YOLOv5系列 2、使用yolov5识别自己的数据_第5张图片
这个时候就代表已经预测结束,检测结果保存在runs\detect\exp下面:
YOLOv5系列 2、使用yolov5识别自己的数据_第6张图片
YOLOv5系列 2、使用yolov5识别自己的数据_第7张图片
这样就代表下载的源码和权重文件是没有问题的,接下来就可以训练自己的数据集了。

三、训练并检测自己的数据集

首先,我是将源码和自己的数据集放在了相同的目录下:

--MaskDataSet
--yolov5源码文件

然后打开train.py文件配置参数:
YOLOv5系列 2、使用yolov5识别自己的数据_第8张图片

--data ../MaskDataSet/data.yaml --weights yolov5s.pt --batch-size 8
#	--data 		:表示数据集放的位置,不需要改变
#	--weights 	:表示需要加载的权重文件
#	--batch-size:表示一个批次加载几张图片,如果显存小的话,可以适当调低一些

运行train.py,在训练中产生的相关指标,都会储存在runs\train文件夹里面,包括:mAp,混淆矩阵,P-R图,预处理后的输入图像等等。最最最重要的是你训练好的权重文件也在这里,在你的runs\train\exp\weights文件夹下面会有两个文件,如下图所示,顾名思义,一个是训练过程中最好结果的权重,一个是最后一次的权重,简直为你考虑的周周全全。
在这里插入图片描述
最后可以使用detect.py,这个文件测试一下训练的效果如何,在这一步的时候,记得要把detect.py的yolov5s.pt换成自己best.pt。博主做的东西属于项目上的,暂时不方便公开,所以就不放最后的检测结果图啦,总体来说是和上面的行人结果图差不多。


总结

  1. 好多参数如:迭代次数、学习率、置信度、batch_size、使用cpu还是gpu训练等等,都可以在train.py中找到,并进行修改,可以配合自己的数据集特性进行修改。
  2. 如果后期想部署在其他地方的话,yolov5中的export.py可以帮助把训练生成的.pt文件转换为.onnx文件和.torchscript文件,方便于后期的部署。
  3. yolov5可能在学术上没有过大过多的改进,但是确实适用于工程中,简直不要太方便。

你可能感兴趣的:(YoloV5,python,算法,计算机视觉,深度学习,机器学习)