Inp-Former 的核心思想:一张有缺陷的图片里,通常仍有大量正常区域,可以从这些区域提取当前图片自己的"正常参照" ,这样能减少外部正常样本与当前图片在外观、位置等方面不一致带来的干扰

一、预训练编码器
pre-trained encoder的作用是把输入的图像转化成后续模块可以处理的特征表示,也就是patch tokens.这些特征可以描述局部的纹理、边缘、形状等信息;
例如,输入一张有破损的榛子图像,编码器会提取正常外壳、破损区域和背景等位置的特征。它提取的是整张图片的信息。
编码器的输出

其中H是输入图片的高,W是宽,k是下采样系数,一个patch的大小就是k*k(patch是原图上切出来的像素块,是图像区域可以看到,token是特征向量,patch token是patch对应的token);
下采样是降低分辨率:把图像 / 特征图缩小,减少像素点数量;
二、INP 提取器
提取器的作用就是,提取出一个可以代表正常模式的原型
extractor 的输入有:可学习token和 FQ\mathbf{F}_QFQ, FQ\mathbf{F}_QFQ是encoding各阶段输出特征的求和
Learnable Token : 是模型的参数, 训练阶段,由反向传播更新,INP一致性损失 + 后边的重建损失一起回传来调整Learnable Token
Extractor的训练过程: 输入T(Learnable Token)和FQ\mathbf F_QFQ,通过extractor运算出一个P(INPS), 计算一致性损失Lc\mathcal L_cLc

Original distirbution: 从FQF_QFQ中提取到的inps没有位于相同patch token的中心,类边界模糊
Target distribution: 通过不断更新参数,使extractor提取出的inps位于相同patch token的中心,类边界更加清晰
三、INP-guided Decoder
Decoder输出的是每个patch对应的正常的重建特征,用于和原图特征计算特征距离,生成异常距离图。
编码特征Patch Token 与解码特征Output Token是对齐的
四、其他
MLP Bottleneck
将编码器输出的特征转换为更适合解码器处理的特征,也就是对特征进行转换和适配
五、整体流程
训练时,将正常图像输入冻结的预训练编码器,提取选定的多个编码阶段的特征。融合这些特征后,分为两条路径:一条通过 MLP Bottleneck 进行特征变换,得到解码器的输入 FBF_BFB;另一条输入 INP Extractor。
在原型提取器中,一组可学习 tokens (T) 提供查询 (Q),融合编码特征 FQF_QFQ 提供键和值 K、V,经过交叉注意力和前馈网络得到正常原型 P。同时,通过计算各编码特征与最近原型的余弦距离,构造 INP 一致性损失,约束原型对正常特征的表示能力。
随后,解码器接收 FBF_BFB,并在各解码层中利用正常原型 P 提供 K、V,引导特征重建。将编码特征与对应的解码重建特征进行比较,计算软挖掘损失,使模型更关注难以重建的正常区域。
最后,将两种损失合并为 Ltotal=Lsm+λLc\mathcal L_{\text{total}}=\mathcal L_{\text{sm}}+\lambda\mathcal L_cLtotal=Lsm+λLc,统一反向传播,更新原型提取器、可学习 tokens、瓶颈模块和解码器的参数,保持预训练编码器冻结。
补充知识
热力图

首先求每个patch与最近inp的余弦距离得到的,然后按照原图中patch的位置排列,得到一个k*k=N(patch数量)的距离图,经过上采样之后才与原来的图像大小相同的彩色热力图
inp-former输出的Anomaly Map: 它也是热力图,原始大小也是patch网格大小,每个像素是编码特征与解码特征的余弦距离(异常相关分数),经过上采样后变成最终的Anomaly Map