[超详细!!!!!]yolov5_4.0版本目标检测(环境配置+数据集制作+模型训练)--垃圾分拣业务流

一、服务器选择

本来实验室是有华为云的资源支持,但我觉得这一类的服务器封装性过高,没有那么自由,所以选择了mistgpu,使用体验和技术支持都不错,预装软件框架与要求较为贴合,图形化界面及jupyter支持完善。在这里插入图片描述
如果有想使用的同仁可以用下我的邀请链接:mistgpu.com/i/783956

二、环境配置(使用conda)

这类教程CSDN上很多,按其步骤即可,这里只对一些关键点进行说明。
 
参考连接:yolov5 环境配置
 

1.准备工作

以mistgpu提供的服务器为例,由于已经安装好CUDA 11.2和anaconda故在此先创建虚拟环境

conda create -n yolov5 python=3.8

//其他操作示例
conda activate yolov5 //打开虚拟环境
conda deacivate//关闭虚拟环境

而后换清华源,在虚拟环境下

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/fastai/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/

conda config --set show_channel_urls yes

 

2.具体安装

以yolov5 4.0版本为例,源码下载好之后,可见文件夹下的requirements.txt,后续将使用pip来安装requirements.txt中提到的各类包,但有些是安装不下来的(torch与torchvision),因此先在requirements.txt中注释相应内容,由我们自己手动安装。
在这里插入图片描述
手动安装前,先给出我的一些关键配置以供参考(yolov5 4.0版本的)

yolov5 verison:4.0
python 3.8
CUDA 11.0.207
cudnn 8.1.0?
torch 1.7.1
torchvision.__version__ 0.8.2

接下来首先安装cudatoolkit,建议在这顺便了解一下cuda和cudatoolkit的关系

conda activate yolov5
conda install cudatoolkit=11.0
//然后是torch和torchvision
pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 -f https://download.pytorch.org/whl/torch_stable.html

关于torch/torchvision/cudatoolkit的对应关系,可以参照以下网址
torch/torchvision/cudatoolkit对应关系
在这里插入图片描述

然后是cudnn的安装,严格来说也不能叫安装,就是把cudnn的压缩包下载并解压后,将其中一些.h和.so文件复制进安装目录。

安装cudnn8.1
  
  官网下载压缩包
  把里面的include下一堆.h文件拷贝到你的anaconda安装目录下的\Library\include中;
  把bin下的一堆.dll文件拷贝到你的anaconda安装目录下的\Library\bin中;
  把lib\x64下一堆.lib文件拷贝到你的anaconda安装目录下的\Library\lib\x64中;

以上安装后用pip安装剩余的包

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U -r requirements.txt

 

三、数据集准备

使用labelImg标注数据集,可直接选择yolo格式(txt而非xml),标好后着重说明一下yolo数据集的规范格式
假定数据集文件夹名称为garbage,该文件夹下有以下三个子文件夹
在这里插入图片描述
 
images放图片,labels放对应的txt,两者名称要对应好,ImageSets存放训练集与测试集的路径说明。
 
在这里插入图片描述
这些txt中存放了相应训练集、验证集等图片的绝对路径(就是images里放的那些),做好后注意garbage文件夹和要和yolov5源码文件夹同级,否则读不到数据集。相应的上步的绝对路径要正确填好。
至此数据集准备完毕。
 

四、训练前yolov5相关设置调整

  1. yolov5/data/文件夹下添加相应数据集的配置文件
     
    在这里插入图片描述
    内容如下:
//训练集与验证集描述文件
train: /home/mist/garbage/ImageSets/Main/train.txt
val: /home/mist/garbage/ImageSets/Main/val.txt
//类别数
#number of class
nc: 5
//类别名
#class names
names: ['paper', 'cups', 'bottle', 'orange', 'battery']
  1. 以选用yolov5_s模型为例,在models/yolov5s.yaml配置文件中更改类别数nc(此处我的数据集类别数为5)
    在这里插入图片描述
    3.准备预训练权重,此处我下载的是4.0版本的yolov5s.pt,放在/weights下(版本、模型要匹配
     在这里插入图片描述
    4.yolov5/train.py更改,主要是输入图片尺寸的更改和一些配置文件、权重的地址
    在这里插入图片描述

五、训练

python train.py #训练, 训练后会告诉你权重在哪

#测试
python3 detect.py --source file.jpg  # image      --weights ./runs/exp4/weights/best.pt
                          #file.mp4  video
                          #./dir  directory
                          #rtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa   rtsp stream
                          #http://112.50.243.8/PLTV/88888888/224/3221225900/1.m3u8  http stream
                          

以我自己的结果为例,基本符合要求~
在这里插入图片描述

六、下期预告(TX2端使用TensorRT实现yolov5)

  • 6
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
随着深度学习技术的不断发展,目标检测技术已经得到了广泛的应用。在目标检测算法中,数据集的质量和数量对算法的效果影响极大。因此,对于目标检测算法的研究者和应用者来说,一个好的数据集清单是非常必要的。 目标检测数据集清单主要包括以下几个方面:数据集名称、数据集大小、数据集标注、数据集来源、数据集评价指标、文章发表时间等。在这些方面,我们需要从数据集的特点、应用场景和算法类型等角度进行分析,以便能够对不同的数据集进行正确的选择和使用。 其中,数据集大小是一个非常重要的指标。一方面,确保数据集的大小能够满足算法的需求,另一方面,也要避免数据量过大导致训练时间过长或过拟合的问题。此外,数据集标注也是一个至关重要的环节,数据集标注的准确性和完整性直接影响算法的性能。 当我们选定了一个符合我们需求的目标检测数据集之后,如何训练我们的算法模型也是一个需要思考的问题。在这方面,我们建议使用yolov5模型进行训练和使用。yolov5是一种基于深度学习目标检测算法,其具有训练速度快、检测精度高等优点。对于yolov5模型训练和使用,我们需要对其网络结构、损失函数、数据预处理、模型调参等进行认真的学习和掌握。 总之,目标检测数据集清单是目标检测领域中非常重要的一环。只有通过对不同数据集的分析和评估,我们才能够选取到最适合我们需求的数据集,并且能够利用yolov5模型进行有效的训练和使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值