从零构建到边缘部署:香橙派AIpro上的YOLOv5全流程实战指南
当你第一次在香橙派AIpro上运行YOLOv5的官方Demo时,那种看到识别框准确框出目标的兴奋感,很快会被一个更强烈的念头取代:"我能不能用自己的数据训练模型,解决实际问题?"这正是边缘AI开发的魅力所在——将通用算法转化为专属解决方案。本文将带你跨越从Demo玩家到实战开发者的关键一步。
1. 训练环境准备与自定义数据集制作
在香橙派上部署模型前,我们需要在PC端完成模型训练。不同于直接使用预训练权重,自定义训练能让我们针对特定场景获得更好的识别效果。
1.1 搭建PyTorch训练环境
推荐使用conda创建隔离的Python环境,避免依赖冲突:
bash复制conda create -n yolov5_train python=3.8
conda activate yolov5_train
pip install torch==1.10.0+cu113 torchvision==0.11.1+cu113 -f https://download.pytorch.org/whl/torch_stable.html
对于标注工具,LabelImg仍然是目前最易用的选择之一。安装完成后,按以下目录结构组织数据:
code复制custom_dataset/
├── images/
│ ├── train/
│ └── val/
└── labels/
├── train/
└── val/
表:数据集标注文件示例(YOLO格式)
| 内容 | 说明 |
|---|---|
0 0.45 0.32 0.12 0.23 |
类别ID + 归一化后的中心坐标和宽高 |
1 0.67 0.19 0.08 0.15 |
多个物体则多行表示 |
1.2 数据增强策略调优
修改data/hyps/hyp.scratch-low.yaml中的参数可以显著提升小数据集表现:
yaml复制hsv_h: 0.015 # 色相增强幅度
hsv_s: 0.7 # 饱和度增强幅度
hsv_v: 0.4 # 明度增强幅度
degrees: 5.0 # 旋转角度范围
translate
