【2023工业3D异常检测文献】M3DM: 基于混合融合的多模态工业异常检测方法

Multimodal Industrial Anomaly Detection via Hybrid Fusion

1、Background

随着3D传感器的发展,最近发布了具有2D图像和3D点云数据的MVTec-3D AD数据集,促进了多模态工业异常检测的研究。

无监督异常检测的核心思想是找出正常表示与异常之间的差异。当前的2D工业异常检测方法可以分为两类:

(1)基于重建的方法。图像重建任务在异常检测方法中被广泛使用,以学习正常表示。对于单一模态输入(2D图像或3D点云),重建方法易于实现。但对于多模态输入,很难找到重建目标。

(2)基于预训练特征提取器的方法。直观的方法是将提取的特征映射到正常分布,并找到分布之外的一个作为异常。基于归一化流的方法使用可逆变换直接构建正常分布,记忆库方法存储一些代表性特征以隐式构建特征分布。

与基于重建的方法相比,直接使用预训练特征提取器不涉及设计多模态重建目标,对于多模态任务是更好的选择。此外,当前的多模态工业异常检测方法直接连接两种模态的特征。然而,当特征维度很高时,多模态特征之间的干扰将非常激烈,并导致性能下降。

为了解决上述问题,提出了一种基于RGB图像和3D点云的新型多模态异常检测方案Multi-3D-Memory (M3DM)。与现有方法直接连接两种模态的特征不同,提出了一种混合融合方案,以减少多模态特征之间的干扰并鼓励特征交互。

提出了无监督特征融合(UFF)来融合多模态特征,它使用分块对比损失进行训练,以学习相同位置的多模态特征块之间的固有关系。为了鼓励异常检测模型保持单一域推理能力,分别为RGB、3D和融合特征构建了三个记忆库。

对于最终决策,构建了决策层融合(DLF),以考虑所有记忆库进行异常检测和分割。异常检测需要包含全局和局部信息的特征,其中局部信息有助于检测小缺陷,全局信息关注所有部分之间的关系。基于这一观察,使用Point Transformer进行3D特征和Vision Transformer进行RGB特征。进一步提出了点特征对齐(PFA)操作,以更好地将3D和2D特征对齐。

2、Method

Multi-3D-Memory (M3DM)方法采用3D点云和RGB图像作为输入,进行3D异常检测和分割。

采用特征混合融合方案,以促进跨域信息交互,同时保持每个单一域的原始信息。

利用两个预训练的特征提取器,DINO用于RGB和PointMAE用于点云,分别提取颜色和3D表示。

M3DM由三个重要部分组成:

(1)点特征对齐(PFA):为了解决颜色特征和3D特征之间的位置信息不匹配问题,提出了点特征对齐,将3D特征对齐到2D空间,这有助于简化多模态交互并提高检测性能。

(2)无监督特征融合(UFF):由于多模态特征之间的交互可以产生对异常检测有帮助的新表示,提出了一个无监督特征融合模块,以帮助统一多模态特征的分布并学习它们之间的内在联系。

(3)决策层融合(DLF):尽管UFF有助于提高检测性能,但发现信息丢失是不可避免的,并提出使用多个记忆库进行最终决策。

在这里插入图片描述

算法流程:

  • 输入数据
    • 3D点云
    • RGB图像
  • 特征提取
    • 使用Point Transformer处理3D点云,提取每个点的特征(形状)
    • 使用Vision Transformer处理RGB图像,提取图像中每个块的特征(纹理和颜色)
  • 特征融合
    • 点特征对齐(PFA):因为3D点云和彩色图片的空间对应关系可能不一致,所以需要一个对齐过程,让3D形状信息和2D颜色信息能在同一个坐标系下比较。将3D点云特征投影到2D平面上,以便与RGB图像特征对齐。
    • 无监督特征融合(UFF):将对齐后的3D和2D特征进行融合,使用一种特殊的学习方法(分块对比学习),让两种特征互相学习,增强彼此的信息。
  • 决策层融合(DLF)
    • 首先,使用多个记忆库(Memory Bank)分别存储RGB特征、3D特征和融合后的特征。
    • 然后,对于每个记忆库,系统都会计算出一个异常分数和一个分割图,这些分数和图基于学习到的正常产品特征。
    • 最后,通过一个叫做One-Class SVM的模型,综合这些分数和图,给出最终的异常检测结果和异常区域的定位。

pseudo-code

# 定义函数进行特征提取
def extract_features(data):if isinstance(data, RGB_image):features = vision_transformer(data)elif isinstance(data, PointCloud):features = point_transformer(data)return features# 定义函数进行无监督特征融合
def unsupervised_feature_fusion(rgb_features, point_features):fused_features = some_fusion_method(rgb_features, point_features)return fused_features# 定义函数进行异常检测
def anomaly_detection(features, memory_bank):distances = calculate_distances(features, memory_bank)anomaly_score = sum(distances)  # 简化的异常评分计算return anomaly_score# 主流程
def main(new_rgb_image, new_point_cloud, memory_bank_rgb, memory_bank_point, memory_bank_fused):# 特征提取rgb_features = extract_features(new_rgb_image)point_features = extract_features(new_point_cloud)# 特征融合fused_features = unsupervised_feature_fusion(rgb_features, point_features)# 异常检测score_rgb = anomaly_detection(rgb_features, memory_bank_rgb)score_point = anomaly_detection(point_features, memory_bank_point)score_fused = anomaly_detection(fused_features, memory_bank_fused)# 综合决策final_score = (score_rgb + score_point + score_fused) / 3if final_score > threshold:return "异常"else:return "正常"# 假设的记忆库数据
memory_bank_rgb = ...
memory_bank_point = ...
memory_bank_fused = ...# 新样本数据
new_rgb_image = ...
new_point_cloud = ...# 调用主函数进行异常检测
result = main(new_rgb_image, new_point_cloud, memory_bank_rgb, memory_bank_point, memory_bank_fused)
print("检测结果:", result)

3、Experiments

🐂。。。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4、Conclusion

提出了一种基于点云和 RGB 图像的 多模态混合特征融合 工业异常检测方法 Multi-3D-Memory 。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/436685.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android Studio Dolphin 中Gradle下载慢的解决方法

我用的版本Android Studio Dolphin | 2021.3.1 Patch 1 1.Gradle自身的版本下载慢 解决办法:修改gradle\wrapper\gradle-wrapper.properties中的distributionUrl 将https\://services.gradle.org/distributions为https\://mirrors.cloud.tencent.com/gradle dis…

2024 maya的散布工具sppaint3d使用指南

目前工具其实可以分为三个版本 1 最老的原版 时间还是2011年的,只支持python2版的maya 2 作者python3更新版 后来作者看maya直到2022上还是没有类似好用方便的工具,于是更新到了2022版本 这个是原作者更新的2022版本,改成了python3&#…

SpringBoot——基础配置

但是还需要删除pom.xml中的标签——模板的文件也同样操作 banner的选项——关闭 控制台 日志 banner图片的位置——还会分辨颜色 在 Java 的日志框架(如 Logback、Log4j2 等)中,logging.level.root主要用于设置根日志记录器的日志级别…

IIS开启后https访问出错net::ERR_CERT_INVALID

安装ArcGIS server和portal等,按照说明上,先开启iis,在安装server、datastore、portal、webadapter等,遇到一些问题: 问题1 访问http正常,访问https出错: 解决方案 从这里找到解决方案&…

TDesign组件库+vue3+ts 如何视觉上合并相同内容的table列?(自定义合并table列)

背景 当table的某一列的某些内容相同时&#xff0c;需要在视觉上合并这一部分的内容为同个单元格 如上图所示&#xff0c;比如需要合并当申请人为同个字段的列。 解决代码 <t-table:data"filteredData":columns"columns":rowspan-and-colspan"…

宝塔部署vue项目出现的各种问题

使用宝塔面板&#xff0c;网站页面&#xff0c;构建php静态网页 问题一&#xff1a;图片等静态资源无法加载 找到真正请求的url&#xff0c; 然后在项目目录下面创建对应的目录&#xff0c;将资源放入 问题二&#xff1a;刷新出现404 在这里任意位置添加 ## 添加上这个配…

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-09-28

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-09-28 目录 文章目录 计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-09-28目录前言1. Cognitive phantoms in LLMs through the lens of latent variables摘要研究背景问题与挑战创新点算法模型实验效果…

业务封装与映射 -- AMP BMP GMP

概述 不同单板支持不同的封装模式&#xff0c;主要包括: AMP (Asynchronous Mapping Procedure&#xff0c;异步映射规程)BMP (Bit-synchronous Mapping Procedure&#xff0c;比特同步映射规程)GMP (Generic Mapping Procedure&#xff0c;通用映射规程) AMP/BMP&#xff1a…

解决VS Code工具在终端执行命令的时候无法加载文件

错误&#xff1a;tsc : 无法加载文件 E:\KTSP\WaitForMe\install\nodejs\node_global\tsc.ps1,因为在此系统上禁止运行脚本 问题原因&#xff1a;由于windwos11上默认上关闭了运行脚本的策略&#xff0c;所以我们要设置允许执行脚本 1.WinX打开终端管理员输入 Get-ExecutionP…

【每天学个新注解】Day 10 Lombok注解简解(九)—@Accessors

在之前的几天&#xff0c;我们系统学习了Lombok的常见注解&#xff0c;并且将其官网stable中的所有注解都讲解了一编&#xff0c;接下来会通过两到三天的时间将Lombok目前正在试验的&#xff08;experimental&#xff09;注解简单过一遍&#xff0c;以下为experimental状态的所…

uniapp框架中实现文件选择上传组件,可以选择图片、视频等任意文件并上传到当前绑定的服务空间

前言 uni-file-picker是uniapp中的一个文件选择器组件,用于选择本地文件并返回选择的文件路径或文件信息。该组件支持选择单个文件或多个文件,可以设置文件的类型、大小限制,并且可以进行文件预览。 提示:以下是本篇文章正文内容,下面案例可供参考 uni-file-picker组件具…

学习记录:js算法(五十):二叉树的右视图

文章目录 二叉树的右视图我的思路网上思路 总结 二叉树的右视图 给定一个二叉树的 根节点 root&#xff0c;想象自己站在它的右侧&#xff0c;按照从顶部到底部的顺序&#xff0c;返回从右侧所能看到的节点值。 图一&#xff1a; 示例 1:如图一 输入: [1,2,3,null,5,null,4] …

SigmaStudio控件Cross Mixer\Signal Merger算法效果分析

衰减与叠加混音算法验证分析一 CH2:输入源为-20dB正弦波1khz CH1叠加混音&#xff1a;参考混音算法https://blog.csdn.net/weixin_48408892/article/details/129878036?spm1001.2014.3001.5502 Ch0衰减混音&#xff1a;外部多个输入源做混音时&#xff0c;建议参考该算法控件&…

开源模型应用落地-模型微调-语料采集-数据标注(二)

一、前言 在自然语言处理(NLP)的快速发展中,语料采集作为基础性的步骤显得尤为重要。它不仅为机器学习模型提供了所需的训练数据,还直接影响模型的性能和泛化能力。随着数据驱动技术的不断进步,如何有效并高效地收集、清洗和整理丰富多样的语料,已成为研究者和工程师们亟…

PostgreSQL 17 发布了!非常稳定的版本

&#x1f4e2;&#x1f4e2;&#x1f4e2;&#x1f4e3;&#x1f4e3;&#x1f4e3; 作者&#xff1a;IT邦德 中国DBA联盟(ACDU)成员&#xff0c;10余年DBA工作经验&#xff0c; Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主&#xff0c;全网粉丝10万 擅长主流Oracle、My…

数据管理_DM的实现

DataManager 的实现 DataManager 是数据库系统中的核心组件&#xff0c;负责管理底层数据的访问、修改和事务处理。它是 DM 层直接对外提供方法的类&#xff0c;用来对上层其他模块提供数据操作的API的,同时也实现了对 DataItem 对象的缓存管理。DataItem 存储的 key 是由页号…

Web认识 -- 第一课

文章目录 前言一、HTML是什么&#xff1f;二、了解Web1. 基本概念2.Web标准3. Web构成1.前端1. HTML2.CSS3. javaScript4.常见浏览器介绍 2.Web标签构成1.结构标准2.表现标准 -- css3. 行为标准 -- javaScript 总结 前言 这里是我们进入前端学习的开端,在本次更新之后我会陆续…

【智能算法应用】正余弦优化算法求解二维路径规划问题

摘要 正余弦优化算法&#xff08;Sine Cosine Algorithm, SCA&#xff09;是一种新颖的群体智能优化算法&#xff0c;能够有效地求解复杂的非线性问题。在本研究中&#xff0c;我们将SCA应用于二维路径规划问题&#xff0c;以找到从起点到终点的最优路径&#xff0c;同时避开障…

Python从入门到高手4.1节-掌握条件控制语句

目录 4.1.1 理解条件控制 4.1.2 if, elif, else 4.1.3 条件表达式 4.1.4 条件控制可以嵌套 4.1.5 if语句的三元运算 4.1.6 国庆节快乐 4.1.1 理解条件控制 在日常生活中&#xff0c;我们常喜欢说如果, "如果怎么样&#xff0c;那么就会怎么样"。"如果&qu…

【JVM】双亲委派模型

文章目录 双亲委派模型&#xff08;面试高频&#xff09;类加载器工作过程存在意义 双亲委派模型&#xff08;面试高频&#xff09; 之所以这个东西面试出场概率高高&#xff0c;最大的原因就是它起的名字很好听 描述了查找 .class 文件的策略。 类加载器 JVM 中进行类加载的…