yolo源码注释1——文件结构

代码基于yolov5 v6.0

目录:

  • yolo源码注释1——文件结构
  • yolo源码注释2——数据集配置文件
  • yolo源码注释3——模型配置文件
  • yolo源码注释4——yolo-py
  • datasets # 用于存放数据集的默认文件夹
  • yolov5
    • data # 模型训练的超参数配置文件以及数据集配置文件
      • hyps # 存放超参数配置文件(yaml格式)
        • hyp.scratch-high.yaml:适用于较大的模型结构,如 yolol
        • hyp.scratch-low.yaml:适用于较小的模型结构,如 yolos
        • hyp.scratch-med.yaml:适用于中等模型结构,如 yolom
      • images # 存放了官方提供的两张测试图片:bus.jpg 和 zidane.jpg
      • scripts # 用于下载数据集以及权重文件的shell脚本
        • download_weight.sh:下载权重文件
        • get_coco.sh:下载 coco 数据集
        • get_coco128.sh:下载 coco128 数据集
      • XXX.yaml:各种数据集的配置文件,如 coco.yaml 是 coco 数据集的配置文件
    • models # 搭建模型的相关配置文件及代码
      • hub # 存放各版本网络模型的配置文件
        • anchors.yaml:coco 数据集的默认 anchor
        • yolovX-XXX.yaml:模型配置文件
      • common.py:用于搭建网络的模块,如Conv、DWConv、TransformerLayer等
      • experimental.py:实验性质的代码,其中一些模块是近几年提出来的,如CrossConv、Sum等,yolov5的作者尝试将其融合进yolov5中
      • tf.py:TensorFlow版本的yolov5代码
      • yolo.py:主要用于搭建yolov5的网络模型
      • yolov5X.yaml:yolov5的模型配置文件
    • runs #运行过程中产生的文件夹,每运行一次都会生成一个名为 expN 的文件夹(N代表运行次数)
      • detect # 运行 detect.py 产生的图片,图片中标注出识别到的物体及其概率
      • train # 运行 train.py 产生的文件
        • weights # 权重(包括训练出的最好权重 best.pt 以及上次训练的权重 last.pt)
        • confusion_matrix.png:混淆矩阵
        • F1_curve.png:F1 score 与置信度之间的关系
        • hyp.yaml:超参数记录文件
        • labels.jpg:包含四张子图,从左上到右下分别是每个类别的个数、标注的 bbox、标注的bbox的中心点坐标热图、bbox的宽高热图
        • labels_correlogram.jpg:预测框的宽高以及中心坐标热图
        • opt.yaml:模型记录文件
        • P_curve.png:准确率与置信度之间的关系
        • PR_curve.png:精准率与召回率之间的关系
        • R_curve.png:精准率与置信度之间的关系
        • results.csv:模型训练过程中的指标,如损失函数、准确率等
        • results.png:训练集以及验证集在验证过程中的损失函数、mAP等指标的曲线
        • train_bathN.jpg:训练集图像(带bbox)
        • val_batchN_labels.jpg:验证集图像(带bbox)
        • val_batchN_pred.jpg:验证集图像(带预测框)
    • utils # 通用的工具类函数
      • aws:恢复中断训练相关
      • docker:docker配置相关
      • flash_rest_api:flask接口相关
      • google_app_engine:google app相关
      • loggers:日志打印(包括TensorBoard)
      • activations.py:激活函数
      • augmentations.py:图像增强
      • autoanchor.py:自动生成 anchor
      • autobatch.py:自动生成 batch size
      • benchmarks.py:评估模型的推理速度以及分析内存占用
      • callbacks.py:主要是 logger 的回调函数
      • datasets.py:配置 dataloader 和 datasets
      • downloads.py:下载数据集
      • general.py:通用函数
      • loss.py:损失函数
      • metrics.py:模型验证指标
      • plots.py:绘制损失函数等的曲线、bbox等
      • torch_utils.py:其他一些通用函数
    • detect.py:将训练好的模型用于图片、视频等进行目标检测
    • export.py:导出模型
    • hubconf.py:pytorch hub 相关,用于定义和管理模型的预训练权重和配置信息
    • train.py:训练模型
    • val.py:验证模型,评估模型性能

你可能感兴趣的:(计算机视觉,目标检测,YOLO)