YOLOv5模型: 环境部署

一、🏴总概述 教程原文链接

  1. ✨GPU/CPU环境详解及安装
  2. ✨GPU/CPU环境详解及安装
  3. 🌟Labelimg数据标注及数据转化

二、✨GPU/CPU环境详解及安装

  1. 什么是CPU?什么GPU?

    • CPU主要用于串行运算;而GPU则是大规模并行运算。由于深度学习中样本量巨大,参数量也很大,所以GPU的作用就是加速网络运算
    • CPU计算神经网络也是可以的,算出来的神经网络放到实际应用中效果也很好,只不过速度会很慢罢了。而目前GPU运算主要集中在矩阵乘法和卷积上,其他的逻辑运算速度并没有CPU快
  2. 我该选择使用GPU还是CPU?

    • GPU和CPU的选择一方面看自己的需求,另一方面取决于自己的PC性能(如果你拥有一块RTX3060,而你刚好对深度学习感兴趣,那你有什么利用不利用起来它呢)。
  3. 怎么安装GPU环境

    1. 安装GPU环境需要我们首先安装CUDA和CUDNN

      • CUDA: ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。
      • CUDNN:NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。
    2. ​ 查看本机显卡

      • 首先我们要确定本机是否有独立显卡,在计算机管理-设备管理器-显示适配器中,查看是否有独立显卡
      • 如下图所示:可以看到本机有一个集成显卡和独立显卡NVIDIA GetForce GTX 1050
      • img
    3. ​ 查询是否支持CUDA安装

      1. 进入:https://developer.nvidia.com/cuda-gpus :从下图中,从上图中,可以看到我本机的独立显卡是支持CUDA安装的,计算力是6.1
        • img
        • img
    4. CUDA下载

      1. 进入https://developer.nvidia.com/cuda-toolkit-archive :在这里会有众多CUDA版本,关于如何选择,我不能给出详细说法,只能说说我的理解。(CUDA的安装主要取决于个人使用要求和硬件性能,如你是RTX3060及以上的30系显卡我推荐你安装CUDA11.x,如果你像我一样是RTX1050这样不太高端显卡,选择CUDA9.x和CUDA10.x均可以,以我的习惯就是下载CUDA10.2
        • img
        • 从上到下*依次单击选择Operating SystemArchitectureVersionInstaller Type、“Download`。等待下载,下载完成后你就会获得安装包。
        • img
    5. CUDA安装

      1. 双击打开,显示解压安装目录,不需要改变,默认即可

        img

      2. 默认安装,保证后续过程不会出现太多其他不必要的问题!

      3. 接下来,进入NVIDIA安装过程,在这安装过程中,我一开始直接选择的精简安装,如果由于VS的原因,导致无法正常安装,可以换成自定义的安装方式,并将VS勾给去掉,便可以正常安装了,至于CUDA的安装目录,大家默认安装在C盘即可。

      4. img

    6. CUDA环境变量设置

      1. 安装完成之后,便是配置环境变量。方法为:右键我的电脑属性高级系统设置环境变量系统变量找到变量名为PATH双击打开,添加以下环境变量。

        img

        • 新增变量

          1
          2
          3
          4
          C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2
          C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64
          C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib
          C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\libnvvp
        • 测试安装, 有以下输出即为安装正确!

          1
          2
          3
          4
          5
          $ nvcc -V
          nvcc: NVIDIA (R) Cuda compiler driver
          Copyright (c) 2005-2019 NVIDIA Corporation
          Built on Wed_Oct_23_19:32:27_Pacific_Daylight_Time_2019
          Cuda compilation tools, release 10.2, V10.2.89
    7. CUDNN下载

      1. 进入https://developer.nvidia.com/zh-cn/cudnn ,点击下载cuDNN会出现

      2. 这里写的很明白,就是必须你注册登录账户才有资格下载,因此你注册一个账户登录进去即可!

        img

      3. 登录进去以后,点击选择相应的下载即可,但是要注意:CUDA的版本与CUDNN的版本要一致

        • 在要下载的CUDNN的点击名称最后会有CUDA 10.0或者CUDA 10.2这样的后缀,这就是代表与相应CUDA对应版本的CUDNN。
    8. CUDNN安装

      1. 下载之后,你会得到一个zip的压缩包。解压缩,将CUDNN压缩包里面的binincludelib三整个文件夹直接复制到CUDA的安装目录下,覆盖掉原来CUDA的这三个文件夹 即可。
    9. GPU版本的Pytorch安装

      1. 🟢在线安装

        1. 有了本地的GPU环境,我们就可以安装GPU版本的Pytorch了。进入https://pytorch.org/ ,点击INXTALL

          img

        2. 根据自己的需求和安装的CUDA的版本对应安装Pytorch,复制输出的命令即可。如果下方Run this Command提醒CUDA-10.2 PyTorch builds are no longer available for Windows, please use CUDA-11.3 , 可以访问:https://pytorch.org/get-started/previous-versions/ 查找之前的版本在线安装。

      2. 🟡离线安装

        1. 📌 方法一:进入官网下载地址,torch安装包列表 | torchvision安装包列表

        2. 📌 方法二:进入官网指定的CUDA版本下载地址:https://download.pytorch.org/whl/cu113/torch_stable.html (以CUDA11.3为例)

          1
          2
          # 标*部分可以根据自己的CUDA型号进行搜索,比如CUDA 10.2对应为102,CUDA11.3对应为113
          https://download.pytorch.org/whl/cu***/torch_stable.html
        3. 根据自己的实验环境,包括操作系统、CUDA类型、Python版本等,选择安装的torchtorchvision的安装包

          img

        4. ```python
          pip install ./torch-.whl # 先安装
          pip install ./torchvision-
          .whl # 后安装

          注意:这里存在安装顺序,由于torch是torchvision的上级安装包,如果先安装torchvision,则会自动下载torch安装# 包。因此先安装torch,再安装torchvision

          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          14
          15
          16
          17
          18
          19
          20
          21
          22
          23
          24
          25
          26
          27
          28
          29
          30
          31
          32
          33
          34
          35
          36
          37
          38
          39
          40
          41
          42

          5. 👉最后,给大家放一个Pytorch和torchvision对应的版本表:https://github.com/pytorch/pytorch/wiki/PyTorch-Versions

          至此,所有比较麻烦的环境安装问题基本解决完成了,接下来我们就可以去找数据、标数据、训数据了。



          ## 三、🌟Labelimg数据标注及数据转化

          1. 初识Labelimg

          - 用于深度网络训练的数据集做标注的方法和工具有好多,像Labelme、labelImg、yolo_mark、Vatic、Sloth等等,此处暂时只介绍其中的一种标注工具:labelImg。👁️‍🗨️[中文版本的labelImg下载](https://mianbaoduo.com/o/bread/mbd-YpqZm5lx)

          ![img](https://aitechtogether.com/wp-content/uploads/2022/05/3f601c82-5884-485f-9096-5e4d761ef477.webp)

          - [Labelimg](https://github.com/tzutalin/labelImg) 是一款开源的数据标注工具,可以标注三种格式:

          1. PascalVOC标签格式,保存为xml文件
          2. YOLO标签格式,保存为txt文件
          3. CreateML标签格式,保存为json文件images

          2. Labelimg标注

          1. 我们找一个新的位置,新建两个文件夹:存放图片:`images`,存放标签:`labels`,然后打开labelimg进行标注就可以了。

          ```bash
          .

          ├─images
          ├─ 1.jpg
          ├─ 2.jpg
          ├─ 3.jpg
          ...
          └─labels
          ├─ 1.txt
          ├─ 2.txt
          ├─ 3.txt

          # 注意如果你发现你的图片的后缀不一致,最好是修改成一样的,避免后续的麻烦!!!(可以看到我这里JPEGImages文件夹下都是.jpg结尾的)
          # bach脚本(这里的意思是将.jpg修改成.jpeg)
          >>> ren *.jpg *.jpeg

    10. 超级详细的标注过程看这里:YOLO数据集制作1(含LabelImg工具讲解)