Canonical 训练集
1,287 张图 · 2,959 个标注框 · 199 张负样本。
模型工程 · 实验研究
单类别检测器工程研究,记录训练阶段、ONNX 网络计时与正式数值验证。
原始 Epoch-20 · 283 张 Canonical-Val 历史结果。

01 / 数据与范围
1,287 张图 · 2,959 个标注框 · 199 张负样本。
283 张图 · 618 个标注框 · 40 张负样本。
已保存的两阶段评估都覆盖相同的 283 条样本身份。跨阶段训练数据字节一致性:待验证。独立留出测试:待完成。
02 / 模型来源
20 个 Epoch · 6,440 次 optimizer 更新 · FP32 · 640×640 · batch 4。
Canonical-Val:0.7510 mAP50 / 0.4090 mAP50:95。
从原始 EMA 对齐模型状态初始化,并以新的 optimizer 与 scheduler 开展独立微调。
Canonical-Val:Epoch 15 为 0.748 / 0.417;最终 Epoch 20 为 0.740 / 0.417。微调结果按 Canonical-Val 单独报告。
03 / ONNX 与网络计时
原始 Epoch-20 模型导出为静态 FP32 图,输入 [1,3,640,640],六个 raw heads 为 cls_p3/p4/p5 与 bbox_p3/p4/p5。ONNX 结构检查通过。预处理、解码、过滤、坐标还原与 NMS 位于图外;raw-head 与最终检测一致性结果见下方正式验证。
| Profile | 设备与运行时 | Mean | P50 | P95 |
|---|---|---|---|---|
| CPU B2 · 8 / 1 threads | Ryzen 7 5800H · ORT 1.20.1 CPU EP | 71.190 ms | 68.289 ms | 110.230 ms |
| CUDA B3-R1 · 1 / 1 threads | RTX 3070 Laptop · ORT 1.20.2 CUDA EP | 6.212525 ms | 6.093550 ms | 6.881800 ms |
每组有 10 次 warmup、96 次测量,输入为 Canonical-Val 前 32 个索引。GPU 计时包含主机/设备传输和输出返回。CPU 与 CUDA 使用不同 provider 和 ONNX Runtime 版本,作为独立设备 profile 展示。该 session.run() 计时聚焦模型网络执行;完整视频耗时还包括图像 I/O、预处理、后处理、OCR、视频处理和应用层流程。
04 / 数值验证
Formal D2:FAILED,覆盖完整 283/283 张图像,冻结验收结果:FAILED。
| 检查 | 记录结果 | 适用边界 |
|---|---|---|
| 原模型 C1 输入一致性 | PASS · 3 张图 | 3 张图像的输入一致性检查通过。 |
| 原模型 C2 raw-head 一致性 | FAILED · 18 项比较中 16 项通过 | 3 个元素超出冻结的 1e-4 容差,具体原因未知。 |
| Formal C3 decode / pre-NMS | PASS · 283/283 | C3 阶段记录 pre-NMS 解码结果。 |
| Formal C4 最终检测 | FAILED · 281/283 | 两项对阈值敏感的 native NMS 决策失败。 |
| Formal D2 总体 | FAILED · 覆盖 283/283 | 最终结果:FAILED。 |
| fine-tuned 候选 raw heads | FAILED · 18 个张量中 9 个失败 | 固定 3 张图像检查中,96 个元素超出 rtol=atol=1e-4。 |
05 / 限制