YOLOv5口罩检测

数据集准备

在这里插入图片描述

YOLOv5口罩检测_第1张图片
在项目代码平级路径下创建数据集路径,包括.yaml的数据集配置文件
训练集,验证集,测试集路径如下:
在这里插入图片描述
包括图像和标注,图像和标注对应文件名相同
标注为.txt的yolo格式如下:
类别 x y w h (坐标值为归一化后的相对值)
YOLOv5口罩检测_第2张图片
.yaml的数据集配置文件如下:
YOLOv5口罩检测_第3张图片

训练模型

环境:python3.6 + torch1.6.0 + cu101 + CUDA10.0 + cudnn7.6.0
在train.py中指定配置参数
在这里插入图片描述

  • weights指定初始化的权重参数,可以使用yolov5s在coco上的预训练权重,这里不指定,随机初始化
  • cfg指定网络配置,这里使用yolov5s
  • data指定数据集配置文件的路径
  • epochs指定训练轮数
  • batch-size指定批量大小
  • 运行train.py开始训练
    YOLOv5口罩检测_第4张图片
    一个半小时训练结束
    预测框损失=0.03735
    置信度损失=0.05017
    分类损失=0.002577
    总损失=0.09009

训练日志

  • 训练日志保存在runs/exp0/路径下
    YOLOv5口罩检测_第5张图片
  • weights路径下保存最后一轮的训练结果参数和验证结果最好的参数
    在这里插入图片描述
  • labels.png可视化数据集中各个类别目标的样本数量;目标的中心(x,y)的分布,颜色越深越密集;目标的宽高;
  • precision-recall_curve.png可视化P-R曲线
  • results.png可视化训练集和验证集上的损失,验证集上的准确率,召回率,mAP等
  • results.txt保存训练过程中每个轮次的损失,评估指标值等
  • test_batch0可视化验证集的第一个批次的真实标注和预测结果
  • train_batch可视化训练集的前几个批次的预测结果

模型测试

在detect.py中指定以下参数
在这里插入图片描述

  • weights指定训练好的权重参数,这里使用上步训练好的最佳参数
  • source指定预测图像的路径
  • output指定预测结果保存路径
  • conf-thres指定置信度阈值
    运行detect.py即可预测
    其中一张测试结果如下:
    YOLOv5口罩检测_第6张图片
    整个项目代码:https://download.csdn.net/download/cyj5201314/19374462

你可能感兴趣的:(目标检测,深度学习,计算机视觉,pytorch,目标检测,口罩检测)