欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > 【开放词汇分割】Image Segmentation Using Text and Image Prompts

【开放词汇分割】Image Segmentation Using Text and Image Prompts

2025/2/24 3:55:44 来源:https://blog.csdn.net/cjy_colorful0806/article/details/145758610  浏览:    关键词:【开放词汇分割】Image Segmentation Using Text and Image Prompts

论文链接:[2112.10003] Image Segmentation Using Text and Image Prompts

代码链接:GitHub - timojl/clipseg: This repository contains the code of the CVPR 2022 paper "Image Segmentation Using Text and Image Prompts".

作者:Timo Lüddecke, Alexander S. Ecker

发表单位:哥廷根大学计算机科学与CIDAS研究所、哥廷根MPI动态与自组织研究所

会议/期刊:CVPR2022

一、研究背景

传统的图像分割模型通常局限于固定的物体类别,并且在引入新类别时需要重新训练模型,这非常耗费时间和资源。本文的动机是提出一个灵活的分割模型,能够根据任意的文本或图像提示在推理时动态适应,解决了需要重新训练以适应新类别和复杂查询的问题。例如,家庭AI机器人会遇到可能涉及到没见过的对象类型或者不常见的用户表达形式。

使用CLIP一次性完成三个任务

不同分割任务的比较。负为不包含目标的样本(或多标签分割中的目标之一)。除经典分割外,所有方法在推理时动态地适应了新目标。

二、整体框架

本文提出的CLIPSeg系统基于预训练的CLIP模型,作为其基础网络。CLIPSeg通过增加轻量级的基于变换器的解码器,支持三种常见的分割任务:

  • 指代表达分割(使用描述性文本查询),

  • 零样本分割(分割未见过的物体类别),

  • one shot分割(通过图像示例定义类别)。

该方法利用CLIP的文本-图像共享嵌入空间,允许模型同时处理文本和图像输入。解码器学习生成基于查询的二值分割图。

Clipseg的体系结构:使用一个Transformer扩展了冻结参数的CLIP模型(红色和蓝色),该Transformer基于支持图像或支持文本提示将查询图像进行分割。 分割Transformer和投影层(均为绿色)均在PhraseCut或PhraseCut+数据集上训练。

三、核心方法

3.1 模型结构(解码器)

CLIPSeg的模型架构基于CLIP(Contrastive Language-Image Pretraining)模型,它使用视觉编码器(ViT-B/16)作为骨干网络,并在其上添加了一个轻量级的编码器解码器来进行图像分割。

  • CLIP模型:CLIP通过联合训练图像和文本,使得图像和文本在同一嵌入空间内进行表示,这使得它能够处理文本和图像的输入,具有强大的泛化能力。

  • 变换器解码器:解码器是一个简单的、完全基于Transformer的结构,类似于U-Net风格的跳跃连接。其通过输入来自CLIP网络的激活值,并将其投射到解码器的输入中。这些激活值被添加到解码器的内部激活中,每个变换器块都接收到这些输入。

  • 二值分割:解码器通过应用线性投影,生成一个二值分割图,将图像中的前景和背景进行区分。解码器的输入是通过条件向量进行调节的,条件向量可以通过两种方式获取:

(1)使用CLIP的文本变换器嵌入获取文本查询。

(2)使用CLIP的视觉变换器获取图像查询。

  • 图像大小处理:为了处理不同大小的图像输入,作者提出了一种插值方法,使得模型能够处理比CLIP训练时图像更大的输入。原本,CLIP模型的位置嵌入是基于固定图像大小训练的,这意味着CLIP只能处理特定大小的图像输入。如果图像尺寸超过或小于训练时使用的大小,位置嵌入就无法正确表示这些图像。CLIPSeg对位置嵌入进行线性插值,从而放大或者缩小空间顺序。

  • 注意,包括图文对齐也是插值实现,比如s是图像嵌入,t是文本嵌入,那么条件向量(融合的)就是as+(1-a)t,其中a是随机采样的超参数,范围在0-1,这种a可以作为一种训练增强方法。

3.2 PhraseCut + Visual prompts (PC+)

在传统的PhraseCut数据集上进行训练的基础上,本文提出了扩展版的PhraseCut+(PC+),通过增加视觉支持样本和负样本来增强数据集的多样性。

  • PhraseCut数据集:原始PhraseCut数据集包含340,000多个短语,每个短语都与图像中的某个物体实例相关联。每个短语描述了图像中的对象及其关系。这个数据集主要用于训练文本查询驱动的图像分割。

扩展版PC+:

  • 视觉支持样本:对于每个文本查询,随机选取与该查询相匹配的图像样本作为视觉支持。如果该查询在数据集中出现的图像数量为1(即查询唯一),则直接使用文本查询。

  • 负样本:引入了负样本,在这些样本中,替换掉与目标对象不匹配的文本查询。这有助于使模型更好地学习到哪些对象不与查询相关。

  • 图像-文本插值:通过图像-文本插值(interpolation)将文本查询与图像示例进行结合,创建新的训练数据样本。插值的条件向量在训练中作为数据增强的一种策略。

3.3 Visual Prompt Engineering

视觉提示工程 旨在设计更有效的方式来将图像和掩码结合,以便传递关于目标对象的信息给模型。

  • 传统的提示设计:在传统的CNN-based一one shot语义分割中,通常使用掩码池化(masked pooling)来计算原型向量。这种方法通过对图像中特定区域进行池化来获得一个代表目标对象的向量。

  • 基于Transformer器的提示设计:由于Transformer不仅仅依赖于图像的局部特征,还包括了CLS token等全局特征,因此不能直接采用传统的掩码池化方法。作者提出了视觉提示设计,即将图像和掩码合成新的图像,再输入到模型中进行处理。这类似于NLP中流行的“提示工程”方法。

  • 提示设计实验:作者尝试了几种不同的图像-掩码组合方式,并发现通过减弱背景亮度、模糊背景和裁剪到目标区域的组合,能够显著提高模型的表现。最终的最佳组合是在图像中裁剪出目标区域、将背景进行模糊处理,并减少背景亮度。

将图像与关联对象掩码组合以构建视觉提示的不同形式对CLIP预测(条形图)具有很大的影响。作者在原始图像(左列)中使用目标对象(橙色)的概率和系统分析的mask方法的差异。

Visual prompt engineering:在 1,600 个样本中,不同形式的图像和mask组合对目标概率的平均改善。裁剪指根据掩码指定的区域裁剪图像,“BG ”指背景。

上表中,作者指出通过在令牌上应用掩码来只限制掩码区域的令牌与CLS令牌交互,或者仅与某些特定的令牌进行交互。如只限制最后一层(layer 11)中的令牌之间的交互,或者对所有层的令牌交互进行约束。

结果表明,这种方法的效果并不理想,仅仅限制与CLS令牌的交互只取得了较小的改进,而限制所有令牌的交互反而大大降低了性能。也就是说,这种简单的掩码策略并未有效提高模型的性能,甚至在某些情况下反而有负面影响。

作者得出的结论是,仅通过这种简单的掩码约束方式结合图像和掩码信息是不足够的。要有效地将掩码信息引入到视觉变换器中,需要采取更复杂的策略来结合图像和掩码。

四、实验结果

 

PhraseCut数据集的结果

 

使用10个没见过的类别的Pascal-VOC上的Zero shot分割性能

 

Pascal-5i上的One shot性能

 

Coco-20i(经phrasecut训练的CLIPseg)上的One shot性能

 

Pascal-5i上的Zero shot性能

 

定性预测,黑暗表示预测强度。广义提示(左)在涉及与动作相关的属性或新对象名称时偏离了PhraseCut提示。

 

消融实验

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词