safesight-edge/train
2026-03-13 11:37:35 +08:00
..
samples 增加训练模型需要的目录和脚本 2026-03-13 11:05:39 +08:00
01_download_dataset.py 修改train脚本 2026-03-13 11:37:35 +08:00
02_train.bat 修改train脚本 2026-03-13 11:37:35 +08:00
03_export_onnx.bat 修改train脚本 2026-03-13 11:37:35 +08:00
04_convert_rknn.py 增加训练模型需要的目录和脚本 2026-03-13 11:05:39 +08:00
data.yaml.template 修改train脚本 2026-03-13 11:37:35 +08:00
README.md 修改train脚本 2026-03-13 11:37:35 +08:00

鞋子检测模型训练指南

方案640x640 单模型部署时用2窗口

训练阶段

  • 输入640x640 完整图片
  • 模型YOLOv8s
  • 输出640x640 模型文件

部署阶段pipeline配置

  • 原图 1920x1080
  • 分成 2 个 960x1080 窗口
  • 每个窗口 resize 到 640x640 送入模型
  • 合并检测结果

目录结构

train/
├── README.md                 # 本文件
├── 01_download_dataset.py    # 下载 Construction-PPE 数据集
├── 02_train.bat              # Windows 一键训练脚本
├── 03_export_onnx.bat        # 导出 ONNX 脚本
├── 04_convert_rknn.py        # 转换为 RKNN 脚本
├── data.yaml.template        # 数据集配置文件
└── samples/                  # 示例图片
    ├── calibration/          
    ├── test_images/          
    └── README.md

快速开始

1. 下载数据集

cd train
python 01_download_dataset.py --source ultralytics

或手动下载:

wget https://github.com/ultralytics/assets/releases/download/v0.0.0/construction-ppe.zip
unzip construction-ppe.zip -d datasets/construction-ppe/

2. 准备配置

cp data.yaml.template datasets/construction-ppe/data.yaml

3. 训练640x640

02_train.bat

或手动:

yolo detect train \
    data=datasets/construction-ppe/data.yaml \
    model=yolov8s.pt \
    epochs=150 \
    imgsz=640 \
    batch=16 \
    device=0

训练参数

  • 模型YOLOv8s速度和精度平衡
  • 输入640x640
  • 预计时间30-60分钟

4. 导出 ONNX

03_export_onnx.bat

5. 转换为 RKNN

在 Ubuntu PC 上:

python 04_convert_rknn.py runs/detect/train/weights/best.onnx -o shoe_detector_640.rknn -t rk3588

6. 部署2窗口配置

复制到 RK3588

scp shoe_detector_640.rknn orangepi@<rk3588_ip>:/home/orangepi/apps/OrangePi3588Media/models/

Pipeline 配置部署阶段用2窗口

{
  "id": "pre_shoe",
  "type": "preprocess",
  "windows": [
    {"x": 0, "y": 0, "w": 960, "h": 1080},
    {"x": 960, "y": 0, "w": 960, "h": 1080}
  ],
  "dst_w": 640,
  "dst_h": 640
}

类别说明Construction-PPE

使用原始11类

  • 0: helmet
  • 1: gloves
  • 2: vest
  • 3: boots ← 主要关注
  • 4: goggles
  • 5: none
  • 6: Person
  • 7: no_helmet
  • 8: no_goggle
  • 9: no_gloves
  • 10: no_boots

相关链接