YOLO 模型从训练到边缘部署的流程梳理
YOLO 模型从训练到边缘部署的流程梳理
这是一份通用的流程梳理,用来在动手之前想清楚每一步的输入输出和验证方式,避免"训练完直接用"。
流程总览
- 数据集准备:明确标注规范(框的边界、类别定义),按场景划分训练集与验证集
- 模型训练:选定框架与预训练权重,跟踪损失与 mAP 曲线,先确认过拟合/欠拟合的方向
- 导出中间格式:通常先导出 ONNX,作为跨平台部署的公共中间层
- 边缘转换:按目标硬件选择 RKNN / TensorRT / NCNN 等,注意算子支持与量化策略
- 推理封装:预处理、推理、后处理(NMS)三步要成对校准,保证 PC 端与设备端结果一致
每一步都需要一个验证手段
- 数据:抽样可视化,确认标注框与坐标顺序(xywh / xyxy)正确
- 训练:验证集指标 + 少量图片的实际推理可视化
- 导出:ONNX 用 onnxruntime 跑一遍,与训练框架输出对比
- 转换:设备端跑固定测试图,与 PC 端结果逐框对比
- 封装:把整条链路的效果录屏存档,便于回归对比
容易踩的坑
- 预处理不一致:归一化方式、通道顺序(RGB / BGR)、letterbox 参数
- 量化后精度下降:先定位是哪个阶段掉点,再决定是否混精度
- 后处理阈值不同:置信度阈值与 NMS 阈值要按实际场景调,而不是照抄默认值
部署能不能成功,往往取决于每一步"有没有对齐验证",而不是模型本身多新。
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 半截的诗
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果