当前位置: 首页 > news >正文

工业视觉异常检测:PatchCore与EfficientAD原理、实战与调优

工业视觉异常检测:PatchCore与EfficientAD原理、实战与调优

一、为什么异常检测是工业视觉的「最后一公里」

去年参与一个 PCB 检测项目时,我被一个现实打脸:缺陷样本根本不够。产线上每天流转数十万块板子,但真正的缺陷品一个月不到 200 块——其中 80% 还集中在 3 种缺陷类型上,剩下 20 种缺陷类型合起来不到 40 个样本。传统的监督学习(分类 / 目标检测)在这个数据分布面前直接崩溃:类别极度不均衡,稀有缺陷甚至只有 1-2 张训练图。

更棘手的是「开放集问题」——产线随时可能出现训练集中从未见过的缺陷形态。你永远不知道明天操作工会不会搞出一种新的焊接不良。这种情况在纺织、玻璃、金属表面、医药包装等行业普遍存在。

这就是**异常检测(Anomaly Detection)**的用武之地。它的核心思路很巧妙:只学「正常长什么样」,凡是偏离正常的都是异常。不需要缺陷样本,不需要标注,天然适配工业场景。

近年工业异常检测的 SOTA 方法可以归为几大范式:

范式代表方法核心思想推理速度
特征嵌入 + 记忆库PatchCore, PaDiM提取正常特征 → 构建 memory bank → 测试时查最近邻⭐⭐
教师-学生网络EfficientAD, STFPM学生网络只学「正常」的输出,异常输入会产生大的 feature discrepancy⭐⭐⭐
重构模型DRAEM, AutoEncoder只重构正常图像,异常区域重构误差大⭐⭐
归一化流FastFlow, CFlow将正常特征分布建模为高斯,异常偏离该分布⭐⭐⭐

本文聚焦工业界落地效果最好的两种方法——PatchCore(检测精度天花板)和EfficientAD(速度与精度的完美折中),从原理到代码到调优,一杆子捅到底。

二、PatchCore:特征记忆库 + 核心集采样

2.1 直觉理解

PatchCore 的核心思想朴素但有效:

用预训练 CNN 提取正常图像的特征 → 存到记忆库 → 测试时,对测试图像的每个 patch 特征,在记忆库里找最近的正常 patch → 距离越大,越可能是异常。

可以类比为:「我有一本正常产品的相册,现在来了一个新样品,我把它拆成小区域逐一比对——哪个区域在相册里找不到类似的,哪个区域就有问题。」

2.2 核心原理拆解

Step 1:特征提取

使用在 ImageNet 上预训练的 WideResNet-50 作为 backbone,取第 2 层和第 3 层的输出。为什么不用最后一层?因为浅层特征保留更多空间细节,对定位小缺陷至关重要。

对于一张输入图像X ∈ R H × W × 3 X \in \mathbb{R}^{H \times W \times 3}XRH×W×3,提取到的特征图:

ϕ i j = f θ ( X ) ∈ R H ′ × W ′ × C \phi_{ij} = f_\theta(X) \in \mathbb{R}^{H' \times W' \times C}ϕij=fθ(X)RH×W×C

其中C CC是通道数(WideResNet-50 的 layer2+layer3 拼接后通常为 1024 或 1536 维)。

Step 2:构建记忆库

把所有N NN张正常图像的 patch 特征拉平成N × H ′ × W ′ N \times H' \times W'N×H×WC CC维向量,得到记忆库M ∈ R ∣ M ∣ × C \mathcal{M} \in \mathbb{R}^{|\mathcal{M}| \times C}MRM×C

但如果正常图像很多(几百张),记忆库会膨胀到几百万个向量,推理时做最近邻搜索会非常慢。PatchCore 的关键创新在这里:核心集采样(Coreset Subsampling)

Step 3:核心集采样

目标:从M \mathcal{M}M中选出一个子集M c \mathcal{M}_cMc,使得M c \mathcal{M}_cMc能「代表」整个记忆库,同时大幅缩小尺寸。

PatchCore 采用greedy coreset via minimax facility location

  1. 随机选一个种子点放入M c \mathcal{M}_cMc
  2. 迭代:每次选M \mathcal{M}M中到M c \mathcal{M}_cMc最近距离最大的那个点加入M c \mathcal{M}_cMc
  3. 重复直到达到目标采样率(默认 10%,即∣ M c ∣ = 0.1 × ∣ M ∣ |\mathcal{M}_c| = 0.1 \times |\mathcal{M}|Mc=
http://www.zskr.cn/news/1454863.html

相关文章:

  • Windows安卓应用安装终极指南:告别模拟器,5分钟玩转APK安装器
  • 输入框自动记住常用词,点开就能搜历史、模糊匹配快速选
  • Circuit Playground 制作电子彩虹云朵帽:STEAM 亲子编程与手工指南
  • 计算机毕业设计之“暖医伴老行”老年智能医护小程序的设计与开发
  • Obsidian Border主题深度定制:技术架构解析与高效工作流优化
  • Diff Checker:3分钟掌握高效文本差异对比的终极解决方案
  • Douyin-Downloader:抖音内容批量下载的技术解决方案
  • 智慧职教刷课脚本:三分钟告别重复学习,解放你的宝贵时间
  • Relique:优质卡牌作为 RWA 资产上链的意义
  • 传统出汗越多排毒越好,编写程序根据心率,体温,出汗量,判断出汗类型,区分正常出汗与体虚盗汗。
  • 2026黔西州本地黄金回收铂金白银回收哪家强?TOP5 正规门店榜单 + 联系方式 - 中安检金银铂钻回收
  • Langflow完整使用指南:5个技巧快速掌握可视化AI工作流构建
  • 低烟无卤电缆品牌实力观察:多维视角下的行业代表性企业分析 - 速递信息
  • 控制器可靠性简介
  • 3个Windows Terminal启动目录配置技巧,让开发效率提升300%
  • 从数据孤岛到智能闭环,AI工具与会员系统打通的4层技术栈,92%企业卡在第2层
  • 从普刊到 SCI 全链路撰稿:Paperxie 期刊论文分层创作方案,打破科研发稿前期写作瓶颈
  • Elasticsearch Reindex 现已支持跨节点自动迁移:无需人工干预,不会丢失进度
  • Vue+Flask实现的火焰检测网页系统(含YOLOv5模型、前后端源码与部署脚本)
  • 2026深圳装修公司实力推荐榜|本土履约、施工透明、售后靠谱装企盘点 - 商业新知
  • Arduino继电器控制220V灯串:从安全电路到音乐灯光秀的完整指南
  • 2026实木家具直销选购白皮书:这5家口碑厂家值得收藏 - kio888
  • 2026年6月乐山贵金属回收权威门店排行 TOP5 黄金 + 铂金 + 白银回收 附电话地址 - 中业金奢再生回收中心
  • 分布式高可用抢票系统架构:如何构建可观测的Rust自动化购票平台
  • 基于Arduino与超声波传感器的自动旗帜挥舞装置:从原理到实践
  • Beyond Compare 5激活密钥生成器:3种方法实现永久授权
  • 期末结课论文破局思路:借助 Paperxie 课程论文专项功能,理顺本科结课全流程写作逻辑
  • 别再只用Label了!CocosCreator EditBox组件打造动态聊天框与道具命名功能
  • 从FXML到可执行文件:手把手教你用SceneBuilder设计界面并用jpackage打包成Windows exe
  • 【官方渠道变更公示】2026年6月昆明万科公园城市售楼电话公示 - 资讯快报