制造业质检中的异常样本较少,新出现的缺陷也很难提前收集。SelfAOI 面向少样本和开放集场景,统一接收图片、文件夹、视频和摄像头输入,支持异常检测、缺陷定位、已知类别识别、未知缺陷拒识,以及经人工复核的增量学习。
# 我的职责与技术实现
- 异常检测与模型选型。 负责整体技术方案和核心功能开发,串联数据处理、模型训练、推理服务和 Web 界面。使用正常样本构建 PatchCore 特征记忆库,完成 EfficientAD 基线对比和阈值校准,最终选用 PatchCore。
- 少样本分类与未知拒识。 建立缺陷原型库,根据原型距离和阈值识别已知缺陷或拒识未知缺陷,并支持用单个样本扩展新类别。
- 高分辨率和多输入推理。 为 2500×2500 图片设计紧凑推理路径,将热图和缺陷框映射回原图。让单图、批量图片、视频和摄像头共用模型、阈值和结果格式。视频链路支持解码、逐帧推理、任务停止、时序平滑、跨帧事件聚合和结构化导出。
- 反馈审核与模型发布。 将人工反馈纳入「提交、复核、评估、发布」流程。上线前执行回归检查,发布时原子切换模型,保留快照和审计记录,以便回滚。
- 评测与交付。 完成公开数据集评测、高清推理优化、模型和源码打包,以及参赛技术材料整理。交付的 Web 界面支持热图、缺陷框、跨帧事件展示和运行监控。
# 评测结果
| 评测场景 | 结果 |
|---|---|
| MVTec AD bottle 固定测试集(53 张) | 图像 AUROC 1.000,图像 F1 0.985,像素 AUROC 0.973。缺陷样本零漏检,正常样本误报 1 次。 |
| 少样本实验(5 个固定随机种子) | 1-shot 已知类别平均识别准确率 70.77%,未知异常召回率 87.00%。 |
| 单样本增量学习实验 | 新类别召回率从 0 提升至 61.05%,旧类别召回率和正常样本误报率未退化。 |
| 高清快速路径(2500×2500 JPEG,RTX 3050 Laptop 4 GB) | 进程内端到端延迟 P95 为 158.03 ms,达到 200 ms 性能目标。 |
| 正式 PatchCore 检查点 | 约 0.75 MiB。 |
# 技术栈
- 模型与视觉处理: PyTorch、Torchvision、Timm、OpenCV、NumPy、scikit-image。
- 算法: PatchCore、EfficientAD、少样本原型学习、开放集识别、时序平滑。
- 服务与界面: Python、FastAPI、Uvicorn、RESTful API、JavaScript、HTML、CSS。
- 部署与工程保障: ONNX、ONNX Runtime GPU、CUDA 12.1、Pytest、配置版本化、SHA-256 模型包校验、发布审计与回滚。