yolov5项目结构详解

275 阅读1分钟

image.png

data

存放一些超参数的配置文件,如.yaml文件。yolov5有大约30个超参数用于各种训练设置,更好的初始猜测会产生更好的最终结果。

image.png

  • hyps文件夹:存放超参数配置文件
    • hyps.scratch-high.yaml:数据增强高,适用于大型型号,如v3、v3-spp、v5l、v5x
    • hyps.scratch-low.yaml:数据增强低,适用于较小型型号,如v5n、v5s
    • hyps.scratch-med.yaml:数据增强中,适用于中型型号,如v5m
  • images文件夹:存放预测文件
  • scripts文件夹:存放下载数据集和权重文件的脚本
  • .yaml文件:每个.yaml文件对应一种标准数据集格式的数据。

datasets

用来存放用户自己的数据集

models

存放一些主要的网络构建的配置文件和参数,其中包含了该项目的四个不同版本,s、m、l、x。

如果要训练自己的数据集的话,就需要修改里面对应的yaml文件,从而训练自己的模型。

image.png

  • _init_.py:空的
  • common.py:一些网络定义的通用模块,包括autopad、Conv、DWConv、TransformerLayer等
  • experimental.py:实验性质的代码,包括MixConv2d、跨层权重Sum等
  • tf.py:tensorflow版的yolov5代码
  • yolo.py:yolo的特定模块,包括BaseModel、DetectionModel、ClassificationModel、parse_model等
  • .yaml文件:经典模型的配置文件

runs

运行时的输出文件,每一次运行就会生成一个exp文件夹。 image.png

image.png

utils

根目录下的py文件