1. 工业质检的“老大难”:当你的模型在真实世界“水土不服”
想象一下这个场景:你花了几个月时间,训练了一个非常棒的工业缺陷检测模型。在实验室里,它表现得像个“火眼金睛”,无论是螺丝上的划痕,还是电路板上的虚焊,都能精准识别。你信心满满地把它部署到生产线上,结果第一天就“翻车”了。上午光线充足时,它把叶片上的正常反光误报成“烧蚀”;下午光线变暗,它又把一个真实的“沟槽”缺陷给漏掉了。产线老师傅摇摇头:“这玩意儿还不如我眼睛好使。”
这就是典型的领域偏移问题。在工业异常检测里,它可以说是最让人头疼的“老大难”。简单来说,就是模型在训练时学到的“正常世界”,和它在实际应用中遇到的“真实世界”,不是一回事。这种不一致,专业上就叫Domain Shift。
为什么这个问题在工业场景下尤其突出?我结合自己这些年做项目的经验,总结了几个主要原因:
- 光照变化:这是最普遍的。实验室的灯光是恒定的、均匀的,但工厂里呢?窗户透进来的自然光会随时间变化,不同工位的照明灯型号、角度、亮度都可能不同,甚至设备自身的阴影都会干扰成像。
- 视角变化:训练时,摄像头可能固定在某个完美角度。但实际安装时,可能因为空间限制有微小偏差,或者产品在传送带上会有轻微的旋转、平移,导致拍摄角度和训练数据有出入。
- 背景干扰:训练图片的背景可能是干净的纯色幕布。但实际产线上,背景可能是复杂的机械臂、传送带纹理,或者其他产品,这些都会成为模型的干扰信息。
- 设备老化与差异:即使是同一型号的相机,使用一段时间后,镜头清晰度、传感器性能也会有细微变化。或者,你在A生产线训练的模型,直接用到B生产线(哪怕生产同样的产品),因为相机批次不同,成像风格也会有差异。
过去很多经典的异常检测方法,比如基于重建的Autoencoder,或者基于特征匹配的PatchCore,在MVTec这类“干净”的基准数据集上表现很好。因为这些数据集的训练集和测试集,都是在高度可控的相同条件下采集的,不存在领域偏移。但一旦把它们扔进上面说的那些真实、复杂的环境,性能就会大幅下降。模型会变得非常“敏感”,把正常的光影变化当成异常;或者变得“迟钝”,漏掉真正的缺陷。
所以,要解决工业场景下的实际问题,我们需要的不仅仅是一个更强大的模型,更需要一个能模拟并应对这种领域偏移的“考场”,以及一个能在“考场”中稳定发挥的“考生”。这正是《Industrial Anomaly Detection with Domain Shift》这篇工作及其提出的AeBAD数据集和MMR方法,所瞄准的核心痛点。它不再满足于在“温室”里比成绩,而是直接把大家拉到了“野外”进行实战演练。
2. 走进真实的“考场”:AeBAD数据集详解
论文作者们很聪明,他们没有在已有的“温室”数据集上修修补补,而是直接动手,搭建了一个更贴近真实战场的“考场”——航空发动机叶片异常检测数据集。这个数据集的设计理念,我个人非常认同,因为它精准地戳中了工业落地中最常见的两个痛点:目标不对齐/尺度不一和训练与测试环境存在领域偏移。
2.1 数据集的两个核心挑战
AeBAD数据集分为两个子集:AeBAD-S(单叶片图像集)和AeBAD-V(叶片视频集)。我们重点看看它具体是怎么制造“难题”的。
首先,目标不对齐且尺度不一。 在AeBAD-S中,叶片在图像中的位置、角度、大小都不是固定的。这非常真实!在实际的视觉检测工位上,产品经过摄像头时,很难保证每次都停在画面正中央、保持同一角度。模型必须学会从各种姿态、各种大小中识别出叶片本身,并判断其是否异常,而不是去记忆“叶片在画面右下角45度角时是正常的”这种死板规则。
其次,也是更关键的,存在明确的领域偏移。 这是AeBAD最核心的价值。作者们人为地、系统地在训练集和测试集的正常样本之间引入了差异。请注意,是正常样本!这意味着,模型不能简单地通过“测试集的图片看起来和训练集不一样”就判定为异常,它必须真正理解叶片本身的正常结构。
在AeB


3545

被折叠的 条评论
为什么被折叠?



