SAM突破多模态分割 | SAM2+语义记忆模块,实现跨模态语义理解登顶DELIVER

大模型向量数据库机器学习

点击下方卡片,关注「集智书童」公众号

点击加入👉「集智书童」交流群

picture.image

picture.image

picture.image

picture.image

picture.image

picture.image

导读

研究主要集中在多模态语义分割(MMSS)领域,其中像素级预测是通过由不同传感器捕获的多个视觉模态得出的。最近,大型视觉模型Segment Anything Model 2(SAM2)在图像和视频上均展示了强大的零样本分割性能。当将SAM2扩展到MMSS时,出现了两个问题:

如何将SAM2适应多模态数据?

如何使SAM2更好地理解语义?

受视频中的跨帧相关性的启发,作者提出将多模态数据视为表示同一场景的帧序列。作者的关键思想是“记忆”模态无关信息和“记忆”与目标场景相关的语义。为了实现这一点,作者将SAM2的记忆机制应用于多模态数据以捕获模态无关特征。同时,为了记忆语义知识,作者提出了一种仅用于训练的语义原型记忆模块(SPMM),以存储训练过程中的类别级原型,从而促进SAM2从实例分割到语义分割的过渡。通过迭代地在全局原型和局部原型之间施加典型适应损失,以对齐和细化SAM2的语义理解。

大量的实验结果表明,作者提出的MemorySAM在合成和真实世界基准测试(DELIVER上为

,MCubeS上为

)上均显著优于SoTA方法。源代码将公开提供。

  1. 引言

在现实世界的应用中,单模态数据在极端环境中常常面临重大挑战。例如,在夜间驾驶[28]时,低光照条件[26, 48]和运动模糊[67]会导致RGB摄像头丢失关键细节,从而降低图像质量。为了解决这些局限性,有必要引入更多的视觉模态,如深度数据[3, 44]、事件数据[70, 75]等。这些互补模态可以显著提高分割模型的鲁棒性和准确性,尤其是在具有挑战性的场景中[71, 72, 79]。

同时,Segment Anything Model 2(SAM2)在实例分割领域取得了新的突破,并在图像和视频的零样本场景中展现出了令人印象深刻的性能[42]。SAM2引入了一种记忆机制来捕捉帧之间的关系,使其能够有效地处理视频数据。当将SAM2应用于多模态语义分割(MMSS)时,出现了两个直观的挑战,包括:

将SAM2适配到多模态数据:每种模态都有其独特的特征,而SAM2的预训练模型是为RGB数据量身定制的。

提升语义理解能力:尽管SAM2在实例分割方面表现出色,但在获取和利用语义知识进行语义分割任务方面存在局限性。

为解决这些挑战,作者提出了一种新的MemorySAM框架,该框架利用了一种新的多模态处理范式,并应用语义理解模块,同时重用SAM2模型的记忆机制。作者的关键思想是“记忆”与模态无关的信息和“记忆”与目标场景相关的语义。与模态无关的信息侧重于场景的全局结构和共同特征,而场景特定的语义则强调详细的目标类别和属性。

对于挑战

,作者首先微调SAM2的图像编码器,以使SAM2能够适应多模态数据。与最近最先进(SoTA)的方法不同,这些方法同时输入配对数据,MemorySAM将多模态数据视为一系列帧,应用SAM2的记忆机制来捕获跨模态的与模态无关的特征。具体来说,多模态序列中的当前模态整合了来自记忆编码器的先前模态的特征。通过这种方式,MemorySAM有效地克服了挑战并捕获了与模态无关的特征。

对于挑战

,作者提出了一种语义原型记忆模块(SPMM),以帮助SAM2存储语义知识。作者构建了类别 Level 的语义原型,在迭代过程中封装类特定的知识。在图像编码器特征中,只有与类别相关的像素被传递到相应的原型中,而其他像素则被掩蔽。在迭代过程中,存在两种类型的原型:当前原型和全局原型。当前原型是从当前迭代特征中派生出来的。全局原型基于当前原型使用动量进行更新。通过通过原型知识自适应损失将两个原型拉近,将语义知识注入SAM2,从而增强SAM2的语义理解能力。通过这种仅用于训练的SPMM,在迭代过程中将语义知识引入SAM2,而不增加可学习参数。

在两个公开数据集上进行的广泛实验表明,MemorySAM在MMSS方面优于SoTA方法[40, 64]。

总体而言,作者的贡献如下:

    1. 作者提出了一种新的范式来处理多模态数据,通过将成对的多模态数据视为表示同一场景的帧序列;
    1. 作者提出了一种新颖的框架,即MemorySAM,这是首次将SAM2的记忆机制应用于多模态语义分割。
    1. 提出了knowledge adaptation loss.
    1. 作者在两个常被考虑的数据集上进行了广泛的实验,包括现实世界和合成场景。MemorySAM在大多数SoTA方法中表现卓越,DELIVER上达到了65.38%,MCubeS上达到了52.88%。
  1. 相关工作


2.1. 段落任何模型(SAM)系列

SAM [21] 和 SAM2 [42] 为实例分割任务带来了令人惊喜的进步。与 SAM 不同,SAM2 引入了一种记忆机制来捕捉帧之间的关系,使模型具备了处理视频的能力。基于 SAMs 的现有工作可以分为两个方向:改进 SAMs 的框架 [9, 17, 24, 56] 和 SAMs 的应用 [13, 18, 22, 27, 30-32, 41, 49, 51, 55]。

对于前者,研究行人试图基于其现有局限性来优化SAMs。特别是,AMSAM[24]设计了一种自动 Prompt 策略,以增强模型的分割性能并加速训练过程中的收敛。对于后者,研究行人试图针对特定场景和任务优化SAMs。当将SAMs应用于医学图像[13, 31, 41, 49]、遥感图像[27, 30, 55]等时, Adapter [6, 15]和LoRA[16]被应用于提高SAMs在特定领域的性能,随后添加一些针对性模块。此外,当将SAMs应用于图像翻译[18]、多模态语义分割[22, 32, 51]等其他任务时,一些新颖的框架被提出以处理任务差异。然而,它们仅将SAMs视为整个框架的组件,忽略了SAM2的特定特性,导致其全部潜力不可避免地损失。

相比之下,MemorySAM旨在探索SAM2在多模态语义分割(MMSS)方面的独特能力,而不仅仅是简单地使用它。从多模态的角度来看,作者将多模态数据视为表示同一场景的帧序列,这与SAM2的记忆机制完美契合。从语义角度来看,作者引入了一个语义原型记忆模块,该模块无需额外的可训练参数,专注于增强SAM2理解和利用语义信息的能力。

2.2 多模态语义分割

语义分割是计算机视觉中的一个关键任务,其目标是分类图像中的每个像素[34]。通常,大多数相关研究应用基于RGB数据的编码器-解码器架构进行语义分割[12,19, 35, 36, 38,39,47, 54, 60,61]。然而,考虑到单模态数据的有限信息和实际应用中对鲁棒性的要求,引入了其他模态的数据,如深度[3, 5,7, 44, 59]、热[8, 23, 50, 68,69, 78]、激光雷达[2, 11]和事件数据[20, 53, 58, 62]。最近,随着多模态数据集的改进和新相机的开发,相关研究的焦点逐渐从双模态转向多模态,例如MCubeSNet[25]、CMX[63]、CMNeXt[64]和MAGIC[73]。

在多模态数据成对输入的前提下,现有的多模态语义分割方法可以分为三种类型:以RGB为中心、RGB非中心化和以X为中心。以RGB为中心的方法将RGB模态作为中心,其他模态作为辅助[33, 63, 64]。RGB非中心化方法平等对待各个模态,并使用对称结构融合多模态特征[4, 52, 53, 65, 66, 77]。以X为中心的方法通过测量每个模态的贡献来确定主要模态[73]。特别是,MAGIC[73]根据与聚合特征的相似度对多模态特征进行排序,实现了更高精度和更强鲁棒性的语义分割。不同之处在于,在作者的工作中,作者试图调整大型视觉模型以用于MMSS。此外,作者从序列的角度重新思考了多模态数据的数据利用,这与CMNeXt(RGB为中心)和MAGIC(X为中心)有显著不同。

  1. 方法

本文旨在利用引人注目的SAM2模型解决多模态语义分割(MMSS)任务,并介绍了一种新颖的MemorySAM框架。如图2所示,MemorySAM由LoRA微调的SAM2图像编码器、记忆机制和语义原型记忆模块(SPMM)组成。

picture.image

首先,作者将成对的多模态数据视为一系列帧,并按顺序使它们通过整个框架。整个框架从SAM2图像编码器的微调开始(第3.2节)。然后,将原始SAM2的记忆机制适应到MMSS(第3.3节)。MemorySAM的核心洞察是将多模态数据视为一系列帧。对于每一帧,特征在解码操作之前通过记忆注意力学习从先前帧中提取模态知识。第三,由于SAM2的实例分割能力与目标MMSS任务之间的知识差距,作者在图像编码器和 Mask 解码器之间引入了一个基于原型学习方法的语义知识记忆模块(第3.4节)。这有效地存储了语义知识,极大地增强了MemorySAM理解语义的能力。

3.1 SAM2的架构

SAM2应用了MAE预训练的Hiera [1, 43] 作为图像编码器,逐步降低空间分辨率,并提供每个阶段的多种尺度特征。以输入图像的分辨率为

为例,第i阶段的特征图分辨率是

,其中

。在SAM2的编码过程中,产生了3种类型的特征。然后,如图3所示,通过卷积层和特征金字塔网络(FPN)从第3阶段和第4阶段的特征融合中,获得了High-Level特征

。同时,通过卷积层获得了高分辨率特征

。值得注意的是,只有融合的特征

经过记忆注意力处理,而

则被传递到 Mask 解码器,以提供高分辨率细节。

picture.image

SAM2提出了一种记忆机制来捕捉帧之间的关系,包括记忆编码器模块和记忆注意力模块。记忆编码器用于生成每个帧的记忆特征,而记忆注意力则用于将当前特征与先前帧进行整合。直观上,MemorySAM直接重用SAM2的记忆机制来处理多模态输入数据。至于 Mask 解码器,MemorySAM将输出类别的数量适应于目标场景,且不引入额外的参数。

3.2. 微调SAM2的图像编码器

给定来自

个模态的多模态数据

,其中

分别代表通道数、高度和宽度。此外,

表示输入数据的总模态数,而

代表特定的模态,例如 RGB。最初,输入批次

被重新表述为一系列帧

,这意味着多模态数据序列是依次通过框架,而不是成对地。

鉴于SAM2图像编码器中可训练参数的数量众多,并且旨在保留其预训练知识,作者采用LoRA技术进行微调。具体来说,作者使用一个LoRA层来更新队列和值指标。如公式1所示,LoRA层由多个低秩矩阵组成:

,其中

被添加到原始队列指标中,如公式2所示,这允许以更低的训练成本有效地适应基于窗口的多头自注意力。值得注意的是,在训练过程中,来自

个模态的数据共享相同的 LoRA 层,同时 Backbone 参数被冻结。

3.3 记忆机制

对于记忆部分,作者在训练过程中首先开始解冻 Mask 解码器、记忆编码器和记忆注意力。值得注意的是,

直接经历 Mask 编码操作,而不通过记忆注意力,而剩余的融合特征

(对于

)在进入 Mask 解码器之前首先通过记忆注意力。对于每个特征

,作者使用以下方程计算两个辅助变量:第

个先前特征

和第

个先前位置编码

一旦获得特征和位置嵌入,由

组成的记忆编码器的输出将被传递到记忆注意力模块。记忆注意力操作,记作

,通过使用先前帧的记忆特征来计算每个特定模态的特征。这个过程允许从不同模态中提取与模态无关、针对场景的特征,如下面的方程所示:

作者将从记忆注意力中获得的特征集定义为

。随后,将得到的特征

输入到 Mask 解码器,该解码器生成相应的预测 Mask

,其中

。对于所有

,将 Mask

输入到记忆解码器,该解码器生成后续帧记忆注意力计算所需的视觉特征

和位置编码

整个过程如图4所示。例如,如果输入由3种模态组成。首先,它们都将通过图像编码器形成

。然后,

将直接通过 Mask 解码器生成

。对于第二种模态,

将首先与

pos 进行记忆注意力操作,后续操作与第一种模态一致。对于第三种模态,

将首先与

和来自

合成的

进行记忆注意力操作。考虑到第三种模态是最后一帧,它不需要通过记忆注意力操作。

picture.image

此外,即使记忆机制捕捉了不同模态之间的模态无关知识,这些知识也是分布到所有模态的特征中。因此,仅选择最后一个模态的预测 Mask 作为最终预测 Mask 会导致信息丢失。为了抑制信息损失并确保MemorySAM的鲁棒性和准确性,作者在最终预测 Mask 的生产过程中应用了记忆残差连接,如公式6所示。最终的预测 Mask 来自所有模态预测 Mask 的平均值,尽可能保留提取的有效信息。

3.4 语义原型记忆模块(SPMM)

在记忆了模态无关的场景信息后,作者将SAM2适配到MMSS,希望能够在训练过程中记忆语义知识。因此,作者引入了语义原型记忆模块,该模块基于原型学习和动量学习设计。通过为每个目标类别构建原型并使用

进行记忆,MemorySAM理解语义的能力得到进一步增强。

在重新审视实例分割和语义分割任务时,它们之间的主要区别在于理解不同类别语义的能力。因此,自然地提出了基于原型学习方法的语义分割记忆模块,以增强MemorySAM的语义理解能力。原型学习是一种主要应用于分类任务和无监督域适应语义分割任务的机器学习方法[14, 29, 57, 74, 76]。首先形成原型来代表不同类别的典型实例,有助于对新样本的分类。

在作者的语义原型记忆模块中,作者提出了两个关键组件:当前原型和全局原型。在每次迭代中,Mask E Rixh×w 首先被下采样到

,以匹配图像编码器输出的

的高度和宽度。然后,

通过卷积操作其通道 32,得到

。接下来,根据公式 7 生成

,并由

进行 Mask 处理,生成

,其中

代表类别数量。对于类别

中第 j 个元素的 Mask 值如公式 8 所示。

的计算如公式 9 所示。

基于

,进行全局平均操作以生成当前原型

,如公式10所示。在每次训练迭代后,每个全局原型根据公式11进行更新,其中

是动量系数。全局原型存储了每个类的语义知识,且不包含任何可训练参数。为了将此类知识引入MemorySAM,作者在每次训练迭代中对全局原型和当前原型施加损失约束。因此,作者引入

以最小化两个原型之间的距离,如公式12所示,其中

,

是 Pglob, Pcur 的展平结果。

除了

外,还引入了在线硬样本挖掘交叉熵损失

[45],该损失函数更关注难以预测的像素。定义真实标签为

,其中

,255 表示忽略标签。整体损失函数如式(13)所示,其中

是一个超参数,用于控制

的相对重要性。值得注意的是,SPMM 只在训练期间工作,而其他组件在训练和验证期间都工作。

  1. 实验

4.1 数据集

DELIVER [64]:DELIVER是一个为多模态自动驾驶场景设计的大规模语义分割数据集。基于CARLA模拟器[10],收集了RGB(R)、深度(D)、事件(E)和激光雷达(L)数据。DELIVER由7,885张分辨率为

的前视图图像组成。此外,数据集还包括多云天气、雾天、夜间天气、雨天以及传感器故障(如运动模糊、过曝等)的情况。整个数据集分为3部分,共25个类别:3,983个用于训练,2,005个用于验证,1,897个用于测试。MCubeS [25]:MCubeS是一个用于材料语义分割的多模态数据集。在具有挑战性的户外场景下,收集了500个图像集。每个图像集的分辨率为

,包含4种模态:RGB、近红外(NIR)、由线性偏振角(AoLP)和线性偏振度(DoLP)表示的偏振。整个数据集分为3部分,共20个类别:302个用于训练,96个用于验证,102个用于测试。

4.2 多模态语义分割结果

在比较实验中,作者选择了CMNeXt [64]、CWSAM [40]、SAM-LoRA [79]和MLESAM [79]作为主要竞争对手。CMNeXt [64]是MMSS任务中最具代表性和竞争力的框架,而CWSAM则是将SAM扩展到语义分割任务中最具代表性和开源的工作之一。SAM-LoRA [79]基于低秩自适应对SAM进行微调。鉴于SAM的训练基于单模态数据,直接比较是不公平的。因此,作者使用经过目标数据微调的SAM-LoRA进行对比。此外,作者还在比较实验中引入了MLE-SAM [79],它使用与MemorySAM完全相同的 Backbone 网络。然而,MLE-SAM应用了几个额外的组件,如辅助分割头、路由器等,极大地增加了参数数量。在没有添加额外可训练参数的情况下,作者试图探索MemorySAM与MLE-SAM等方法之间的性能差距。为了公平起见,在评估时作者保持每个模型的参数数量相似。因此,MiT-B、ViT-B和Hiera-

分别作为CMNeXt、CWSAM和MemorySAM的 Backbone 网络。

DELIVER实验结果:在DELIVER的比较实验中,作者评估了模型在RGB、RGB-Depth、RGB-Depth-Event和RGB-DepthEvent-LiDAR模态上的性能。

picture.image

表1中的结果显示了作者提出的MemorySAM的有效性。当将所有模态作为输入时,MemorySAM相较于CMNeXt和CWSAM,将mloU提升了6.20%和9.95%。即使与MLE-SAM相比,MemorySAM仍然实现了更高的mIoU,达到65.38%。这些结果表明MemorySAM在多模态自动驾驶场景中具有惊人的能力,证明了作者对第1节中提出的挑战的解决方案的有效性。

picture.image

图5和图6展示了DELIVER不同模态组合的语义分割结果。

picture.image

在MCubeS上的结果:在MCubes的比较实验中,作者评估了模型在RGB-AOLP、RGB-AOLP-DOLP和RGB-AOLP-DOLP-NIR模态上的性能。表2中的结果进一步证明了MemorySAM框架设计的高效性。当整合所有模态时,MemorySAM达到了mIoU为52.88%,超过了CMNeXt的16.72%和MLESAM的1.86%。MCubeS上的结果突出了MemorySAM在多模态材料语义分割方面的熟练程度,进一步探索了MemorySAM的潜力。

picture.image

4.3 消融研究

消融研究旨在证明MemorySAM每个组件的有效性。此外,还进行了额外的消融研究,以寻找语义知识记忆模块的最佳动量和

的最佳权重。所有消融研究中的实验均在DELIVER [64]上,采用RGB-Depth模态进行。

所有模块的有效性:表3评估了记忆机制和MemorySAM的SPMM的影响。作者还评估了记忆机制中记忆残差连接的影响。如表3所示,与仅具有共享LoRA层和未冻结记忆机制的SAM2相比,记忆残差连接使得mloU提高了0.71%。与仅具有共享LoRA层和记忆残差连接的SAM2相比,未冻结的记忆机制使得mloU提高了3.62%。最后但同样重要的是,语义知识机制实现了mIoU的另一次提高,提高了1.07%。所有性能提升都验证了所有提出模块和组件的有效性。

picture.image

超参数敏感性分析:对于语义知识记忆模块的动量,作者分别以0.05、0.1、0.2和0.4的值进行消融实验。

picture.image

如表4所示,当动量值超过或低于0.2时,mIoU均下降,证明0.2是最佳动量值。对于

的权重,在确保

之间的差异不过大的前提下,作者分别以0.125、0.25、1、4、8和16的值进行消融实验。如表5所示,根据性能表现,作者选择1作为最终的权重值。

picture.image

t-SNE结果:图7展示了多模态特征和融合的MemorySAM特征的t-SNE可视化[46],并展示了所有模态下特征的分离和聚类。如图7所示,记忆机制使得同一类别的特征聚类更加紧凑,不同类别的特征分离更加清晰,这进一步证明了记忆机制的有效性。

picture.image

4.4. 讨论

多模态融合带来更好的性能?值得注意的是,如表1和图8所示,当将激光雷达添加到输入中时,MemorySAM实现了显著的性能提升,而CMNeXt、CWSAM和SAM-LoRA在以RGB-深度-事件-激光雷达模态组合作为输入时,其mIoU值开始下降,这证明了MemorySAM处理由超过3种模态组成的数据的惊人能力。这一结果进一步证明了作者的观点,即成对的多模态数据可以被视为一个帧序列,如第3.3节所述。一方面,如表1和2所示,除了在DELIVER中添加事件模态外,当模态数量增加时,多模态数据的序列特征进一步增强。另一方面,当面对更多模态时,记忆机制学习模态无关特征是有益的,这相当于为记忆机制提供了更多的训练样本。

picture.image

与MLE-SAM的比较:此外,考虑到MLE-SAM和MemorySAM具有相同的 Backbone 网络,作者进一步计算了MLE-SAM和MemorySAM的可训练参数数量,以进行定量比较。如表6所示,在RGB-Depth-Event-LiDAR模态组合下,MemorySAM的可训练参数数量是MLE-SAM的2/3。然而,MemorySAM的mIoU值比MLE-SAM高出1.3%。对于RGB-Depth和RGB-Depth-Event模态组合,MemorySAM的mIoU得分与MLE-SAM非常接近,分别落后0.09%和0.27%。至于Mcubes,Memory-SAM在3种模态组合下均优于MLESAM,这进一步证明了作者设计的有效性。因此,可以证明MemorySAM的设计在MMSS中比其他框架更有效地探索了SAM2的潜力。

picture.image

冻结部分的选择:在MemorySAM中,作者直接微调图像解码器、内存编码器和内存注意力。为了更清晰地展示,作者进行了多次讨论实验,通过冻结内存机制和图像编码器以及内存机制部分来进一步验证其合理性。如表7所示,冻结SAM2的图像编码器和内存模块的参数会导致性能显著下降。因此,可以证明SAM2的初始权重不适合MMSS,这些权重来自单模态训练数据,即SA-1B RGB数据集[42]。考虑到不同模态的数据特征差异很大,有必要微调上述提到的3个组件以实现跨模态适应。

picture.image

  1. 结论

在本文中,作者首次尝试从视频的角度处理多模态数据,并将记忆机制应用于MMSS。作者专注于解决将SAM2应用于MMSS的两个问题:

如何将SAM2适配到多模态数据?

如何使SAM2更好地理解语义?因此,作者重新实现了SAM2现有的记忆机制,用于记忆多模态知识,并提出了语义知识记忆模块(SPMM)用于记忆语义。作者提出的MemorySAM在三个公开的多模态基准测试中超越了之前最先进的MMSS方法,包括现实世界和合成场景。

通过第4.4节中的额外实验,作者发现了一些有趣的结果:(1)随着模态的增加,MemorySAM的分割性能更好;(2)通过适当的设计,SAM2可以在MMSS上获得更好的性能,而无需添加大量额外的参数;(3)除了图像编码器外,SAM2中更多组件进行微调,SAM2在MMSS上的性能越好。

参考

[1]. MemorySAM: Memorize Modalities and Semantics with Segment Anything Model 2 for Multi-modal Semantic Segmentation

picture.image

扫码加入👉「集智书童」交流群

(备注:方向+学校/公司+昵称)

picture.image

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
火山引擎大规模机器学习平台架构设计与应用实践
围绕数据加速、模型分布式训练框架建设、大规模异构集群调度、模型开发过程标准化等AI工程化实践,全面分享如何以开发者的极致体验为核心,进行机器学习平台的设计与实现。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论