YOLOV5模型运行

1安装包

如果已经有了torch-cuda环境直接在环境下

pip install -r requirements.txt

2解决报错代码

    raise ImportError("Failed to initialize: {0}".format(exc)) from exc
ImportError: Failed to initialize: Bad git executable.
The git executable must be specified in one of the following ways:
    - be included in your $PATH
    - be set via $GIT_PYTHON_GIT_EXECUTABLE
    - explicitly set via git.refresh()

All git commands will error until this is rectified.

This initial warning can be silenced or aggravated in the future by setting the
$GIT_PYTHON_REFRESH environment variable. Use one of the following values:
    - quiet|q|silence|s|none|n|0: for no warning or exception
    - warn|w|warning|1: for a printed warning
    - error|e|raise|r|2: for a raised exception

Example:
    export GIT_PYTHON_REFRESH=quiet


Process finished with exit code 1

在导入os后加入一行,

import os
os.environ["GIT_PYTHON_REFRESH"] = "quiet"

3修改解析参数代码

        在train脚本中,def parse_opt(known=False):方法。

3.1修改weight--模型预训练权重

        根目录下yolov5-master,创建weights文件夹,如果没有的话,把预训练参数yolov5s.pt、yolov5x.pt等放入。

    parser.add_argument('--weights', type=str, default=ROOT / 'weights/yolov5x.pt', help='initial weights path')

3.2修改cfg--模型的配置文件

    parser.add_argument('--cfg', type=str, default=ROOT / 'models/yolov5x.yaml', help='model.yaml path')

        路径在yolov5-master/models下ymal文件中,设好想加载的,修改其中参数,nc你的数据中的类别数。

3.3修改data--数据的配置文件

        路径在yolov5-master/data下ymal文件中。

    parser.add_argument('--data', type=str, default=ROOT / 'data/break.yaml', help='dataset.yaml path')

我的是VOC.yaml改的,nc类别数,其他为数据集路径,名字是各样本类别。 

nc: 9
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]

train: D:\DBSY\yolov5-master\yolov5-master\data\VOC1014_9\train\images

val: D:\DBSY\yolov5-master\yolov5-master\data\VOC1014_9\val\images

test: ..\datasets\VOCdevkit/val

names:

  0: powerdirty
  1: powerdirtyl
  2: powerdirtys
  3: lightdirty
  4: lightdirtys
  5: powerbreakt
  6: powerbreakb
  7: powerbreak
  8: lightbreakx

3.4修改workers--模型工作的线程

        这个参数设置为8可能报错,看自己电脑,我一般设为0和2

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

3.5修改其他的参数设置

3.4.1 hyp

        超参数设置,这个默认就可以。

    parser.add_argument('--hyp', type=str, default=ROOT / 'data/hyps/hyp.scratch-low.yaml', help='hyperparameters path')

3.4.2 epochs

        模型训练的轮次,这个设置300-500就可以。

parser.add_argument('--epochs', type=int, default=300, help='total training epochs')

3.4.3 batch-size

        每次放入模型中几张影像,一起训练。这个参数取值受到显存限制。设置越高,模型训练的时间就会减少,同时也会影像训练的精度,不是越高越好,越低越不好。设置4、8、16都可行。

    parser.add_argument('--batch-size', type=int, default=16, help='total batch size for all GPUs, -1 for autobatch')

3.4.4 imgsz

        输入图像的大小,默认640,可以设为1280。图像越大,效果越好。

    parser.add_argument('--imgsz', '--img', '--img-size', type=int, default=640, help='train, val image size (pixels)')

3.4.5 optimizer

        优化器设置,这个默认是SGD,也可以混合着来。

    parser.add_argument('--optimizer', type=str, choices=['SGD', 'Adam', 'AdamW'], default='SGD', help='optimizer')

4 数据

        我们在数据的配置文件中填了数据路径,直接把数据复制到YOLOV5\yolov5-master\datasets

你可能感兴趣的:(对比实验模型,1024程序员节)