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

代码基于yolov5 v6.0

目录:

  • 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:验证模型,评估模型性能
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO系列是基于深度学习的端到端实时目标检测方法。 PyTorch版的YOLOv5轻量而高性能,更加灵活和易用,当前非常流行。 本课程将手把手地教大家使用labelImg标注和使用YOLOv5训练自己的数据集。课程实战分为两个项目:单目标检测(足球目标检测)和多目标检测(足球和梅西同时检测)。  本课程的YOLOv5使用ultralytics/yolov5,在Windows和Ubuntu系统上分别做项目演示。包括:安装YOLOv5、标注自己的数据集、准备自己的数据集(自动划分训练集和验证集)、修改配置文件、使用wandb训练可视化工具、训练自己的数据集、测试训练出的网络模型和性能统计。 除本课程《YOLOv5实战训练自己的数据集(Windows和Ubuntu演示)》外,本人推出了有关YOLOv5目标检测的系列课程。请持续关注该系列的其它视频课程,包括:《YOLOv5(PyTorch)目标检测:原理与码解析》课程链接:https://edu.csdn.net/course/detail/31428《YOLOv5目标检测实战:Flask Web部署》课程链接:https://edu.csdn.net/course/detail/31087《YOLOv5(PyTorch)目标检测实战:TensorRT加速部署》课程链接:https://edu.csdn.net/course/detail/32303《YOLOv5目标检测实战:Jetson Nano部署》课程链接:https://edu.csdn.net/course/detail/32451《YOLOv5+DeepSORT多目标跟踪与计数精讲》课程链接:https://edu.csdn.net/course/detail/32669《YOLOv5实战口罩佩戴检测》课程链接:https://edu.csdn.net/course/detail/32744《YOLOv5实战中国交通标志识别》课程链接:https://edu.csdn.net/course/detail/35209 《YOLOv5实战垃圾分类目标检测》课程链接:https://edu.csdn.net/course/detail/35284  

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值