yolov5环境搭建和训练自己的模型
2023-3-31 00:40:41 Author: bbs.pediy.com(查看原文) 阅读量:11 收藏

yolov5环境搭建和训练自己的模型

18小时前 755

1.1.安装Anaconda

下载地址

1

https://repo.anaconda.com/archive/

1.2.安装cuda

先在cmd执行nvidia-smi,查看驱动版本,下载对应的cuda版本

下载地址

1

https://developer.nvidia.com/cuda-toolkit-archive

安装的时候选择默认路劲,安装完成在cmd执行nvcc -V,能查到cuda版本证明安装成功

1.3.下载cdDNN

下载跟cuda版本对应的cdDNN版本

1

https://developer.nvidia.com/rdp/cudnn-download

解压后,把三个文件夹直接复制到cuda的安装目录

1.4.创建虚拟环境

创建python虚拟环境

1

2

conda activate

conda create -n yolov5_test python=3.8

激活虚拟环境

1.5.配置conda源

生成.condarc文件

1

2

conda config --set show_channel_urls yes

配置源,把下面内容复制进去,保存

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

channels:

  - defaults

show_channel_urls: true

default_channels:

  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main

  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r

  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2

custom_channels:

  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

1.6.安装PyTorch

下载地址

1

https://pytorch.org/get-started/previous-versions/

选择对应cuda版本的PyTorch安装命令
图片描述

1

2

3

4

conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.6 -c pytorch -c conda-forge

测试是否安装成功
图片描述

1.7.安装yolov5依赖包

下载yolov5

1

https://github.com/ultralytics/yolov5

安装依赖包,先删掉这两行,因为PyTorch我们已经安装过了

1

2

torch>=1.7.0 

torchvision>=0.8.1

然后安装

1

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

1.8.测试自带权重文件

下载yolov5s.pt,放到根目录
图片描述

运行命令

1

2

3

4

5

python detect.py --source data\images --weights yolov5s.pt --device 0

测试结果会保存在run目录下面
图片描述

2.1.labelimg数据标注

安装lableImg

labelImg常用快捷键

  • a:上一张图片
  • d:下一章图片
  • del:删除选定的矩形框
  • Ctrl + d:复制当前标签的矩形框
  • w:创建一个矩形框
  • space:标记当前图片已标记
  • delete:删除框
  • ctrl+e:编辑标签

新建images和labels文件夹,把准备好的游戏截图放到images目录下,然后用labelimg开始标注(怎么标注,自己百度),总共标注5个类(hero,door,moster,money,boss)。

2.2.data目录下面创建xxx_data.yaml

主要修改train的图片位置、类的个数和类的名字

1

2

3

4

5

6

7

8

9

10

11

12

13

14

path: ../datasets/coco128

train: 路径改自己的

val:  路径改自己的

test:

nc: 5

names:

  0: hero

  1: door

  2: moster

  3: money

  4: boss

2.3.model目录下面创建xxx_model.yaml

只要修改nc的数量就可以

2.4.修改train.py的参数

cache用disk或者ram都可以
如果内存不够,把work数再改小点

1

2

3

parser.add_argument('--cache', type=str, nargs='?', const='disk', help='image --cache ram/disk')

parser.add_argument('--workers', type=int, default=2, help='max dataloader workers (per RANK in DDP mode)')

2.5.开始train

1

python train.py --data xxx_data.yaml --cfg xxx_model.yaml --weights yolov5s.pt -epoch 300 --batch-size 1 --device 0

2.6.开始detect

train完成后会在run/exp1/weights目录下会生产一个best.pt文件,用它来detect

1

python detect.py --weights runs/train/exp1/weights/best.pt --source xxx/images/

2.7.最终效果演示

经过yolov5训练后,最终识别准备率能达到0.9以上。

图片描述
图片描述
图片描述

议题征集启动!看雪·第七届安全开发者峰会

最后于 18小时前 被zhang_derek编辑 ,原因:


文章来源: https://bbs.pediy.com/thread-276692.htm
如有侵权请联系:admin#unsafe.sh