feat(models): 纯卷积缺陷分类定位模型

面向实时设备部署,全程只用 convolution,不含 attention / transformer。

- backbones: 自研 tiny_conv(深度可分离,默认)与 torchvision 封装(resnet/mobilenet/shufflenet)
- necks: nearest 上采样 + 3x3 卷积,把特征恢复到 stride 4,兼顾小缺陷定位与速度
- heads: anchor-free 中心点定位头(heatmap + wh + offset)与图像级分类头;
  分类头输出维度随 label_mode 切换(多类多热 / 单类互斥含背景位)
- postprocess: 3x3 max-pool 峰值抑制替代 NMS 循环,无循环、可导出 TensorRT / OpenVINO

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Shaun Zhou
2026-09-02 17:54:55 +08:00
co-authored by Claude Opus 5
parent f4eff8beee
commit 3a36aad6c3
14 changed files with 504 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
"""模型骨架:backbone -> neck -> heads。
约束:部署在实时设备上,只使用基于 convolution 的结构(不含 attention / transformer)。
"""
from models import backbones, heads, necks # noqa: F401 触发注册
from models.build import build_model
from models.defect_net import DefectNet
from models.postprocess import decode_heatmap
from models.registry import BACKBONES, HEADS, MODELS, NECKS
__all__ = [
"build_model",
"DefectNet",
"decode_heatmap",
"BACKBONES",
"NECKS",
"HEADS",
"MODELS",
]