-
-
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