如何使用yolov5训练模型(新手必看)

本文指导如何使用yolov5进行Python模型训练,包括资源下载、图片标注、数据预处理(split.py和xml_to_txt.py脚本)、模型训练和检测的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们在日常python的学习中,总是要进入到训练模型这一环,但是如何使用yolov5训练模型呢,接下来我将带你使用yolov5训练模型。

1.在准备前期,我们需要把yolov5需要的一些资源下载好,下载的步骤我就不演示了

2.接下来我们把需要训练的图片资源准备好,我们需要找到这个文件

然后继续双击,在这个文件目录下创建一个image文件

然后把需要训练的文件粘贴进去

3.接下来打开终端,输入命令pip install labelImg

目前我们可以看到我们的labelImg已经下载好了

然后我们继续输入labelImg

4.接下来我们会跳转到这个页面

我们首先需要打开图片的地址,首先打开open dir ,然后打开刚才的图片,然后使用w键对他进行标注,完了之后可以打开open dir这个底下的,对他进行保存位置的选择

这就是我们标注之后的图片了

5.在yolov5工程目录下新建两个.py程序,split.py   ,  xml_to_txt.py  ,处理我们标注的数据,我们需要创建

import os
import random
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--xml_path', default='data/dataset', type=str, help='input xml label path')
parser.add_argument('--txt_path', default='data/labels', type=str, help='output txt label path')
opt = parser.parse_args()
trainval_percent = 1.0
train_percent = 0.8
xmlfilepath = opt.xml_path
txtsavepath = opt.txt_path
total_xml = os.listdir(xmlfilepath)
if not os.path.exists(txtsavepath):
    os.makedirs(txtsavepath)
num = len(total_xml)
list_index = range(num)
tv = int(num * trainval_percent)
tr = int(tv * train_percent)
trainval = random.sample(list_index, tv)
train = random.sample(trainval, tr)
file_trainval = open(txtsavepath + '/trainval.txt', 'w')
file_test = open(txtsavepath + '/test.txt', 'w')
file_train = open(txtsavepath + '/train.txt', 'w')
file_val = open(txtsavepath + '/val.txt', 'w')
for i in list_index:
    name = total_xml[i][:-4] + '\n'
    if i in trainval:
        file_trainval.write(name)
        if i in train:
            file_train.write(name)
        else:
            file_val.write(name)
    else:
        file_test.write(name)
file_trainval.close()
file_train.close()
file_val.close()
file_test.close()

这是代码

在xml_to_txt.py  文件下我们需要修改东西

同时,我们需要在scripts文件下创建一个这个文件

然后对立面的内容进行补充与修改

name里面就是我们要修改的内容

然后打开终端

输入这个指令 python train.py --epoch 300 --batch 4 --data ./data/myvoc.yaml --cfg ./models/yolov5s.yaml --weight ./weights/yolov5s.pt --workers 0

我们对数据进行三百次训练

点回车

训练完毕后,我们在这个目录底下找到这个exp文件,最新的就是我们刚才需要你连号的数据,把他

把他这个目录底下的pt文件进行复制

粘贴到这个文件底下

然后我们回到刚才的终端输入 python detect.py --weight ./weights/last.pt --source 0

等待摄像头打开即可进行检测

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

溺于星河(●—●)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值