深度学习论文: Segment Any Anomaly without Training via Hybrid Prompt Regularization

深度学习论文: Segment Any Anomaly without Training via Hybrid Prompt Regularization
Segment Any Anomaly without Training via Hybrid Prompt Regularization
PDF: https://arxiv.org/pdf/2305.10724.pdf
PyTorch代码: https://github.com/shanglianlm0525/CvPytorch
PyTorch代码: https://github.com/shanglianlm0525/PyTorch-Networks

1 概述

动机: 提出了一种新的框架,即Segment Any Anomaly + (SAA+),用于零样本异常分割,并通过混合提示正则化方法改善现代基础模型的适应性。现有的异常分割模型通常依赖于特定领域的微调,限制了它们在无数异常模式之间的泛化能力。

方法: 将不同的基础模型进行协同组装,以利用多模态先验知识来进行异常定位。为了适应非参数基础模型在异常分割中的应用,进一步引入了从领域专家知识和目标图像上下文中派生的混合提示作为正则化手段。

优势: 所提出的SAA+模型在多个异常分割基准测试数据集(包括VisA、MVTec-AD、MTD和KSDD2)中在零样本设置下实现了最先进的性能,克服了现有模型在异常模式泛化方面的局限性,并且能够检测与纹理相关的异常而无需任何标注。

在这里插入图片描述

2 SAA: Vanilla Foundation Model Assembly for ZSAS

针对用于异常分割的某个查询图像,我们首先使用语言提示作为初始输入,在基于语言驱动的视觉定位基础模型(如GroundingDINO)的支持下,通过异常区域生成器大致检索出粗糙的异常区域提议。然后,通过使用基于提示驱动的分割基础模型(如SAM)的异常区域细化器,将这些提议进一步细化为像素级别的高质量分割掩码。这种方法结合了语言和视觉信息,能够在异常分割任务中提供更准确的结果。

2-1 Anomaly Region Generator

最近,随着语言-视觉模型的快速发展,一些基础模型逐渐具备了通过语言提示在图像中检测对象的能力。例如,给定一个描述所需检测区域的语言提示,基础模型可以为查询图像生成相应的区域。为了实现这一目标,我们采用了一种基于文本引导的开放集目标检测架构,即GroundingDINO,该架构已经在大规模的语言-视觉数据集上进行了预训练。具体而言,该网络通过文本编码器和视觉编码器提取语言提示和查询图像的特征,并利用跨模态解码器以边界框的形式生成粗略的对象区域。通过使用边界框级别的区域集合和对应的置信度得分集合,我们可以定义异常区域生成器(Generator)模块:
在这里插入图片描述

2-2 Anomaly Region Refiner

为了生成像素级别的异常分割结果,我们提出了异常区域细化器,将边界框级别的异常区域候选者细化为异常分割掩码集合。为了实现这一目标,我们使用了一种用于开放世界视觉分割的复杂基础模型,即SAM。该模型主要由基于ViT的主干网络和一个受提示条件控制的分割解码器组成。具体而言,该模型在一个包含十亿个细粒度掩码的大规模图像分割数据集上进行了训练,从而在开放集分割设置下具备了高质量的掩码生成能力。受提示条件控制的分割解码器接受各种类型的提示作为输入。我们将边界框候选集视为提示,并生成像素级别的分割掩码。异常区域细化器模块可以被定义为
在这里插入图片描述
到目前为止,我们得到了一组以高质量分割掩码的形式表示的区域R,以及对应的置信度得分S。综上所述,我们将框架(SAA)总结如下
在这里插入图片描述
其中 T n T_{n} Tn 是一个类别无关的语言提示,例如 SAA中使用的“anomaly”。

3 SAA+: Foundation Model Adaption via Hybrid Prompt Regularization

为了解决SAA中的语言歧义问题并提高其在零样本异常检测上的能力,我们提出了升级版的SAA+。SAA+不仅利用了预训练模型所获得的知识,还结合了领域专家的知识和目标图像的上下文信息,以生成更准确的异常区域掩码。通过引入混合提示的方法,SAA+能够更好地处理语言的多义性,从而提高了模型的性能。
在这里插入图片描述

3-1 Prompt Generated from Domain Expert Knowledge

SAA+利用了专家知识生成更准确的异常区域掩码,包括异常语言提示(Anomaly Language Expression)和异常属性提示(Anomaly Object Property)。对于异常语言提示(Anomaly Language Expression),SAA+通过使用类别无关(Class-agnostic prompts )和类别特定的提示(Class-specific prompts)来进一步细化"异常"这一提示。而对于异常属性提示(Anomaly Object Property),SAA+考虑了异常的位置(Anomaly Location)和面积信息(Anomaly Area)。通过结合这两种多模态提示,SAA+在异常分割任务中能够获得更精确的结果。这种综合利用领域专家知识和多模态提示解决语言歧义问题的方法,使得SAA+在异常区域掩码生成方面具有更高的准确性和鲁棒性。

3-2 Prompts Derived from Target Image Context

利用从目标图像上下文中衍生的多模态提示来提高异常区域检测准确性的方法。其中,异常显著性提示(Anomaly Saliency Prompt)通过使用显著性图来校准基础模型的置信度分数,从而提高异常区域的检测效果。而异常置信度提示(Anomaly Confidence Prompt)则通过选择具有最高置信度的候选区域来确定最终的异常区域检测结果。通过综合利用这两种多模态提示,可以提高异常区域检测的准确性和可靠性。这种方法能够更好地利用目标图像的上下文信息,从而提高异常区域检测的性能。

4 Experiments

在这里插入图片描述

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

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

相关文章

Ubuntu 23.10 将首次推出基于 Flutter 的新 Ubuntu 商店

导读Ubuntu 正在升级其软件商店以提供顺滑的体验! 随着不断发展,Canonical 似乎全力以赴,将基于 Flutter 的元素整合到 Ubuntu 中。 在前段时间 Ubuntu 23.04 发布后,我们见到了基于 Flutter 的安装程序 ,现在&#x…

vim命令大全,非常详细,强烈建议收藏!

1、前言 Vim是一款常用的文本编辑器,具有强大的功能和高度的可定制性。在本文中,我们将详细介绍Vim的常用命令,并提供相关的示例。如果您是初学者或已经熟练使用Vim,这篇文章都能为您提供帮助。 2、基本命令 以下是一些基本的Vi…

使用awvs进行web安全扫描

1、安装 docker pull secfa/docker-awvs docker run -it -d -name awvs -p 13443:3443 --cap-add LINUX_IMMUTABLE secfa/docker-awvs2、账号密码 # https://ip:13443/ # 用户名:adminadmin.com # 密码:Admin1233、使用 ps:需要征得甲方的同意

【juc】读写锁ReentrantReadWriteLock

目录 一、说明二、读读不互斥2.1 代码示例2.2 截图示例 三、读写互斥3.1 代码示例3.2 截图示例 四、写写互斥4.1 代码示例4.2 截图示例 五、注意事项5.2.1 代码示例5.2.2 截图示例 一、说明 1.当读操作远远高于写操作时,使用读写锁让读读可以并发,来提高…

IDEA遇到 git pull 冲突的几种解决方法

1 忽略本地修改,强制拉取远程到本地 主要是项目中的文档目录,看的时候可能多了些标注,现在远程文档更新,本地的版本已无用,可以强拉 git fetch --all git reset --hard origin/dev git pull关于commit和pull的先后顺…

亚马逊鲲鹏系统是怎么操作测评的

亚马逊鲲鹏系统可以注册亚马逊买家号、养号、下单留评等,是一款功能比较齐全的测评软件,具体操作如下: 首先我们需要先准备好买家账号,账号可以直接去购买已经注册好了的账号,也可以准备好账号所需要的一些邮箱、ip、…

无门槛访问ChatGPT升级版-数据指北AI

大家好,我是脚丫先生 (o^^o) 给小伙伴们介绍ChatGPT升级版不需要任何门槛,不需要单独搞账号,只要邮箱登录的方式,即可访问平台,以用户体验为首要,让所有人都能无门槛的使用目前市面上最强大的AI智能聊天&a…

Rn实现省市区三级联动

省市区三级联动选择是个很频繁的需求,但是查看了市面上很多插件不是太老不维护就是不满足需求,就试着实现一个 这个功能无任何依赖插件 功能略简单,但能实现需求 核心代码也尽力控制在了60行左右 pca-code.json树型数据来源 Administrative-d…

液体神经网络LLN:通过动态信息流彻底改变人工智能

巴乌米克泰吉 一、说明 在在人工智能领域,神经网络已被证明是解决复杂问题的非常强大的工具。多年来,研究人员不断寻求创新方法来提高其性能并扩展其能力。其中一种方法是液体神经网络(LNN)的概念,这是一个利用动态计算…

07:STM32----ADC模数转化器

目录 1:简历 2:逐次逼近型ADC 3:ADC基本结构 4:输入通道 5:规则组的4种转换模式 1:单次转化,非扫描模式 2:连续转化,非扫描模式 3:单次转化,扫描模式 4:单次转化,扫描模式 6:触发控制 7:数据对齐 8:转化时间 9:校准 10:ADC的硬件电路 A: AD单通道 1:连接图 2:函…

Git小白入门——了解分布式版本管理和安装

Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一) 什么是版本控制系统? 程序员开发过程中,对于每次开发对各种文件的修改、增加、删除,达到预期阶段的一个快照就叫做一个版本。 如果有一…

【OpenCV入门】第一部分——图像处理基础

本文结构 图像处理的基本操作读取图像imread() 显示图像imshow()waitKey()destroyAllWindows() 保存图像imwrite() 复制图像copy() 获取图像属性 像素确定像素的位置获取像素的BGR值修改像素的BGR值 色彩空间GRAY色彩空间cvtColor()——从BGR色彩空间转换到GRAY色彩空间 HSV色彩…

Lua学习(一)

lua基础学习 LUA 语言1. 什么是lua?1.1 准备工作 2. 基本语法2.1 注释2.2 标识符2.3 关键字2.4 全局变量 3. 数据类型4. 变量4.1 赋值语句 5. 循环5.1 while循环5.2 for循环5.3泛型for循环5.4 repeat until 循环5.5 break 语句 6. 流程控制6.1 if语句6.2 if else 语…

GNU make系列之介绍Makefile(0)

一.欢迎来到我的酒馆 在本章节介绍Makefile。 目录 一.欢迎来到我的酒馆二.GNU make 预览三.一个简单的Makefile四.make程序如何处理Makefile文件五.在Makefile中使用变量 二.GNU make 预览 2.1 GNU make工具会自动决定哪些程序需要被重新编译,并且执行相应的命令来…

reactantd(12)动态表单的默认值问题

最近遇到一个需求是有一个表单可以输入各种信息,然后还需要有一个编辑功能,点击编辑的时候需要把当前数据填入到表单里面。在网上查了很多种方法,然后我的思路是使用initialValues搭配setState()使用。默认值都为空,然后点击单条数…

从零开始学习 Java:简单易懂的入门指南之查找算法及排序算法(二十)

查找算法及排序算法 常见的七种查找算法:1. 基本查找2. 二分查找3. 插值查找4. 斐波那契查找5. 分块查找6. 哈希查找7. 树表查找 四种排序算法:1. 冒泡排序1.1 算法步骤1.2 动图演示1.3 代码示例 2. 选择排序2.1 算法步骤2.2 动图演示 3. 插入排序3.1 算…

knife4j 整合 springboot

官方文档:https://doc.xiaominfo.com/knife4j 版本兼容说明:https://doc.xiaominfo.com/docs/quick-start/start-knife4j-version 升级说明:https://doc.xiaominfo.com/docs/upgrading/upgrading-to-v4版本兼容惯关系: springboot…

MySQL一行记录是如何存储的?

目录 MySQL的数据存放在哪个文件? 表空间文件的结构是怎么样的? 1、行(row) 2、页(page) 3、区(extent) 4、段(segment) InnoDB 行格式有哪些&#xf…

解读亚马逊云科技语义搜图检索方案

图像检索(包括文搜图和图搜图)是各个行业中常见的一个应用场景。比如在电商场景中,基于以图搜图做相似商品查找;在云相册场景中,基于文搜图来找寻所需的图像素材。 传统基于标签的图像检索方式,即先使用目标…

博流RISC-V芯片Eclipse环境搭建

文章目录 1、下载 Eclipse2、导入 bouffalo_sdk3、编译4、烧录5、使用ninja编译 之前编译是通过 VSCode 编译,通过手工输入 make 命令编译,我们也可以通过 Eclipse 可视化 IDE 来编译、烧录。 1、下载 Eclipse 至 Eclipse 官网 https://www.eclipse.org…