关注下方“公众号”,获取更多开源资讯
导读
金属表面缺陷检测是工业质检里的高频刚需:汽车、航空航天、精密机械等场景中,发动机部件微划痕、管道腐蚀斑点这类异常一旦漏检,可能带来可靠性、维护成本和生产效率问题。但现实产线里的难点很直接——缺陷样本少、缺陷尺度跨度大、金属表面高反光且纹理刚性强、光照和视角经常变化。传统手工特征方法泛化差,CNN/Transformer 方法虽然进步明显,但在动态域偏移、随机噪声和氧化斑点等真实扰动下仍容易脆弱。
电子科技大学格拉斯哥学院、北京应用物理与计算数学研究所、清华大学工业工程系提出 CAT(Contrastive Augmented Transformer):用非对称双分支骨干 ADBN把“缺陷敏感学习”和“正常纹理参照”拆开,一支走 Droplet Augmentation + Swin-T + MSF-FPN,另一支走冻结的预训练 ResNet-50;再用加权多尺度对比损失把难负样本推开。模型只在 KolektorSDD2上训练,在 KSDD2 上达到 Image-level AUROC 93.80%、Pixel-level AUROC 99.54%、Per-region Overlap 95.80%、APdet 0.82、APloc 0.49;迁移到未见数据集 KSDD1、MTD、RSDD 时,仍保持较强的像素级和区域级泛化表现。
文章信息
-
标题:Contrastive Augmented Transformer with Domain-specific Enhancement for Robust Multi-scenario Metal Surface Defect Detection -
作者:Yiyao Liu, Wenxiao He, Liyuan Ren, Huan Wang -
机构:电子科技大学格拉斯哥学院、北京应用物理与计算数学研究所 、清华大学
一、金属表面缺陷检测为什么难做?
第一是样本稀缺:KSDD2 训练集 2,331 张全部为正常图像,评估集 1,005 张里正常 894 张、缺陷只有 111 张,模型必须仅靠正常样本学习"什么是异常"。第二是缺陷与背景高度相似:KSDD2 中典型缺陷包括宽 2–5 px 的划痕、长 10–50 px 的线性裂纹、面积 20–100 px² 的腐蚀痕迹,再叠加金属表面的高反射性和刚性纹理,常规 CNN 很容易把这些细微缺陷漏掉。第三是跨场景泛化困难:MTD 是 1,200 张磁瓦图像(900 正常 / 300 缺陷),含直径 < 3 px 的针孔与宽度 < 1 px 的发丝裂纹;RSDD 是 800 张高分辨率轨面图像(600 正常 / 200 缺陷),缺陷是长 50–200 px、宽 1–3 px 的细长划痕,并伴随阳光过曝、隧道欠曝等光照波动;KSDD1 则只有 500 张(380 正常 / 120 缺陷),用于验证模型对低标注数据的兼容性。
更深层的挑战在于:CutPaste、NSA 这类通用合成策略并不能反映金属表面的物理特性(氧化斑点、腐蚀凹坑),传统 ℓ₂ 重构损失对所有像素一视同仁,往往让模型过拟合到"伪缺陷",而不是学到真正具有判别力的表征。CAT 的设计思路就是用四个组件协同解决这三层问题。
二、CAT 核心架构与设计方法
CAT 由四个互相耦合的组件构成:(A) Swin-T 主干 + 冻结 ResNet-50 双分支、(B) 多尺度特征金字塔 MSF-FPN、(C) 物理先验的液滴增强、(D) 加权对比损失。
图片来源于原论文
非对称双分支主干(ADBN)是整个框架的骨架。第一条分支负责 anomaly-aware:输入图像先经过 Droplet Augmentation 注入物理上合理的合成缺陷,再用 Swin-T 提取层次化特征——其窗口多头自注意力(W-MSA)和移动窗口注意力(SW-MSA)能在窗口内做局部建模、跨窗口做长距离依赖。第二条分支专注于 defect-free reference:原图直接进入冻结的 ResNet-50,提供稳定的正常纹理基线。两条分支在共享嵌入空间中对齐特征,使模型既能感知缺陷扰动又不被合成噪声污染。
MSF-FPN在标准 FPN 的 top-down 路径之外加了一条 bottom-up 路径:高层语义经 2×2 转置卷积上采样、双线性插值后与低层特征逐元素相加;低层富含纹理细节的特征再向上传播注入深层。这种双向融合显式缓解了"高层语义压住低层细节"的问题,让微缺陷定位与大区域语义判别能同时受益。
液滴增强借鉴金属氧化斑点的物理形成过程。算法先随机选中心点 ,构造一个 边正多边形(论文取 64–128,基础半径 从 10 到图像宽度一半之间随机采样),然后用一维 Perlin 噪声把每个角度上的半径扰动为 ,其中 是连续平滑的噪声、 在 与 之间采样以控制畸变幅度,由此把规则多边形变成边界扩散、形态自然的"液滴"区域;接着在区域内以 – 的低概率稀疏注入高亮点,模拟氧化斑或反光凹坑。
训练阶段对 100% 训练图像应用,点数 25–128、半径 10–图像宽度。论文用 SSIM/PSNR 与 Color jitter、Sharpening、Motion blur、Gaussian blur、Patch swapping 等做了对比,Water-drop 的 SSIM0.436、PSNR25.27 dB均高于其余方法。
图片来源于原论文
加权对比损失在 anchor 、其增强正样本 与负样本集合 上定义。先用余弦相似度 与对应的余弦距离 ,损失函数为:
其中权重 通过对相似度做温度系数为 的 softmax 归一化:
这样越靠近 anchor 的"硬负样本"权重越大,迫使模型把注意力集中到最容易混淆的正常区域上,配合 MSF-FPN 的多尺度特征,可对不同尺度的负样本自适应分配重要性。
三、实验设置与评估指标
论文把 KSDD2 作为唯一训练来源,同时把 KSDD1、MTD、RSDD 作为完全未见数据集,专门考察跨版本、跨材料、跨场景泛化能力。KSDD2 训练集 2,331 张均为正常样本,评估集 1,005 张包含 894 张正常图像与 111 张缺陷图像;KSDD1 为 500 张(380 正常 / 120 缺陷),MTD 为 1,200 张(900 正常 / 300 缺陷),RSDD 为 800 张(600 正常 / 200 缺陷)。这种设置更贴近工业现场:缺陷样本稀缺,且生产线、材质、光照一变,模型很容易失效。
评估指标同时覆盖图像级、像素级、区域级和边界级。Image-level AUROC 衡量模型区分正常/缺陷图像的能力;Pixel-level AUROC 衡量 anomaly map 的像素级定位质量;Per-region Overlap(IoU)衡量预测缺陷区域与真值区域的空间重合; 反映检测 precision-recall 权衡; 更强调缺陷边界与定位精度。论文没有只报一个 AUROC,而是把分类、分割、检测、定位拆开评估,这也解释了为什么 CAT 在 Pixel-AUROC 很高时,仍需要关注 这类更苛刻指标。
训练实现保持相对克制:PyTorch 2.8.0 + CUDA 12.8,单张 NVIDIA A800 80GB PCIe;ResNet-50 使用预训练初始化;Adam 优化器( 、 ),学习率 0.0005,batch size 64,共 200 epoch,随机种子 54。所有图像统一 resize 到 256×256,训练阶段使用概率 0.5 的随机水平翻转,并对 100% 训练图像使用 Droplet Augmentation,点数从 25 到 128 随机采样、半径从 10 到图像宽度随机采样。这个设置让后续消融能够相对清晰地回答一个问题:性能提升到底来自 Swin-T、MSF-FPN、液滴增强和加权对比损失中的哪一部分。
图片来源于原论文
四、实验结果与对比
消融——组件单独贡献(KSDD2)。以 ViT + 标准 FPN + ℓ₂ 重构作为基线:Image-AUROC 89.70%、Pixel-AUROC 99.47%、Per-region Overlap 95.10%、 0.77、 0.37。Swin-T(A only)把 Image-AUROC 提到 92.00%(+2.30 pp),MSF-FPN(B only)91.30%(+1.60 pp),Droplet Aug.(C only)91.70%(+2.00 pp),Weighted Loss(D only)91.80%(+2.10 pp)。
消融——逐组件移除(KSDD2)。完整 CAT 在 KSDD2 上达到 Image-AUROC 93.80%、Pixel-AUROC 99.54%、Per-region Overlap 95.80%、 0.824、 0.49。移除 Swin-T 是最严重的一击:Image-AUROC 直接跌到 91.30%(ΔAUROC = 2.50%), 从 0.49 掉到 0.40。移除 Weighted Loss 让 Per-region Overlap 从 95.80% 掉到 93.90%(ΔPRO = 1.90%)、 0.45。Droplet Aug. 与 MSF-FPN 的移除影响相对温和但不可忽略。
|
|
|
|
|
||
|---|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
KSDD2 上与现有方法横向对比。CAT 在 Pixel-AUROC 上比 MMR(99.45%)高 0.39 pp、比 ReContrast(99.11%)高 0.43 pp、比 SuperSimpleNet(99.10%)高 0.44 pp、比 DFR(99.15%)高 0.39 pp;Image-AUROC 与 DFR 并列 93.80%,高于 MMR 92.29%、ReContrast 90.86%、SuperSimpleNet 87.60%。三个通用语义分割基线(PSPNet、CCNet、MobileNet)在像素级和区域级指标上明显不足——例如 PSPNet Pixel-AUROC 只有 79.16%、Per-region Overlap 仅 5.52%,证明用通用分割网络硬套小样本工业缺陷场景效果有限。
跨数据集泛化。模型只在 KSDD2 上训练,直接迁移到三个未见数据集:KSDD1 上 Image-AUROC 55.20%、Pixel-AUROC 91.86%、Per-region Overlap 62.60%、 0.0021,所有指标领先全部对比方法;MTD 上 Image-AUROC 56.00%、Pixel-AUROC 89.00%、Per-region Overlap 65.20%、 0.36、 0.032;RSDD 上 Pixel-AUROC 97.89%、Per-region Overlap 45.00%、 0.0058,同样优于所有对比方法。论文也客观指出两个失败模式:一是为满足 Transformer 的方形输入用零填充会引入纯黑大块背景,可能稀释浅层特征;二是把 anomaly map 转 binary 时使用固定阈值 0.5,跨域时高置信度区域可能因得分低于 0.5 被错误抹除,建议改用自适应阈值或基于百分位/局部对比度的动态校准。
图片来源于原论文
五、总结与思考
CAT 的价值在于把"全局建模 + 多尺度融合 + 物理先验增强 + 硬负挖掘"四个层面拼成一个仅用正常样本训练的统一框架,并在 KSDD2 上取得 Pixel-AUROC 99.54% / Image-AUROC 93.80% 的成绩,跨 KSDD1、MTD、RSDD 三个未见数据集仍稳定领先。
它对工业落地的启发是清晰的:单纯换主干或换损失,往往触不到金属缺陷检测的天花板;真正的提升来自主干、特征融合、增强策略与损失函数四个层面的协同改造。同时,Per-region Overlap、 、 等指标的差异提醒读者:分类、检测、定位精度需要分别衡量。
后续工作的两条路径相对明确——一是把零填充替换为自适应/内容感知的填充以保留空间分布,二是用基于百分位或局部对比度的可学习阈值替代固定 0.5,让模型在更广的工业场景里都能保持稳定。
Coovally 团队持续关注工业视觉检测、多模态质检与垂直场景 AI Agent 的前沿进展,在缺陷识别、异常定位、质检自动化等方向有持续研发投入。如果您有工业 AI 检测相关的算法需求或技术交流意向,欢迎联系我们和评论区留言讨论~
© THE END
转载请联系本公众号获得授权
分享、点赞与在看,至少帮我拥有一个~

