无监督/框架/小样本,工业异常检测最新思路!

 异常检测

Anomaly Detection

工业异常检测在业界和学界都一直是热门,近期其更是迎来了全新突破:与大模型相结合!让异常检测变得更快更准更简单!比如模型AnomalyGPT,它克服了以往的局限,能够让大模型充分理解工业场景图像。工业异常检测取得了许多显著的进展,出现了许多值得一看的突破性成果。沃的顶会简单整理了各大顶会(CVPR、ICLR等)【异常检测】相关论文,共8篇,希望能给想发顶会的同学提供一些思路。

无监督

1、一个简单的图像异常检测和定位网络

论文题目:CVPR2023 | SimpleNet: A Simple Network for Image Anomaly Detection and Localization

内容简介:论文提出了一个简单且应用友好的网络(称为SimpleNet)来检测和定位异常。SimpleNet由四个部分组成:(1)生成局部特征的预训练特征提取器,(2)将局部特征转移到目标域的浅特征适配器,(3)通过向正常特征添加高斯噪声来伪造异常特征的简单异常特征生成器,以及(4)区分异常特征和正常特征的二进制异常鉴别器。在推理过程中,异常特征生成器将被丢弃。论文的方法基于三个直觉。首先,将预训练的特征转换为面向目标的特征有助于避免域偏差。其次,在特征空间中生成合成异常更为有效,因为缺陷在图像空间中可能没有太多的共性。第三,简单的鉴别器效率高、实用

### 使用 WideResNet50 实现工业场景下异常检测 WideResNet50 是一种基于残差网络架构的深度学习模型,在图像分类任务上表现出色。为了将其应用于工业异常检测,可以借鉴 SimpleNet 的框架设计思路[^1]。 #### 构建特征提取器 WideResNet50 可作为强大的预训练特征提取器来替代 SimpleNet 中的基础特征提取部分。具体做法是从 WideResNet50 移除最后几层全连接层,保留卷积层用于特征图生成: ```python import torchvision.models as models from torch import nn class FeatureExtractor(nn.Module): def __init__(self, pretrained=True): super(FeatureExtractor, self).__init__() wide_resnet = models.wide_resnet50_2(pretrained=pretrained) layers = list(wide_resnet.children())[:-2] self.feature_extractor = nn.Sequential(*layers) def forward(self, x): return self.feature_extractor(x) ``` #### 设计特征适配器 由于 WideResNet50 输出的特征维度较高,建议增加一层轻量级的特征转换模块,以便后续处理。此模块可采用简单的卷积操作降低通道数并调整空间分辨率: ```python class FeatureAdapter(nn.Module): def __init__(self, input_channels=2048, output_channels=256): super(FeatureAdapter, self).__init__() self.adapter = nn.Conv2d(input_channels, output_channels, kernel_size=1) def forward(self, features): adapted_features = self.adapter(features) return adapted_features ``` #### 异常特征生成与鉴别机制 对于异常特征生成和鉴别环节,可以根据实际需求选择合适的对比学习或自监督学习策略。这里提供一个简易版本的设计方案——通过重建损失函数衡量正常样本与其重构之间的差异度,从而识别异常情况: ```python class AnomalyGeneratorDiscriminator(nn.Module): def __init__(self, feature_dim=256): super(AnomalyGeneratorDiscriminator, self).__init__() # 定义编码解码结构或其他适合的方式 pass def anomaly_score(self, original_feature_map, reconstructed_feature_map): score = ((original_feature_map - reconstructed_feature_map)**2).mean(dim=[1, 2, 3]) return score ``` 整个流程中,输入图片先经过 `FeatureExtractor` 得到深层语义表示;再经由 `FeatureAdapter` 调整至合适尺寸;最终送入 `AnomalyGeneratorDiscriminator` 计算异常得分完成预测过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值