Windows10+YOLOv5训练自己的数据集

本文介绍了在Windows10上使用anaconda搭建环境,包括安装CUDA、cudnn和pytorch GPU版。详细步骤包括创建虚拟环境、下载YOLOv5源码、安装依赖项、源码测试以及训练自定义数据集的过程。训练过程中涉及数据集制作、配置文件修改、训练参数调整,并使用tensorboard可视化训练过程。
摘要由CSDN通过智能技术生成

一、环境和配置

系统:window10
CUDA:10.1
CUDNN:7.4
python:3.7
opencv-python>=4.1.2
pytorch>=1.7.0
本文介绍使用anaconda搭建环境。

1.1 安装anaconda

anaconda的安装教程之前已经写过一篇文章,还没安装的请自行参考安装,这里不再赘述,参考链接:anaconda安装教程

1.2 在anaconda中安装pytorch虚拟环境

这一步不是必须的,但是建议建立虚拟环境安装pytorch,免得中途出错把别的环境也破坏了,到时候就得不偿失了。
在anaconda中安装虚拟环境的教程之前也已经写过了,这里就不写了,自行参考链接:anaconda中创建虚拟环境

1.3 安装CUDA和cudnn

若要使用GPU训练,则需要安装CUDA和cudnn,具体的安装方法可以参考我的另一篇文章:CUDA和cudnn的安装

1.4 安装pytorch GPU版

yolov5最新版本需要pytorch1.7(以前要求是1.6)版本以上,因此我们安装pytorch1.7版本。
第一步:打开命令提示符:
在这里插入图片描述
第二步:激活torch环境(我装的虚拟环境取名为torch),输入命令:

activate torch

在这里插入图片描述
第三步:安装pytorch。由于先安装好了CUDA10.1,因此在环境中输入:

pip install torch==1.7.0+cu101 torchvision==0.8.1+cu101 torchaudio===0.7.0 -f https://download.pytorch.org/whl/torch_stable.html

然后就是等待pytorch的安装完成,可能需要一定的时间。

如果你想装其他版本,可以先进入pytorch官网,然后选择相应的版本,下面有相应的安装命令,复制下来,在torch环境下输入该命令即可。
在这里插入图片描述
第四步:安装好之后,可能需要将numpy进行升级,输入命令:

pip install --upgrade numpy

第五步:测试torch是否安装成功
先打开python编译环境,输入:

python

然后输入下面的命令查看torch的版本:

import torch as t
t.__version__

若输出为下面的结果,则说明pytorch安装成功:
在这里插入图片描述
另外也可以输入另一个命令:

import torch as t
t.cuda.is_available

若输出的结果为“True”,则说明安装成功
在这里插入图片描述
补充:导入pytorch使用的命令是“torch”,而非“pytorch”,若在导入torch的时候出现错误:“OSError:[WinError 126]找不到指定的模块。”这里根据提示在路径中去找这个模块,会发现这个“asmjit.dll”是存在于该路径下的,并没有丢失。
解决办法:根据出错的提示,上面有一个网址,把它复制下来,用任意一个浏览器打开,下载这个应用程序,然后双击安装。安装完毕后重启一下电脑,就会发现可以正确的导入torch模块了 。
在这里插入图片描述

二 源码测试

2.1 下载源码

在GitHub上下载源码:YOLOv5源码下载地址

2.2 安装依赖项

下载源码并解压后,源码根目录下有一个requirements.txt,这里面就是需要安装的各种依赖项了,安装方法是,从根目录打开命令提示符:在文件夹上方的框里输入“cmd”,然后按回车:
在这里插入图片描述
之后就会跳出来一个命令提示符框,并且是在该根目录下:
在这里插入图片描述
输入命令:

pip install -r requirements.txt

然后等待安装完成就行了。

2.3 测试

2.3.1 下载权重文件

作者在GitHub中给出了他们训练出来的权重文件:权重文件下载地址
并给出了各种权重文件的检测效果,我们可以随意下载。
在这里插入图片描述
将下载的权重文件放在./weight文件夹下。

2.3.2 测试

还是在源码的根目录下打开命令提示符,然后激活torch环境
在这里插入图片描述
图片测试:
输入命令:

python detect.py --source ./data/images/ --weights ./weights/yolov5s.pt --conf 0.4

运行之后输出:
在这里插入图片描述
这时候根目录文件夹中,多了一个runs文件夹,这里面就是测试的结果:
在这里插入图片描述
打开runs文件夹,一路打开里面所有的文件夹,里面有两张检测后的图片:
在这里插入图片描述
打开其中一个看一下:
在这里插入图片描述
视频测试
准备一个视频文件test.mp4,放在/data/video路径下,输入命令:

python detect.py --source ./data/video/test.mp4 --weights ./weights/yolov5s.pt --conf 0.4

其他方式的检测就不在这里写测试方法了,放在后面!!!
另外这些测试命令的解释,也放在后续使用自己训练的模型进行测试的介绍中了!!!!

三、训练自己的数据集

3.1 数据集制作

数据集制作的前半部分可以参考我的另一篇文章VOC数据集制作
这里我就接着VOC数据集制作这篇文章来讲接下来对数据集的操作。

第一步:将制作好的数据集放到yolov5-master根目录下。我的数据集文件夹结构为:
在这里插入图片描述
第二步:将数据集转换到yolo数据集格式。在VOCdata中新建一个voc_label.py文件,输入如下代码:

import xml.etree.ElementTree as ET
import pickle
import os
from os import listdir, getcwd
from os.path import join
import  shutil

sets=[('TrainVal', 'train'), ('TrainVal', 'val'), ('Test', 'test')]

classes = ['类别1', '类别2', '类别3',
评论 42
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值