点击下方卡片,关注「集智书童」公众号
导读
SAM2已成为各种针孔成像分割任务中的强大基础模型。然而,当将其应用于
领域时,针孔(
)与全景图像(
)之间显著的视场(FoV)差距带来了独特的挑战。该应用的两个主要问题包括:
-
- 领域间大FoV差异带来的不可避免扭曲和物体变形;
-
- 原始SAM2无法提供的像素级语义理解。
为了解决这些问题,作者提出了一个新颖的全能SAM框架,这是首次尝试将SAM2应用于全景语义分割。具体来说,为了弥合第一个差距,OmniSAM首先将全景图划分为一系列 Patch 。然后,这些 Patch 以类似于视频分割任务中的方式被处理为图像序列。作者利用SAM2的内存机制来提取跨 Patch 对应关系,这些对应关系嵌入跨FoV依赖关系,从而提高特征连续性和沿 Mask 边界的预测一致性。对于第二个差距,OmniSAM微调预训练的图像编码器,并重新利用 Mask 解码器进行语义预测。还引入了一个基于FoV的原型适应模块,具有动态伪标签更新机制,以促进记忆和 Backbone 特征的对齐,从而提高模型在不同大小源模型上的泛化能力。
大量的实验结果表明,OmniSAM在性能上显著优于最先进的方法,例如,在SPin8到SPan8上达到
(
),在CS13到DP13上达到
(
)。
- 引言
FoV
,由全景相机带来,使其在自动驾驶和虚拟现实等众多应用中越来越受欢迎[1, 7, 9]。与视场受限的针孔相机不同,全景成像能够实现对环境的更全面感知。因此,最近的研究工作主要集中在利用这一优势来增强智能系统的场景理解。通常,全景相机以球形格式捕获
的视觉数据,并将其投影到二维平面表示上,以便与传统成像 Pipeline 兼容。与针孔图像不同,这一投影过程由于像素的非均匀分布,不可避免地引入了扭曲和物体变形。此外,由于缺乏大规模、精确标注的数据集,开发有效的全景分割模型具有挑战性,因为全景图像标注仍然是一项劳动密集型任务。因此,提出了无监督领域自适应(UDA)方法用于全景语义分割[13, 36, 39-42],以弥合针孔图像域与全景图像域之间的领域差距。
近期,SAM2在图像和视频实例分割领域取得了突破,展现出卓越的无监督分割能力。这在其在自动驾驶[15, 26]、遥感[17, 18, 32]和医学成像[8, 20, 23, 29]等领域的潜在应用方面引起了广泛关注。特别是,最近的研究表明SAM2在语义分割任务中的有效性,例如用于合成孔径雷达图像语义分割的Classwise-SAM-Adapter[22]和多模态语义分割的MLESAM[43],进一步强调了其强大的适应性。直观地,这些成功引发了一个引人深思的问题:“SAM2能否在
图像语义分割中有效应用?”
然而,将SAM2直接应用于全景语义分割的UDA任务并非易事,存在两个显著问题,即:
-
- 针孔域和全景域之间显著的视场角(FoV)差距,通常为
与
,这增加了在不同成像模式之间进行特征对齐的复杂性; 2. 2. SAM2本身的局限性,它提供实例级 Mask ,但缺乏精确语义分割所需的语义知识。
为了解决这些挑战,作者提出了OmniSAM框架,这是首次尝试将SAM2应用于全景语义分割任务。所提出的OmniSAM框架以通过LoRA微调的SAM2图像编码器作为 Backbone 网络,并集成了定制的语义解码器以进行语义分割。应用基于视场角的典型适应(FPA)方法和动态伪标签更新策略,以实现针孔图像序列和全景图像序列之间有效的跨域特征对齐。
具体来说,作者为针孔图像(源域)和全景图像(目标域)使用相同的处理流程,其中每个原始图像都通过滑动窗口划分为重叠的图像块序列,这与先前的方法[13, 36, 39-42]有显著不同。然后,分别使用针孔图像和全景图像的预处理序列进行源模型训练和目标域自适应。由于图像序列类似于视频帧,可以自然地利用SAM2的记忆机制。SAM2的记忆编码器捕获输入图像序列内的跨图像块对应关系,并将它们编码成记忆特征。随后,记忆注意力(MA)模块检索这些存储的特征,增强了跨图像块的理解。
基于假设,不同输入图像序列中相同的 Patch /帧表现出共享的畸变、物体变形和统计特性,作者的FPA方法提取每帧的原型(即特征中心)进行对齐。通过最小化这些原型之间的欧几里得距离,强制执行跨域的高维特征表示一致性。帧原型在每次自适应步骤中迭代和相应地更新。此外,为了减轻虚假伪标签带来的负面影响,作者还引入了一种动态伪标签更新机制,以确保其迅速细化,从而促进目标域的自监督学习。
作者对提出的OmniSAM框架进行了广泛的实验,并在Pinhole-to-Panoramic场景中将其与最先进的(SoTA)方法[36, 39, 42]进行了比较。结果表明,OmniSAM在室内场景中相对于SoTA方法性能提升了10.22%,在室外场景中提升了6.58%,且训练参数小于26MB。
总之,作者的贡献可以概括为:
-
- 作者提出了OmniSAM框架,首次尝试探索SAM2在针孔到全景语义分割中的潜力。
-
- 作者引入了一种动态伪标签更新策略,以减轻在适应阶段由虚假伪标签带来的负面影响。
-
- 作者提出了一种新颖的FPA模块,以有效对跨域特征进行对齐,并增强模型对全景图像中畸变的鲁棒性。
-
相关工作
2.1 段件任何模型2
SAM2 [24] 是SAM [14]的第二代产品,旨在图像和视频任务中进行实例级分割。在50.9K个视频和642.6K个masklets上进行训练,SAM2具备强大的图像编码器和记忆驱动模块,用于捕捉跨帧关系。SAM的研究主要集中在改进实例级分割 [33] 并将其应用于下游任务,如医学成像 [20, 23] 和遥感 [22]。尽管SAM2能够生成高质量的实例级 Mask ,但它仍缺乏语义知识。为了解决这个问题,引入了 Adapter 和LoRA层进行领域微调 [4, 5, 12],以实现知识迁移,提高特定领域的性能 [22, 43]。在多模态语义分割中,一些最近的研究 [16, 21, 30] 利用预训练的SAM/SAM2 Backbone 网络从不同模态中提取高维表示。这些方法引入了新的模块来融合这些特征,以实现最优的跨域表示。然而,将这些方法泛化到其他领域仍然具有挑战性。在本文中,作者应用SAM2进行全景语义分割中的无监督域适应(UDA)。作者提出了OmniSAM框架,该框架对SAM2的架构和记忆模块进行了调整,以增强知识迁移。
2.2 全景语义分割的UDA
领域自适应增强了模型对未见领域的泛化能力,并在全景语义分割 [35-42] 中得到了广泛应用。它可以分为三种类型:对抗学习 [3, 11, 27]、伪标签 [37, 38] 和原型自适应 [34-36, 39-42]。对抗训练通过使用判别器迫使目标模型在不同领域生成不可区分的特征,从而捕捉领域不变特征。伪标签为目标领域生成自监督标签。GoodSAM [37] 和
[38] 使用SAM对这些标签进行细化,为目标模型提供额外的知识。原型方法在领域之间对齐High-Level特征中心。先前的方法 [35-42] 专注于语义细节,以及原型提取过程中全景视场(FoV)的畸变。然而,这些方法将等距圆柱投影(ERP)图像或切线投影(TP)视为针孔相机图像,并将整个图像无特定设计地传递给模型,导致跨领域存在显著的原型差距。为了更好地适应SAM2的全景图像并实现高效的领域自适应,作者采取了一种完全不同的视角来处理目标全景图像,通过滑动窗口裁剪策略生成重叠的视场序列的 Patch 。因此,引入了一个FPA模块,用于跨领域原型自适应,该模块使用具有不同视场的 Patch 。
- 方法
3.1 概述
如图2所示,作者将源域定义为
,目标域定义为
。给定一个源单孔图像
和一个目标全景图像
,作者采用滑动窗口策略将图像裁剪成重叠序列
和
,其中
表示块索引。OmniSAM
由两个部分组成:一个图像编码器
和一个定制的 Mask 解码器
。
编码器
按顺序处理输入块序列,提取不同分辨率下的多尺度特征——高、中、低——分别表示为
、
和
。如果启用内存注意力,低分辨率嵌入
由存储在内存库中的过去内存嵌入条件化。然后解码器
融合这些多尺度特征,并生成最终的预测
或
,输入为
或
。此外,一个内存编码器将当前块输出
投影到
时刻的内存嵌入
。为了促进域适应,作者引入了一个基于视场(FoV)的原型适应模块,以实现域间的知识迁移。
3.2. SAM2 适应
由于SAM2旨在实现可 Prompt 的图像和视频分割,并需要外部 Prompt ,如边界框或点,因此作者对图像编码器和 Mask 解码器进行了修改,以适应SAM2主干网络进行全景语义分割任务,从而实现无需外部 Prompt 的固定类别预测。
图像编码器:SAM2利用了MAE预训练的Hiera图像编码器,使得在解码过程中可以使用多尺度特征。作者对图像编码器多尺度注意力块中的 Query 层和价值层应用LoRA微调,以提取用于作者任务的语义知识,同时保持效率和有效性,所需的训练参数少于3MB。记忆机制:对于每个处理的帧,记忆编码器通过卷积模块下采样输出 Mask ,并将其逐元素添加到图像编码器最低分辨率(顶层)嵌入
,生成一个记忆嵌入。然后,这个融合表示通过额外的卷积层进行增强特征整合[24]。生成的记忆嵌入存储在模型记忆库中,其大小固定为
。在每次预测步骤中,记忆注意力使用最多
个过去的记忆嵌入来条件化当前帧特征。这是通过堆叠
个Transformer块实现的,允许模型捕捉时间依赖性,并提高帧间分割的一致性[24]。
语义 Mask 解码器:作者提出了一种利用多尺度嵌入
进行精确分割的语义解码器。首先,对这些嵌入分别应用线性投影。随后,嵌入
和
在空间上上采样以匹配
的分辨率。对齐后的嵌入随后通过卷积模块融合,以生成统一的高维表示
。最后,对
应用线性分割头以获得分割预测。
3.3 动态伪标签更新机制
在目标域处理大量 未标注 数据时,为整个数据集生成伪标签计算成本高昂,且性能提升有限。随着模型在目标域的准确率提高,定期更新伪标签变得至关重要,以防止原型过拟合并确保有效的域适应。为此,作者将适应过程划分为多个时代,每个时代包含较少的迭代次数。在每个时代内,随机选择目标域样本的小子集用于伪标签生成和后续适应。这种策略显著提高了适应效率。
如图3所示,采样图像被拼接到序列中,并以
和
分别表示的方式,在正向和反向两种方式下输入到模型中。这种双向处理为每个帧提供了不同的记忆上下文,从而产生了不同的预测图。然后,相应的输出 Mask
被聚合以进行像素级置信度评估。
图3的第二阶段展示了像素级置信度评估机制的工作原理。对于原始图像中的每个像素,作者汇总所有 Patch Level 的类别预测和logit值。[42]提出了一种方法,将不同投影的预测图整合到ERP图像中进行像素级评估。不同之处在于,OmniSAM评估预测图之间的重叠区域。上述双向预测处理进一步确保每个像素被多个 Patch 覆盖,增强了评估的可靠性。在实际实现中,构建了一个覆盖图来记录每个像素有多少个 Patch 重叠。然后,对于每个类别,作者记录总票数(即预测该类别的重叠 Patch 数量)以及这些 Patch 中的最小置信度。只有当1)所有重叠 Patch 一致投票支持该类别,并且2)该类别的最小置信度超过指定的阈值时,像素才被分配给特定的类别。否则,该像素被指定为不确定标签。这种策略确保了每个像素的最终预测既在所有重叠 Patch 中保持一致,又得到了足够高的置信度分数的支持。
3.4 基于视场角的原型适应(FPA)
作为领域自适应的预备步骤,作者首先定义了针对源域和目标域分别计算的分段损失。给定
和
,作者将它们前向传递到预训练的源模型
。
其中
和
是相应的预测图。该模型的有监督损失为:
这确保了模型通过从可靠的真值中学习类别特定的特征来维持其能力。此外,作者在动态伪标签更新阶段,将源模型的预测
投影到目标域的伪标签中:
其中
代表类别索引。然后使用自监督学习损失来优化模型:
为了有效地将知识迁移到目标域,作者提出了基于视场(FoV)的原型适应(FPA)模块,如图4所示。具体来说,在OmniSAM的解码器侧,多尺度特征图分别连接并使用卷积模块进行融合,如图2所示。
作者将得到的特征图表示为
,其中
是特征的维度,
和
分别是特征图的高度和宽度。给定相关的标签或伪标签,作者首先将这些标签调整大小到与上述特征图相同的大小。然后,在FoV序列预测中,作者计算源原型和目标原型
。
步骤
的计算如下:
表示类别
的原型,
是二值映射
的逐元素和,
是记忆库的大小。在训练过程中,全局源原型通过以下方程迭代地使用批量源原型进行更新:
其中
表示迭代次数,
代表帧索引。特别地,作者使用冻结的源模型来计算源原型。在此更新之后,使用均方误差(MSE)损失将帧
的目标原型与其全局源原型对齐,以弥合域之间的类别知识差距:
表示Frobenius范数。这驱动了源特征
和目标特征
之间的对齐。因此,学习目标模型的训练目标被定义为:
损
失
函
数
:
在目标域基于伪标签,
表示来自FPA的MSE损失,
是超参数。
作者的FPA方法在两个关键方面与之前的全景分割无监督学习方法不同:
它在每个epoch中仅从目标数据集中采样一小部分用于伪标签化和自适应。这确保了随着模型在目标域中的改进,伪标签能够及时更新,最小化错误标签的影响。
它使用冻结的预训练源模型,迭代地从源域聚合类原型。这些原型作为可靠的参考,指导目标原型与源特征空间的对齐。
- 实验
4.1 实验设置
数据集:为了评估作者提出的OmniSAM模型和通用数据集(UDA)框架,作者在包括两个真实世界pin2pan场景和一个syn2real场景的五个数据集上进行了实验。
Stanford2D3D-Pinhole:Stanford2D3D Pinhole (SPin) 数据集 [2] 包含70,496张带有13个类别标注的针孔图像。
Stanford2D3D-Panoramic:Stanford2D3D Panoramic (SPan) 数据集 [2] 包含1,413张全景图像,与SPin数据集共享相同的13个语义类别。
Cityscapes:Cityscapes (CS) 数据集 [6] 有2,979张训练图像和500张验证图像,所有图像都标注了19个语义类别。
SynPASS:SynPASS (SP) [36] 数据集是一个由9080张合成全景图像组成的合成数据集,标注了22个类别。训练集、验证集和测试集分别包含5700、1690和1690张图像。
DensePASS:DensePASS (DP) 数据集 [19] 由2,000张 未标注 的全景图像和100张用于最终测试的 Token 图像组成,与Cityscapes共享相同的19个语义类别。
UDA设置:为了与[36]和[42]保持相同的设置,作者针对SPin和SPan数据集关注8个类别,针对CS、SP和DP数据集关注13个类别。研究包含三种场景:(1) 室内Pin2Pan:SPin8到SPan8。(2) 室外Pin2Pan:CS13到DP13。(3) 室外Syn2Real:SP13到DP13。
实现细节:由于SAM2 Backbone 网络仅接受方形图像,作者设计了两个处理流程用于源模型训练,以确保在不同情况下实现泛化:一个用于矩形输入,另一个用于方形输入,如图中补充材料所示。
预处理:所有模型均在2块NVIDIA GPU上训练,初始学习率为
,采用幂次衰减策略,衰减幂为0.9。使用AdamW优化器,epsilon值为
,权重衰减为
。批处理大小设置为4(OmniSAM-L和OmniSAM-B),6(OmniSAM-S和OmniSAMT每GPU)。内存银行大小设置为9。使用滑动窗口裁剪矩形图像,得到9帧的
图像序列。滑动步长取决于图像分辨率。SPin数据集提供
图像,将其调整为
,无需滑动。同时,对于CS和SP数据集,图像分辨率为
,步长设置为128。SPan数据集包含
图像,这些图像由等距圆投影带来固有的黑色区域。因此,作者通过裁剪图像并下采样到
来去除这些冗余区域。相应的滑动步长为256。DensePASS数据集包含
图像,将其调整为
,滑动步长为384。
可训练参数:作者通过检查添加或移除记忆注意力模块的影响来评估OmniSAM模型的可训练参数。不同变体版本的OmniSAM模型的参数大小在补充材料中给出。在没有记忆注意力的情况下,通过基于LoRA的适应进行微调仅影响模型的一小部分,导致所有变体中可训练参数量最小。最小的(OmniSAMT)包含1.45MB,而最大的(OmniSAM-L)有2.81MB。相比之下,记忆注意力模块贡献了大约22.60MB的参数。具体来说,OmniSAM-T从1.45MB增加到24.05MB,而OmniSAM-L从2.81MB增加到25.41MB。
4.2. 源模型领域差距
作者通过比较标准针孔(SPin8/CS13)和全景(SPan8/DP13)设置在室内和室外场景下的性能来量化Pin2Pan域间差距。如表1所示,OmniSAM模型在所有情况下都优于 Baseline 模型。在室内场景中,OmniSAM模型展现出强大的泛化能力,无需采用适应性技术。值得注意的是,OmniSAM-L在室内全景图像上超越了Trans4PASS+-S超过13%,达到73.77%,显示出对全景图像的优越适应性。OmniSAM的微型、小型和大型变体在目标域上的性能甚至优于源域。这些结果看似反直觉,因为模型在目标域上的性能甚至超过了源域。这很可能是因为目标域测试集中小物体(例如椅子、沙发、桌子)的低质量真实标签所致。
尽管如此,在此基准测试和可视化上的显著改进仍然证明了OmniSAM的优越性。对于室外的Pin2Pan测试案例,Pin2Pan差距更为明显,Trans4PASS+-S的mIoU下降了-23.04%,突显了其在处理全景畸变方面的挑战。相比之下,OmniSAM模型持续缩小这一差距,其中OmniSAM-B的mIoU下降最小,为-20.51%。尽管存在域间差距,OmniSAM在目标域上仍然实现了优越的性能,mIoU的改进范围从3.59%到5.21%。在室外的Syn2Real场景中,OmniSAM-B比Trans4PASS+-S高出2.34%。
4.3 实验结果
首先,作者在SPin8-to-SPan8设置下评估了所提出的框架。源模型的结果如图6和表2所示,展示了源模型的能力和适应性的有效性。鉴于表1中源模型的表现,OmniSAM的小型、基础、大型变体即使不要求适应技术也优于 Baseline 模型
。值得注意的是,大型OmniSAM变体实现了最高的mloU分数
,在室内Pin2Pan任务中展示了优越的泛化能力。随后,作者在带有和不带有记忆注意力机制的OmniSAM上测试了作者的FPA方法。结果表明,在弥合知识差距后,每个模型都取得了显著的改进。OmniSAM在mloU上以
至
的幅度超越了
。值得注意的是,带有记忆模块的OmniSAM-L得分最高,达到
,在室内Pin2Pan任务上实现了SoTA性能。
接下来,作者在CS13-to-DP13设置下评估OmniSAM。
如表3所示,在引入自适应机制后,所有变体均超越了基于多个源数据集的DTA4PASS模型[13],在mIoU上实现了3.73%至6.58%的提升。即使没有记忆模块,OmniSAM-S、OmniSAM-B和OmniSAM-L也优于采用CFA自适应的 Baseline DATR-S[39]。
图5中的可视化结果也展示了作者OmniSAM的优越性。此外,作者还探索了OmniSAM在Syn2Real场景下的能力。SP13-to-DP13的定量结果如表4所示。OmniSAM-B实现了0.56%mIoU的提升。更多定量比较和可视化结果请参阅补充材料。
- 消融研究
消融适应模块。表5和图8评估了不同损失函数组合以及动态伪标签更新机制的影响。
为了明确评估每个模块的贡献,作者为每种场景选择了最优的模型变体:室内场景为OmniSAM-L,室外场景为OmniSAM-B。对于室外场景,每个提出的损失函数都对分割性能产生了积极影响,使得mIoU的整体最大提升达到5.97%。相比之下,原型适应在室内场景中表现出有限的有效性,这主要归因于可忽略的领域差距。值得注意的是,伪标签机制始终证明是有效的,当伪标签动态更新时,性能提升达到2.21%。
消除记忆库大小。接下来,作者评估不同记忆库大小的影响。鉴于作者的滑动窗口机制从原始图像序列中提取9个连续帧的批次,作者研究了四种记忆库大小(0、3、6和9)以评估其有效性,如图7所示。结果表明,使用最大的记忆库大小实现了最高的性能提升。
λ消融。最后,作者在室外场景中对OmniSAM-B进行实验,以评估λ的影响。如表6所示,当λ=0.1时,OmniSAM-B在mIoU指标上取得了最高的分数。
- 结论
本文提出了作者提出的全景语义分割方法OmniSAM。利用SAM2预训练的图像编码器和记忆机制,通过LoRA微调获得了一个更好的源模型。对于现实世界的全景域自适应,作者引入了一个FPA模块,用于 Patch Level 的原型适应,以有效地对齐不同域的特征并提高在扭曲环境中的鲁棒性。同时,作者引入了动态伪标签更新策略,以迭代地提高目标域标签的质量,从而进行自监督训练。在现实世界的Pin2Pan和Syn2Real基准测试上的实验表明,OmniSAM优于所有 Baseline 模型,实现了新的最先进性能。
局限性及未来工作:OmniSAM在现实世界基准测试中表现出色,例如CS13-to-DP13和SPin8-to-SPan8,但在SP13-to-DP13场景中仍有改进空间。未来,作者计划提高Syn2Real全景语义分割场景中的性能。
参考
[1]. OmniSAM: Omnidirectional Segment Anything Model for UDA in Panoramic Semantic Segmentation
扫码加入👉「集智书童」交流群
(备注:方向+学校/公司+昵称)