littlebot
Published on 2025-04-09 / 0 Visits
0

【源码】基于Python和YoloV5sV5.0的安全帽佩戴检测系统

项目简介

本项目借助YoloV5s-V5.0版本达成工地上安全帽佩戴情况的检测。该项目不仅能够部署在Jetson Nano等边缘硬件平台,也可在Windows和Linux系统中运行。同时,通过运用TensorRT加速技术,实现模型在边缘硬件上更快且实时地处理数据。

项目的主要特性和功能

  1. 轻量级模型:采用YoloV5s-V5.0网络,此为YoloV5中模型最小的版本,推理速度快且准确性高。
  2. 加速处理:集成TensorRT加速,提高边缘硬件平台的数据处理效率。
  3. 多环境适配:支持在Jetson Nano、Windows、Linux等不同环境下运行。
  4. 多格式数据集支持:支持安全帽VOC格式和Yolo格式数据集,两种格式可相互转换。
  5. 训练灵活:既可以使用已有数据集训练,也能自制数据集进行训练。

安装使用步骤

环境配置与项目复制

配置好对应环境后,复制项目到本地: $ cd HelmetDetection

TensorRT加速下YoloV5s推理

``` $ cd helmet_yolov5 $ python detect.py --source 0 # webcam file.jpg # image file.mp4 # video path/ # directory path/*.jpg # glob rtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa # rtsp stream http://112.50.243.8/PLTV/88888888/224/3221225900/1.m3u8 # http stream

$ python detect.py --source test.jpg --weights helmet.pt ```

模型训练步骤

  1. 准备数据集和权重文件:准备好安全帽的yolo格式数据集(百度网盘链接:https://pan.baidu.com/s/1CceCFIYzpBjjPcCe4_dr7g ,提取码:gyre)和官方YoloV5s权重文件(百度网盘链接:https://pan.baidu.com/s/1PPEDV2UZsPLpugEAEW2wGg ,提取码:6pfy)。
  2. (可选)制作自己的数据集:收集图像并使用标注工具标注生成xml文件,文件格式参照VOC数据集格式,Main文件的txt文件可通过../utils/generate_txt.py生成。
  3. (可选)转换数据集格式:使用../utils/gen_yolo_format.py将VOC格式数据集转换为yolo格式数据集。
  4. 复制YoloV5官方代码。
  5. 准备环境: $ cd yolov5 $ pip install -r requirements.txt
  6. 创建配置文件:修改data/custom_data.yaml文件,设置数据集路径、分类数量和类别名称。
  7. 选择训练模型:在models文件夹中选择yoloV5s训练并修改配置存放为yolov5s.yaml,仅需修改类别数量。
  8. 执行训练文件: $ python train.py --epochs 200 --data custom_data.yaml --cfg yolov5s.yaml --weights yolov5s.pt --device 0 训练好的权重在生成的runs文件夹里的weights中的best.pt。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】