码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 异常检测:Towards Total Recall in Industrial Anomaly Detection


    Towards Total Recall in Industrial Anomaly Detection

    本篇文章采取的方法是基于密度的异常检测方法

    原论文链接,2021的一篇异常检测论文在MVTec其检测准确率和分割准确率分别达到了99.1%和98.1%
    排名

    研究背景:

    能够发现工业制造中零部件存在的缺陷是提高工业制造质量的一个很重要的环节。在使用神经网络的模型中,尽管为每个类别手动设置解决方案是可能的,但系统的最终目标是构建一个系统能同时自动在许多不同类别任务上效果良好。

    目前最好的方法是将ImageNet模型的嵌入向量和异常检测模型相结合。这篇论文就是沿着目前这条研究线,在这个基础上提出:PatchCore,which uses a maximally representative memory bank of nominal patch features.

    本文亮点:

    所提出的PatchCore,在MVTec数据集上能够实现不仅检测速度快,还可以实现缺陷的高精确度检测与定位!
    检测效果

    论文核心知识点

    Patch: 所谓补丁,指的是像素;
    PatchCore: 也就是补丁的核心信息;
    Embedding: 所谓嵌入,指的是将网络提取的不同特征组合到一块;
    Nominal samples: 正常样本即不包含异常的样本;
    Memory bank: 就是记忆提取到的特征的集合;

    Pretrained Encoder: 使用预训练模型(wide_resnet50_2) backbone 提取图像特征, 采用[2, 3]层特征作为图像特征,具有较强的底层特征(轮廓、边缘、颜色、纹理和形状特征),更能够反映图像内容。不采用最后几层原因:深层特征偏向于分类任务,具有更强的语义信息。
    Locally aware patch features: 提取图像的 Patch特征,这个特征带有周围数据的信息。特征值的集合构建 PatchCore Memory bank;
    Coreset Subsampling: 核心集二次抽样;
    Coreset-reduced patch-feature memory bank:: 稀疏采样 目的是Reduce memory bank,加快算法运行速度。
    anomaly score: 就是你训练正常的数据,捕获正常图像的特征,然后有一个异常的数据进来,就会和正常数据产生一个差异,通过整个差异来判断是否是异常。

    模型框架

    模型
    算法流程大致为:通过预训练好的ResNet-50在正常样本上面进行特征提取(不从Resnet最后一层获取特征,而是从中间获取)随后再采用 coreset subsampling,进行有效的降采样生成更加核心的特征集即memory bank 。
    在测试的时候,将提取到的特征通过 nearest neighbour search(最近邻搜索:每个query进来,首先找最近距离最近的领域质心,找到距离query最近的质心后,锁定该领域) 然后在该领域内计算距离最远的数据点,用该距离计算anomaly score,判断是否异常,得到结果。

  • 相关阅读:
    我决定把一个收费视频课全免费公开了,今天起,慢慢放出“人人都需要的产品思维课”...
    深入学习Semantic Kernel:创建和配置prompts functions
    springboot 集成 zookeeper 问题记录
    第五十二天 数论
    Mybatis的多表操作之多对多查询与练习
    开源微信小程序商城源码PHP带后台管理——构建高效电商平台的基石
    redis场用命令及其Java操作
    嵌入式实时操作系统的设计与开发(调度策略学习)
    Java线程stop,sleep,yield,join
    使用.Net对图片进行裁剪、缩放、与加水印
  • 原文地址:https://blog.csdn.net/qq_45496282/article/details/127849054
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号