当前位置:   article > 正文

YOLOV5-小白实现从数据标注到模型推理,究极详细,不会你捶我_recall-confidence curve

recall-confidence curve

文章目录

一、环境搭建

1 .安装 anaconda

2 . 安装cuda cudnn vs  注意!!! cuda和cudnn的版本一定要对应 否则后面训练会报错

3 . 安装torch  注意!!! torch版本一定要个cuda版本对应兼容

 4 . 验证GPU是否可用 这直接关系到你训练的时候是否能使用GPU,也是防止前面环境出错的一步

二、准备样本

1.  训练集  train  用来标注数据 先准备个几百张样本放入到 命名为 train的文件夹

2.  验证集  新建一个val的文件夹 暂不放样本

3. 测试集   放一些 训练集里面没有的样本用于后期测试效果

三、数据标注

四、模型训练

1.  先从yolov5官网下载源代码  YOLOV5官网  下载后加压

2、安装所需要的依赖和安装包 都在这个requirments.txt文件中

3、 在yolov5的data目录下创建一个文件夹mydata(随意自取) 里面放入自己之前准备好的训练集 验证集 测试集,如下:

4、到yolov5目录下的models文件夹下 有各种模型, 我们这里使用yolov5n.pt,打开修改一个参数和mydata.yaml中的nc一致

5、下载预训练模型

6、训练参数介绍

7、模型训练

8 、常见 报错!!! 及其解决办法!!

1、Import Error: Failed to iniyialized: Bad git executable

2、RuntimeError: cuDNN error: CUDNN_STATUS_NOT_INITIALIZED

3、OSError: [WinError 1455] 页面文件太小,无法完成操作。

五、模型验证 通过以下方法评估模型

1、同理,在虚拟环境下(没用虚拟环境的忽略)敲一下命令:

2、打开推理后结果的文件夹

3、看图说话,判断模型质量

① F1曲线(F1-curve.png)

② Precision-Confidence Curve(PCC):信度阈值-准确率曲线图

③ Recall-Confidence-Curve(RCC)信度阈值-召回率曲线图

④ Precison-Recall-Curve(PRC)精确率-召回率曲线图

六、模型推理

七、部署

八、总结


提示:以下是本篇文章正文内容,下面案例可供参考

一、环境搭建

注意我的环境都是在conda虚拟环境下运行的,因为后面需要的yolov5依赖我都直接安装在虚拟环境了我觉得比较方便

如果不想在虚拟环境下运行的可直接忽略此步,从第二步开始:

1 .安装 anaconda

        参考:Anaconda-2023版 下载安装配置(国内镜像+图文详解)_anaconda下载-CSDN博客

        安装完成后,创建虚拟环境:

  1. # 打开 anaconda prompt 创建虚拟环境
  2. conda create --name <环境名称>
  3. # 激活虚拟环境 windows环境下 前缀不需要加conda
  4. conda activate <环境名称>
  5. # 下载python版本的命令
  6. conda install python=3.8
  7. # 安装软件包
  8. conda install <软件包名称>

2 . 安装cuda cudnn vs  注意!!! cuda和cudnn的版本一定要对应 否则后面训练会报错

              可参考本文章 安装cuda cudnn

              CUDA安装及环境配置——最新详细版-CSDN博客

3 . 安装torch  注意!!! torch版本一定要个cuda版本对应兼容

              参考本文章 很详细

              cuda、torch、torchvision对应版本以及安装_torch cuda-CSDN博客

                我是直接通过命令下载:

                版本号自行修改

  1. # 下载cuda对应的torch torchversion torchaudio版本
  2. pip --default-timeout=1000 install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/cu111/torch_stable.html
  3. # 安装好后 使用以下命令查看版本是否安装好了
  4. pip list

 4 . 验证GPU是否可用 这直接关系到你训练的时候是否能使用GPU,也是防止前面环境出错的一步

  1. # 输入以下命令
  2. python -c "import torch; print(torch.cuda.is_available())"
  3. 结果是True 说名cuda安装版本是可用的
  4. # 另外一个
  5. python -c "import torch; print(torch.cuda.device_count())"
  6. 如果返回的不是01 这个代表数量 就说明环境基本没问题了

二、准备样本

一般来说 样本容量越大 训练后的数据推理的越准确

1.  训练集  train  用来标注数据 先准备个几百张样本放入到 命名为 train的文件夹

2.  验证集  新建一个val的文件夹 暂不放样本

3. 测试集   放一些 训练集里面没有的样本用于后期测试效果

三、数据标注

1打开标注工具网页版:Make Sense

记住 这个标注的话 记得在关闭电脑或者网页之前导出,否则网页刷新后记录不会保存

按照以下步骤:

开始项目:

选择训练集中的所有样本:

选择目标检测:

添加要检测的标签:

标注:

其他一些功能:

最重要的一步、导出标注数据!!

导出来后是一个压缩包,里面会有很多的txt文件 我这只有一个因为我只用了一个图片,这个txt文件就是你每个样本标注的数据:

将这些txt 复制出来  粘贴到 train 训练集文件夹中  一张图片对应一个txt 要检查下是否漏了

从训练集里面复制一部分jpg和对应的txt出来 放入到 val 验证集文件夹中 这样就是验证集了

模型训练

1.  先从yolov5官网下载源代码  YOLOV5官网  下载后加压

2、安装所需要的依赖和安装包 都在这个requirments.txt文件中

打开:

使用如下命令,安装requirments.txt

pip install -r requirements.txt

3、 在yolov5的data目录下创建一个文件夹mydata(随意自取) 里面放入自己之前准备好的训练集 验证集 测试集,如下:

在mydata文件夹下新建一个mydata.yaml文件 内容如下:

  1. train: J:\\coding\\project\\logo\\yolov5-master\\data\\mydata\\train # 训练集的路径
  2. val: J:\\coding\\project\\logo\\yolov5-master\\data\\mydata\\val # 验证集的路径
  3. test: J:\\coding\\project\\logo\\yolov5-master\\data\\mydata\\test # 测试集的路径
  4. #Classes
  5. nc: 5 # 标签的数量 我前面标准了5个标签我这里就填5
  6. names: ['CQC','circulate','license','logo1','logo2'] # 各标签的名称

现在我们的mydata目录下面 有三个文件夹和一个yaml文件

4、到yolov5目录下的models文件夹下 有各种模型, 我们这里使用yolov5n.pt,所以找到yolov5n.yaml,打开修改一个参数和mydata.yaml中的nc一致

5、下载预训练模型

【wpsshop博客】

推荐阅读
相关标签