图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型

目录

步骤流程图:

安装Anaconda Prompt

数据集采集

labelImg标注数据集

labelImg下载标记

配置labelImg环境

使用lablimg进行标记

训练自己的yolov5模型

举例Google Colaboratory

第一步:进入到Google drive新建---文件夹—yolov5helmet,用于存放项目

第二步:打开 Google Colaboratory网页,进入到 Google Colaboratory,

第三步:修改笔记本设置----设置为GPU,

第四步:安装yolov5所需的 torchvision环境

第五步:接下来就是要链接到我的Google云盘为下面进行存放yolov5

第六步:进入到 yolov5helmet 里进行下载yolov5模型:

第七步:回到Google drive可以看到再刚刚建的文件夹下有刚下载完的yolov5,在yolov5文件下上传我们标记好的数据集

第八步:在Google云盘里使用云盘自带的Editor打开,进行修改yolov5s.yaml 与coco128.yaml文件

第九步:进入到yolov5安装pyyaml

第十步:接下来是训练模型:


步骤流程图:

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第1张图片

安装Anaconda Prompt

可参考以下博主发的内容,链接如下:

(6条消息) 史上最全最详细的Anaconda安装教程_OSurer的博客-CSDN博客_anaconda 安装

数据集采集

处理:收集有不同环境、施工场地与照片分辨率的安全帽佩戴与没有佩戴的图片,以及日常生活等等干扰图片,增加训练的数据集多样性与多元性,以此来增强yolov5训练模型的泛化能力。新建一个文档yolov5-master下新建traindata文件-在traindata文件下新建images与labels,把即将训练的图像放在images下:

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第2张图片

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第3张图片

labelImg标注数据集

labelImg下载标记

下载链接:可在下面这个网页下载:

GitHub - tzutalin/labelImg: ️ LabelImg is a graphical image annotation tool and label object bounding boxes in images下载好,修改标签

data/predefined_classes.txt里面修改里面的class,比如我的标签为

Without helmet

Helmet on

按下面格式修改

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第4张图片

配置labelImg环境

修改好后,需配置好labelImg环境才可以运行:

打开Anaconda Prompt,安装PyQt5,输入如下命令:

pip install PyQt5

运行结果如下图所示:

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第5张图片

接下来是安装lxml,输入如下命令:

pip install lxml

运行结果如下图所示:

接下来到labelImggithub下载源码的地址

例如我的是E:\graduation-project\labelimg-master-master

输入如下命令,进入到该文件夹运行:

cd E:\graduation-project\labelimg-master-master

E:

pyrcc5 -o resources.py resources.qrc

运行结果如下图所示:

打开labelImg.py

可以直接在命令行,在E:\graduation-project\labelimg-master-master目录下打开,输入如下命令运行labelImg

python labelImg.py

也可以有pythonidlepycharm直接打开代码,然后手动run

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第6张图片

打开成这个样子:

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第7张图片

使用lablimg进行标记

打开文件照片,如下图步骤:

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第8张图片

接下来,将格式改成yolo,如下图所示

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第9张图片

打开自动保存

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第10张图片

接下来就是大工程,一张张进行标记

“w”键是标注,“a”键是上一张,“d”键是下一张

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第11张图片

…………………………………………好几小时后……………………..

一张张标记好,文档成这个样:

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第12张图片

训练自己的yolov5模型

Google Colaboratory上训练速度比较快,在win10训练会比较慢

举例Google Colaboratory

介绍:colabgoogle提供的一个免费的jupyter notebook工具,不需要任何配置和设置就可以直接在里面训练,它支持google drive、深度学习框架tensorflow在内的google全家桶,还可以在上面安装并使用KerasPyTorchOpenCV等等流行的深度学习库,来主要用于机器学习的开发和研究。colab最大的好处就是给广大的开发者提供免费的GPU资源,可以把Colab看成是一台带有GPUUbuntu虚拟机,可以在上面非常轻松地运行如tensorflowpytorchkeras等深度学习框架。介绍是在网上找的简略介绍

但是使用时,每次使用Colab分配的CPU等硬件设施都会有所不同,还有的就是持续使用Colab的时长最多使用12小时,超过时间系统会强制停止正在运行的程序,并且收回占用的虚拟机,就要重新配置环境等等,如果训练比较大的模型或者运行大的程序,就要充钱了。

首先打开爬到外网登录Google网页,申请一个账号

再登陆进去https://drive.google.com/drive/my-drive

第一步:进入到Google drive新建---文件夹—yolov5helmet,用于存放项目

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第13张图片

第二步:打开 Google Colaboratory网页,进入到 Google Colaboratory,

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第14张图片

可以看到这个页面

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第15张图片

第三步:修改笔记本设置----设置为GPU

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第16张图片图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第17张图片

并连接---连接到托管代码执行程,连接后网站会随机分配一个资源,

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第18张图片  图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第19张图片

可以在notebook中查看提供的GPU资源,在代码单元格内打入!nvidia-smi,如下图所示,

!nvidia-smi

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第20张图片

import torch  torch.__version__命令,如下图3.4.2所示,运行即可看到分配的资源,进入

注意:不同代码可使用在上方的插入---代码单元格,新的一个代码单元格里写代码运行

import torch

torch.__version__

查看tourch

import torch

torch.cuda.is_available()

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第21张图片

第四步:安装yolov5所需的 torchvision环境

!pip3 install torchvision

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第22张图片

第五步:接下来就是要链接到我的Google云盘为下面进行存放yolov5

mport os

from google.colab import drive

drive.mount('/content/drive')

 

path = "/content/drive/My Drive"

 

os.chdir(path)

os.listdir(path)

连接到我的云盘

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第23张图片

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第24张图片图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第25张图片

第六步:进入到 yolov5helmet 里进行下载yolov5模型:

​
%cd yolov5helmet

!git clone GitHub - ultralytics/yolov5: YOLOv5  in PyTorch > ONNX > CoreML > TFLite

​

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第26张图片

第七步:回到Google drive可以看到再刚刚建的文件夹下有刚下载完的yolov5,在yolov5文件下上传我们标记好的数据集

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第27张图片 图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第28张图片

第八步:在Google云盘里使用云盘自带的Editor打开,进行修改yolov5s.yaml coco128.yaml文件

,如下所示,nc为识别的数,本来yolov5s自带的是80,现改为2

Trainval是训练的图像链接

Names是训练识别的名称

自己可根据自己模型进行修改

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第29张图片图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第30张图片

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第31张图片 图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第32张图片

第九步:进入到yolov5安装pyyaml

%cd yolov5

pip install -U pyyaml

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第33张图片

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第34张图片

第十步:接下来是训练模型:

训练语句的格式:

!python train.py --data 文档路径/coco128.yaml --cfg 文档路径/yolov5s.yaml --weights '' --batch-size 64

我的训练语句如下:

!python train.py --data /content/drive/MyDrive/yolov5helmet/yolov5/data/coco128.yaml --cfg /content/drive/MyDrive/yolov5helmet/yolov5/models/yolov5s.yaml --weights '' --batch-size 64

截图如下,

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第35张图片

等待训练

注意1:试过100张训练1个小时,所以预计好时间更具你的训练量来分配好时间,别傻傻等,多的话就洗洗睡吧,明天一早就看到训练好了。但是

弊端则是:免费用量限额的问题,部分原因是由于它的用量限额是时有变化的动态限额,不能保证资源工艺与无限供应资源。总的来说就是总体用量限额、空闲超时时长、虚拟机生命周期上限、可用GPU类型以及其他因素都会不时变化,达到用量限额系统会强制停止正在运行的程序,并且收回占用的虚拟机,就需要重新配置环境,重新训练等等,这样不能继续上一次的训练,无法继续。并且系统有时会向交互使用colab或最近资源用量较少的用户优先提供,用量限额对长时间运行计算的用户或者资源用量较大的用户非常不便,遇到用量限额的情况。还有的是交互问题,隔一段时间就需要交互一次,不然也会断掉,对长时间训练的不能挂着训练,在页面的Firefox和Chrome中,在colab页面,使用快捷键Ctrl+Shit+i打开检查页面,进入 terminal标签,chrome中为Console。输入以下代码

function ConnectButton(){
    console.log("Connect pushed"); 
    document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click() 
}
setInterval(ConnectButton,60000);

1分钟点击一次,若想停止点击,在检查页面上输入clearInterval(intervalId)

intervalld换成显示的数字

clearInterval()

注意2:训练时长注意好不要超过Google免费时限,不然会自动断掉

还有的是免费是有个限的,你短时间多次使用,你会成为充钱的潜在客户,分不占用的资源的时候,不会给你优先分,你想用的话只能是充钱了。

最后训练完后,在run文件里得到权重文件

若想测试一下测试可以在yolov5文件里新建一个文件test,放一张照片

!python detect.py --weight weights/best.pt --source 文档路径test /1.jpg

下载模型在本地后,在win10上,使用pycharm运行模型,修改detect.py等,使用电脑自带的摄像头进行识别如下图,如何修改有空再发......

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第36张图片

请佩戴好头盔

图文带着训练自己yolov5模型,可跟着步骤训练自己的小模型_第37张图片

你可能感兴趣的:(python,pycharm,开发语言)