RobustSAM: Segment Anything Robustly on Degraded Images
Abstract
- 任意分割模型 (SAM) 已成为图像分割领域的一种变革性方法,因其强大的零样本分割能力和灵活的提示系统而广受赞誉。尽管如此,其性能仍受到质量下降图像的挑战。为了解决这一限制,我们提出了稳健的任意分割模型 (RobustSAM),该模型可增强 SAM 在低质量图像上的性能,同时保留其可提示性和零样本泛化性。我们的方法利用预先训练的 SAM 模型,仅需少量参数增量和计算要求。RobustSAM 的附加参数可以在 8 个 GPU 上在 30 小时内优化,证明了其对于典型研究实验室的可行性和实用性。我们还介绍了 RobustSeg 数据集,这是一组 688K 个具有不同降级的图像掩码对,旨在最佳地训练和评估我们的模型。在各种分割任务和数据集上进行的大量实验证实了 RobustSAM 的卓越性能,尤其是在零样本条件下,凸显了其在现实世界中广泛应用的潜力。此外,我们的方法已被证明可以有效提高基于 SAM 的下游任务(例如单幅图像去雾和去模糊)的性能。
- 论文地址:[2406.09627] RobustSAM: Segment Anything Robustly on Degraded Images (arxiv.org),CVPR-2024
- 项目地址:RobustSAM: Segment Anything Robustly on Degraded Images
- 代码地址:GitHub - robustsam/RobustSAM: RobustSAM: Segment Anything Robustly on Degraded Images (CVPR 2024)
Introduction
-
准确的图像分割对于各种下游应用(例如机器人技术、增强/虚拟现实和内容创建)至关重要。分割任意模型 (SAM) 开启了图像分割领域的新篇章:利用包含超过十亿个带注释掩码的综合 SA-1B 数据集,SAM 可以推广到各种各样的对象,并可以根据从点注释到边界框的简单提示准确分割场景。这种创新方法通过无缝适应各种应用,彻底改变了零样本分割。
-
随着 SAM 在各种分割任务中展现出多功能性 ,人们开始关注它在面对复杂且具有挑战性的场景时的稳健性和可扩展性。具体而言,增强其对退化图像的稳健性仍是一个有待探索的前沿。大量文献 指出,SAM 的性能会随着低光照、噪声、模糊、恶劣天气和压缩伪影等成像质量下降而下降。这些质量下降会严重影响 SAM 生成的分割蒙版的质量,直接影响依赖这些蒙版的下游任务。具体而言,最近的图像恢复工作(如去雾 [Let segment anything help image dehaze]、去模糊 [Sam-deblur: Let segment anything boost image deblurring] 和超分辨率 [Can sam boost video super-resolution?])一直在利用这些蒙版或潜在特征作为结构先验,并将其推广到看不见的场景。然而,这些工作假设 SAM 即使在退化条件下也能生成可靠且准确的蒙版。如果在这些情况下 SAM 的稳健性受到损害,整合先验知识的好处就会受到限制,从而限制其在现实场景中的适用性。
-
为了应对这一挑战,一种直观的方法是利用现有的图像恢复技术 [Learning multiple adverse weather removal via two-stage knowledge learning and multi-contrastive regularization: Toward a unified model, Unified transformer network for multi-weather image restoration, Multi-weather image restoration via domain translation] 对图像进行预处理,然后再将其输入 SAM。虽然这些方法可以在一定程度上提高图像质量,但不能保证所选的图像恢复技术能够改善图像分割。这是因为大多数图像恢复算法都是针对人类视觉感知进行优化的,而不是针对 SAM 等分割模型的特定需求。
-
另一种策略是直接在退化图像上微调 SAM。然而,直接调整 SAM 解码器或集成新的解码器模块会严重损害模型在零样本任务上的通用性。此外,盲目地用退化图像微调 SAM 可能会导致灾难性的遗忘,网络会无意中丢失从原始的干净图像中学到的知识 。
-
为此,我们引入了 RobustSAM,它在处理退化图像时实现了稳健性,同时保留了零样本功能。我们的方法提出了两个新模块:抗退化标记生成模块和抗退化掩码特征生成模块。这些模块受一致性损失的监督,特征由原始 SAM 从成对的清晰图像中提取,旨在提取退化不变的分割特征。我们还对 SAM 的原始输出标记进行了微调,使其适应我们稳健的分割方法。通过在训练期间冻结 SAM 中的原始模块,所提出的方法增强了其处理退化图像的能力,同时保留了其在零样本分割方面的有效性。
-
此外,RobustSAM 中提出的附加模块可以高效训练。与需要在数百个 GPU 上进行训练的原始 SAM 相比,RobustSAM 可以在 8 个 A100 上在 30 小时内完成训练。 这标志着 RobustSAM 的可访问性,使其可以集成到各种应用场景中。大量实验表明,我们的 RobustSAM 在清晰和降级场景中表现良好。此外,我们发现 RobustSAM 通过提供更强大的先验,使降级场景中基于 SAM 的下游任务(例如单幅图像去雾和去模糊)受益,从而提高了它们的有效性。
-
为了增强 RobustSAM 的功能和稳健性,我们引入了 Robust-Seg 数据集。Robust-Seg 结合了来自 7 个现有数据集的 43K 张精心注释的图像。每张图像都会受到 15 种不同类型的精心建模的合成退化的影响,从而在 Robust-Seg 中形成了一个包含 688K 张图像的综合集合。 这个广泛的数据集旨在突破图像分割的界限,并成为未来研究的宝贵资源。总而言之,我们的贡献如下:
- 我们提出了 RobustSAM,这是一种基于 Segment Anything 模型构建的零样本分割模型,可增强对各种图像质量下降的鲁棒性。事实证明,这种增强的鲁棒性可显著提高下游应用程序的性能。
- 我们构建了 Robust-Seg 数据集,其中包含 688K 个具有不同退化程度的图像-蒙版对。 我们希望 Robust-Seg 能够为退化图像上的分割模型建立新的基准。
Related Work
Segment Anything Model
- 任意分割模型 (SAM) 在图像分割方面取得了前所未有的表现,推动了计算机视觉领域各个子领域的发展 。SAM 接受直观的提示,例如点或边界框,在各种分割任务和新图像分布中展示了出色的零样本迁移学习能力。它的适应性已在各个领域得到证实,包括医学成像、伪装物体检测 和显著物体分割 [Segment anything in medical images]。除了分割能力外,SAM 在增强计算机视觉任务方面发挥着基础性作用,包括语义分割 、图像编辑 和视频对象跟踪。虽然 SAM 展示了良好的能力,但其性能受到图像质量差的挑战 ,影响分割和下游任务的准确性。
Robust Segmentation
- 在自动驾驶和监控分析领域,大量研究 发现,基于 CNN 的分割性能在处理退化图像时会下降,这导致了各种补救方法的开发。例如,QualNet 通过可逆编码方案探索与质量无关的特征提取,而 URIE 解决多种图像损伤问题,通过分类约束增强分割稳定性。 同时,FIFO 推动分割框架通过雾通过滤波器机制学习抗雾特征。然而,这些技术主要关注单一类型的退化,可能缺乏对多种图像退化的鲁棒性。此外,这种与下游任务联合训练的策略可能会削弱 SAM 的零样本优势。
Image Restoration
- 在图像恢复领域,针对单一类型退化的方法(如 SRCNN )开创了将卷积神经网络应用于图像质量增强的先河。随后,不同领域出现了许多创新,在超分辨率 (SR) 、去噪 、去雾 、去雨 、水下增强 和去模糊 方面取得了显著成功。 MPRNet 和 HINet 等尝试通过单个网络解决多种退化问题。 最近,基于 Transformer 的方法也在图像恢复任务中获得了关注 。尽管如此,虽然 All-inOne 、IPT 和 AirNet 等多重退化方法提供了更大的灵活性和更好的性能,但它们旨在提高人类感知的视觉质量,而不是提高分割等下游任务的性能。
Proposed Method
Preliminary: Segment Anything Model
- 我们对 SAM 框架 进行了简要概述。 如下图下半部分所示,SAM 包含三个关键组件:图像编码器、提示编码器和掩码解码器。图像编码器使用 Vision Transformer (ViT) 处理输入图像。提示编码器处理稀疏提示输入(例如点、框和文本)和密集输入(掩码),将它们转换为适当的表示。掩码解码器是经过修改的 Transformer 解码器块 。它将图像和提示嵌入与输出标记相结合以生成掩码特征。此过程涉及提示自注意以及提示和图像嵌入之间的双向交叉注意。值得注意的是,掩码解码器使用转置卷积来创建详细的掩码特征。每个掩码的输出标记(源自标记到图像的注意)由 MLP 转换为动态分类器。当与掩码特征相乘时,此分类器会产生最终的分割掩码。
-
我们提出的 RobustSAM 概述。RobustSAM 通过整合五个基本组件(紫色)来增强原始 SAM。在训练期间,清晰图像通过原始 SAM 模块(灰色)输入,以产生清晰场景的特征。 随后,通过增强清晰输入生成的退化图像由 RobustSAM 处理,产生退化场景的特征。然后通过防退化模块对这些特征进行细化,确保与清晰场景的特征保持一致。这种方法在分割损失的支持下,在清晰和退化图像条件下都能实现精确的分割结果。 在推理过程中,仅使用 RobustSAM 来预测输入图像中的分割蒙版。注意:为了简洁起见,不包含提示编码器,挂锁图标表示从原始 SAM 模型加载的固定组件,这些组件在训练期间不会更新。
Robust Segment Anything Model
- 我们提出了 RobustSAM,它解决了图像退化问题,同时保留了 SAM 的零样本学习能力。与微调 SAM 或联合训练复杂适应模块的标准方法不同,RobustSAM 采用了简约而刻意的增强方法。
Model Overview
-
上图概述了所提出的 RobustSAM。RobustSAM 的主要贡献是抗退化输出标记生成 (AOTG) 和抗退化掩码特征生成 (AMFG) 模块,它们提取退化不变信息,这些信息与原始 SAM 从清晰图像中提取的信息对齐。这是通过 15 种类型的合成退化增强生成清晰退化图像对来实现的。然后应用不同的损失来加强清晰和退化特征之间的一致性,以及预测的分割和基本事实。请注意,尽管使用合成退化进行监督,但 RobustSAM 可以很好地推广到现实世界的图像,如第 5 节所示。
-
训练。为了训练 RobustSAM,我们首先对清晰的输入图像应用降级增强,然后将生成的降级图像输入到 RobustSAM 中。最初,该模型利用其图像编码器从此降级图像中提取特征。与原始 SAM 框架不同,我们对输出标记进行了微调,现在称为鲁棒输出标记 (ROT)。此 ROT 与提示标记和图像编码器提取的特征一起通过原始 SAM 层进行处理,以生成每个掩码 T R O T_{RO} TRO 的掩码特征(降级) F M F D F_{MFD} FMFD 和鲁棒输出标记。
-
AOTG 模块处理 T R O T_{RO} TRO 以提取对退化具有弹性的信息,并将其转换为 T ^ R O \hat T_{RO} T^RO。同时,AMFG 模块细化来自图像编码器的早期和最终层( F M F D F_{MFD} FMFD 和 F C F D F_{CFD} FCFD)的掩码和补充特征,去除与退化相关的信息以生成细化特征( F ^ M F D \hat F_{MFD} F^MFD 和 F ^ C F D \hat F_{CFD} F^CFD)。按照 [Segment anything in high quality] 中提出的架构,特征融合模块将这些细化特征组合到我们最终的稳健掩码特征中,以提高分割质量。
-
同时,原始清晰图像由标准 SAM 处理,以提取互补特征 ( F C F C F_{CF C} FCFC )、掩码特征 ( F M F C F_{MF C} FMFC ) 和输出标记 ( T O C T_{OC} TOC ) 的清晰版本。这些清晰特征与 RobustSAM 的精炼特征之间的一致性损失确保与未降级的图像输出对齐。然后使用分割损失函数将降级输入的分割结果与基本事实进行比较。在我们的降级增强方法中,我们包含了 15 种降级类型和一个恒等映射。这可确保清晰的图像保持其质量,避免在非降级场景中出现性能下降。
-
推理。在推理过程中,仅使用 RobustSAM(上图 ,上半部分)来生成分割掩码。下面,我们将详细讨论所提出的抗退化输出标记生成和抗退化掩码特征生成模块。
Anti-Degradation Mask Feature Generation
-
如下图 所示,输入特征首先经过实例归一化 (IN) 处理。受前人研究 的启发,IN 的目的是标准化与图像退化相关的变化。直观地说,这会删除样式属性,同时保留核心内容。此步骤对于减轻单个图像失真的影响至关重要,可确保内容在不同退化条件下的稳定性。与此同时,受 [Urie: Universal image enhancement for visual recognition in the wild] 的启发,我们包括了另一个应用批量归一化 (BN) 的分支。BN 至关重要,因为它解决了 IN 过程可能导致的细节丢失问题。
-
然后,我们分别合并 BN 和 IN 生成的特征。注意力机制会仔细检查合并后的特征以生成注意力图,该注意力图会动态衡量每种特征类型的重要性,从而合成一个囊括两种规范化技术优点的特征集 。为了补偿可能丢失的任何语义信息,此增强特征集沿通道维度与原始输入特征连接在一起。此外,我们集成了通道注意力,类似于挤压和激励方法(SEC),以自适应地改进特征集成。
-
我们引入了傅里叶退化抑制模块,通过使用傅里叶变换将综合特征从空域转换到频域来增强综合特征。该技术利用振幅分量来捕获有关图像退化的风格信息。通过应用 1×1 卷积,我们专注于隔离和去除退化元素。同时,保留相位分量以维持结构完整性。随后,逆傅里叶变换将细化的特征带回空域。此过程将退化视为图像风格,并生成退化不变特征以实现鲁棒分割。该模块应用于前面模块生成的两个特征:互补特征(退化)FCFD 和掩模特征(退化)FMFD。为了确保这些细化的特征在使用清晰图像作为输入时与 SAM 模型提取的相应特征(即 FCF C 和 FMF C )保持一致,我们采用了 Mask Feature Consistency Loss( $\mathcal {L}_{\text {MFC}} $)。
- L MFC = ∥ F ^ C F D − F C F C ∥ 2 + ∥ F ^ M F D − F M F C ∥ 2 ( 1 ) \mathcal {L}_{\text {MFC}} = \lVert \hat {F}_{CFD} - F_{CFC} \rVert _2 + \lVert \hat {F}_{MFD} - F_{MFC} \rVert _2 (1) LMFC=∥F^CFD−FCFC∥2+∥F^MFD−FMFC∥2(1)
-
通过最小化 L MFC \mathcal {L}_{\text {MFC}} LMFC 的每个部分,我们确保细化的特征与在清晰图像条件下提取的特征保持一致,从而保证特征在不同退化情况下的稳健性和一致性。
Anti-Degradation Output Token Generation
-
Anti-Degradation Output Token Generation 模块致力于细化 Robust Output Token per mask (TRO),以去除与退化相关的信息。与传统的 mask 特征不同,TRO 的主要作用是确保分类边界的清晰度,因此包含的纹理信息较少。因此,我们发现使用轻量级模块来过滤对退化敏感的信息就足够了。如下图 右侧所示,该模块利用了多层实例规范化,然后是单个 MLP 层。此策略旨在保持计算效率,同时确保模型能够从受退化影响的输入中恢复稳健的掩码信息。然后将精炼后的 token T ^ R O \hat T_{RO} T^RO 与原始 SAM 在清晰输入条件下提取的输出 token $T_{OC} $ 进行比较,以计算 token 一致性损失 L T C L_{TC} LTC,
-
L TC = ∥ T ^ R O − T O C ∥ 2 ( 2 ) \mathcal {L}_{\text {TC}} = \lVert \hat {T}_{RO} - T_{OC} \rVert _2 (2) LTC=∥T^RO−TOC∥2(2)
-
这个loss保证了提炼出来的token和清晰图像条件下提取出来的token保持一致,经过MLP处理后,输出和Robust Mask Feature结合起来生成最终的mask。
-
Overall Loss
-
整体损失函数整合了 Mask Feature Consistency Loss( L MFC \mathcal {L}_{\text {MFC}} LMFC )、Token Consistency Loss( L TC \mathcal {L}_{\text {TC}} LTC )和 Segmentation Loss( L Seg \mathcal {L}_{\text {Seg}} LSeg ),形成对模型的综合惩罚。整体损失表示为:
-
L Overall = L MFC + λ 1 L TC + λ 2 L Seg ( 3 ) \mathcal {L}_{\text {Overall}} = \mathcal {L}_{\text {MFC}} + \lambda _{1}\mathcal {L}_{\text {TC}} + \lambda _{2}\mathcal {L}_{\text {Seg}} (3) LOverall=LMFC+λ1LTC+λ2LSeg(3)
-
这里, L Seg \mathcal {L}_{\text {Seg}} LSeg 是结合了 Dice 和 Focal 损失 的组合分割损失:
-
L Seg = L Dice ( P , G ) + λ 3 L Focal ( P , G ) ( 4 ) \mathcal {L}_{\text {Seg}} = \mathcal {L}_{\text {Dice}}(P, G) + \lambda _{3} \mathcal {L}_{\text {Focal}}(P, G) (4) LSeg=LDice(P,G)+λ3LFocal(P,G)(4)
-
其中 P 是预测的掩码,G 是真实掩码,λ1–λ3 是用于加权不同损失的超参数。这种复合损失函数旨在确保提高分割质量,同时增强模型对退化的鲁棒性。
-
Implementation Details
Dataset
- 为了训练和评估 RobustSAM,我们构建了一个全面的 Robust-Seg 数据集,其中包含 688,000 个图像蒙版对。该数据集由来自多个现有数据集的图像组成,具体包括 LVIS 、ThinObject5k 、MSRA10K 、NDD20 、STREETS 、FSS-1000 和 COCO 。在这个数据集中,我们整合了原始清晰图像和增强了 15 种合成降级的版本,包括模糊、噪声、弱光、恶劣天气条件等。这种方法确保模型经过广泛训练,并且对各种图像质量都具有鲁棒性。
- 在训练过程中,我们使用 MSRA10K、ThinObject-5k 和 LVIS 的整个训练集(及其增强)。MSRA10k 和 LVIS 的测试集(及其增强)用于验证模型的分割准确度。为了测试模型的零样本泛化能力,我们针对 NDD20、STREETS、FSS-1000 和 COCO 数据集中的全系列图像(及其增强)对其进行了测试。
- 此外,我们使用完整的 BDD-100k 和 LIS 数据集进行了广泛的测试,其中包括各种现实世界的退化,例如低光、模糊、雨和雪。这种方法确保全面评估 RobustSAM 在现实场景中的表现及其对实际应用中经常遇到的不利环境条件的鲁棒性。
Training Detail
- 在 RobustSAM 的训练阶段,我们保持预训练的 SAM 参数不变,只专注于优化所提出的模块以提高稳健性。我们使用基于点的提示来训练 RobustSAM。RobustSAM 显著提高了分割质量,旨在实现快速高效的训练。在 40 个周期的学习率为 0.0005 的情况下,在 8 个 Nvidia A100 GPU 上进行 130,000 次迭代,训练在 30 小时内完成。下表详细说明了 RobustSAM 与 SAM 相比的训练和推理性能。与 SAM 相比,RobustSAM 不仅提供了更好的分割结果,而且具有卓越的训练效率。
-
SAM 和 RobustSAM 的比较计算要求。
Evaluation Protocol
- 为了评估 RobustSAM 的性能,我们采用了几个指标:并集交集 (IoU)、骰子系数 (Dice)、像素准确度 (PA) 和不同阈值水平的平均准确度 (AP)。
Experimental Results
- 在本节中,我们展示了所提出的 RobustSAM 的评估结果。
Performance Evaluation
-
在具有挑战性的条件下进行图像分割时,我们将 RobustSAM 框架与几种现有方法进行了比较,以确定其有效性。我们以基础 SAM 模型和战略性两阶段方法为基准,其中图像首先通过通用图像恢复技术来改善输入质量,然后进行 SAM 驱动的分割。为此,我们采用了 AirNet ,这是一种针对未知退化量身定制的最先进的通用视觉质量增强方法。此外,我们集成了 URIE ,这是一种经过优化的图像恢复方法,可为更有效的分割奠定基础。此外,我们将其与 HQ-SAM 进行了比较,它是原始 SAM 的高质量迭代。
-
在可见数据集上的比较。我们在可见数据集上评估了 Robust-Seg 框架内我们提出的方法的性能:LVIS 和 MSRA10K 。具体来说,我们在这些数据集的测试集上评估了这些方法。结果表明,我们的方法具有卓越的性能,可以有效处理这些不同场景带来的各种挑战。此外,RobustSAM 展示了其在显著改善降级场景中的分割方面的优势,同时在清晰场景中保持或增强了性能。详细结果列于下2表,证明了我们的方法在不同分割场景中的有效性。
-
使用“降级”、“清晰”和“平均”场景的点提示,在 RobustSeg 数据集上对 MSRA10k 数据集(具有合成降级的可见数据集)的测试集进行性能比较。“降级”是指经过 15 种不同类型的降级的图像集,“清晰”是指原始的、未降级的图像,“平均”表示“降级”和“清晰”场景的加权和平均值。 粗体字表示最佳结果,下划线字表示次佳结果。
-
使用边界框提示在 RobustSeg 数据集上的 LVIS 数据集(具有合成退化的可见数据集)测试集上进行性能比较。
-
零样本分割比较。我们首先在整个 NDD20 、STREETS 、FSS-1000 和 COCO 数据集上评估了我们的方法,所有这些数据集都是旨在挑战分割模型的合成退化。这些测试集的结果突出了我们方法的适应性和准确性,详见下2表。
-
使用点提示在 Robust-Seg 数据集上对整个 NDD20 、STREETS 和 FSS-1000 (具有合成退化的未见数据集)进行零样本分割比较。
-
使用边界框提示在 Robust-Seg 数据集上对整个 COCO (具有合成退化的未见数据集)进行零样本分割比较。
-
此外,为了验证我们的方法对现实世界退化的能力,我们扩展了评估范围,包括整个 BDD-100k 和 LIS 数据集 。这些数据集特别具有挑战性,因为它们的现实世界退化种类繁多,从天气条件到噪音和可变照明。这些评估的结果在下表 中提供。
-
使用点提示对整个 BDD-100k 和 LIS 数据集(具有真实世界退化的未见数据集)进行零样本分割比较。
-
此外,我们在下图中展示了分割的定性比较。这些结果表明,RobustSAM 在零样本分割中具有显着的鲁棒性,并且在不同的退化情况下仍保持高性能。
-
分割的定性分析:对未见数据集进行视觉比较,突出了 RobustSAM 相对于现有策略的性能改进。
Ablation Study
-
为了进一步了解我们贡献的影响,我们进行了一项消融研究。所有实验均在 BDD-100k 和 LIS 数据集上进行。
-
Fine-tune SAM?我们以各种配置微调了 SAM 模型:微调整个模型、解码器和输出 token。结果如下表所示。 据观察,微调整个 SAM 模型或其解码器会大幅降低其零样本能力,导致性能显著下降。仅微调输出 token 可提高性能;但与 RobustSAM 相比,它们仍然较差。
-
所提模块的有效性:对 BDD-100k 和 LIS 数据集的评估表明,所提模块均能增强 RobustSAM 的性能。(我们在本次比较中使用了点提示。)
-
所提模块的有效性。此外,我们验证了每个所提模块的有效性,包括抗退化掩码特征生成模块 (AMFG)、带傅里叶退化抑制的 ADM 模块 (AMFG-F)、抗退化输出标记生成 (AOTG) 和鲁棒输出标记 (ROT)。上表中列出的结果显示,每个引入的模块都对 RobustSAM 的整体性能产生了积极影响,其中 AMFG 模块的增强最为显著。
Improving SAM-prior Tasks
- 为了验证我们的 RobustSAM 能否在图像质量下降的情况下增强基于 SAM 先验的应用性能,我们选择了单幅图像去雾 和单幅图像去模糊 作为测试用例。 按照原始论文对这些任务的设置,我们使用 SAM 和 RobustSAM 作为先验,并评估了它们在 SOTS 数据集 上的去雾性能和 GoPro 数据集 上的去模糊性能。下表和图中显示的结果显示,使用 RobustSAM 可在下游任务上获得出色的性能。这种增强可以归因于 RobustSAM 在质量下降的图像上提高了分割精度,为这些任务提供了更稳健的先验。
-
使用不同先验对去雾和去模糊任务进行定量评估。
-
增强基于 SAM 的应用程序:定性证明 RobustSAM 在改进基于 SAM 的单幅图像去雾和去模糊方面的优势。
Conclusion
- 本文介绍了 RobustSAM,它在各种退化条件下的图像分割方面表现出色。该模型的优势在于其组件——特别是抗退化蒙版特征生成模块、抗退化输出标记生成和鲁棒输出标记模块。为了验证 RobustSAM 的有效性,我们提出了一个名为 Robust-Seg 的大规模数据集。此外,我们证明了 RobustSAM 的优势可以扩展到改进基于 SAM 的任务,例如去雾和去模糊,从而证实了它作为退化条件下图像处理的可靠工具的价值。它的性能为零样本分割的稳健性树立了新标准,为未来的研究提供了一个有希望的方向。
Supplemental Materials
Ablation Study
- 我们对 BDD100k 和 LIS 数据集以及 RobustSeg 数据集集合中包含的 COCO 数据集子集进行了全面的消融研究。需要强调的是,这些数据集是前所未见的(零样本),并且在我们的评估中存在真实世界中的退化。结果(如表 S.1 中所述)强调,集成到 RobustSAM 中的每个组件都对其整体性能做出了积极贡献。跨各种数据集的这种持续增强证明了 RobustSAM 的稳健性和适应性,尤其是在零样本设置中。
-
所提模块的有效性:对 BDD-100k 、LIS 和 COCO 数据集的评估表明,所提模块均能增强 RobustSAM 的性能。(在本次比较中,我们对 BDD-100k+LIS 使用点提示,对 COCO 使用边界框提示)
Different Backbones in RobustSAM
- 在表 S.2 中,我们展示了 SAM 和 RobustSAM 在各种 Vision Transformer (ViT) 主干网络上的全面比较,包括 ViT-B、ViT-L 和 ViTH。此比较涵盖了组合 BDD-100k 和 LIS 数据集上的数值结果,并扩展到 COCO 数据集。数据清楚地表明,RobustSAM 在这些不同的主干网络上始终优于 SAM。此外,在图 S.1 中,我们对各种 SAM 和 RobustSAM 变体之间的性能、推理速度和模型大小进行了全面比较,从而进一步了解这些模型的效率和可扩展性。值得注意的是,我们的模型有效地提高了降级场景下的性能,而计算负担仅略有增加。
-
不同 Vision Transformer (ViT) 主干网络上 SAM 和 RobustSAM 的性能比较。
-
各种 SAM 和 RobustSAM 变体之间的性能、速度和模型大小比较。后缀 -B、-L 和 -H 分别对应 ViT-B(Base)、ViT-L(Large)和 ViT-H(Huge)版本,代表 Vision Transformer 架构的不同规模和复杂性。
Comparison of Varying Number of Point Prompts
- 为了检查使用点提示的 RobustSAM 的交互式分割性能,我们在图 S.2 中进行了全面比较。此比较在零样本学习环境中,在 BDD-100k 和 LIS 数据集上对具有一系列输入点数的 SAM 和 RobustSAM 进行了评估。与 SAM 相比,RobustSAM 在这些数据集中始终表现出色,无论使用的输入点数量是多少。
-
在零样本设置下,对 BDD100k 和 LIS 数据集上使用不同数量输入点的交互式分割性能进行比较分析。RobustSAM 在不同点数量上始终超越 SAM,表现出更明显的增强效果,尤其是在 BDD-100k 数据集上提示歧义性降低的场景中。
Token Visualization
- 在图 S.3 中,我们提供了掩码解码器的最后一个标记到图像层中 SAM 的原始输出标记和 RobustSAM 的增强型鲁棒输出标记之间的交叉注意的说明性比较。这种比较强调了鲁棒输出标记实现更集中和更精确的注意的能力。它擅长准确识别对象边界和内容,这是 SAM 的原始输出标记在降级场景中经常忽略的一个方面。这种集中注意在处理对象边界时尤为明显,展示了 RobustSAM 增强的辨别和突出细节和结构的能力,这对于在具有挑战性的成像条件下进行有效分割至关重要。
-
比较 SAM 原始输出标记和增强型鲁棒输出标记在最终解码器层中的交叉注意力。鲁棒输出标记明显表现出对准确识别对象边界和内容的精确关注。它进一步展示了对边界和薄结构区域的关注,而这些区域通常被原始输出标记忽略。
Visualization of Feature Representation
- 我们从数据集中随机抽取了 6 种退化类型中的每一种的 50 张图像,进行了一项实验。我们运行了 SAM、RobustSAM w/o 一致性损失和 RobustSAM 来提取掩码特征并执行了 t-SNE 分析。图 S.4 所示的结果表明,在原始 SAM 中,来自相同退化类型的特征倾向于聚集在一起。然而,使用 RobustSAM 的特征抑制机制,来自不同退化的特征显著重叠,表明退化对特征提取的影响最小。此外,当不使用一致性损失时,与 RobustSAM 相比,由于相同退化而产生的聚类更为明显,证明了一致性损失的有效性。
-
基于不同基线的特征表示可视化。
Qualitative Evaluation
- 在我们的定性评估中(如图 S.5 所示),我们提供了一组全面的结果,说明了我们的方法在图像质量下降和清晰(第 3 行和第 8 行)场景中的有效性。在这次比较中,我们采用了原始 SAM 、HQ-SAM 、Air-Net + SAM 和 URIE + SAM。这些视觉比较清楚地证明了我们的方法在各种条件下的卓越分割能力。值得注意的是,我们的方法在图像质量下降的场景中保持了高准确度和细节,而现有方法通常难以做到这一点,因此可以有效地分割复杂的模式和结构。此外,我们的方法可以在清晰的条件下保持性能。
-
分割的定性分析:该图提供了视觉比较,以说明 RobustSAM 与当前方法相比的增强性能。值得注意的是,第 3 行和第 8 行描绘了没有降级的场景。
Quantitative Evaluation
-
在我们的定量评估中,我们扩展了基线比较,详见表 S.4、S.5 和 S.6。我们的重点是在应用 SAM 技术之前,通过使用 MW-Net 、SwinIR 和 MPR-Net 等恢复方法对图像进行预处理来提高分割精度。这种方法在 BDD-100k 和 LIS 数据集以及具有合成退化的未见数据集子集(即 COCO 、NDD20 、STREETS 和 FSS-1000 ,均属于 Robust-Seg 数据集集合)上进行了严格测试。
-
零样本分割比较:该图展示了整个 BDD-100k 和 LIS 数据集上的分割性能比较,这些数据集是具有真实世界退化的未见过的数据集。我们利用点和边界框提示进行分割。符号“+SAM”表示首先恢复图像,然后应用 SAM 进行分割的过程,与表 S.5 和 S.6 中描述的方法一致。
-
使用点提示在 Robust-Seg 数据集上对整个 NDD20 、STREETS 和 FSS-1000 (具有合成退化的未见数据集)进行零样本分割比较。
-
使用边界框提示在 Robust-Seg 数据集上对整个 COCO (具有合成退化的未见数据集)进行零样本分割比较。
-
此外,我们扩展了实验范围,使用降级清晰图像对对 SwinIR、MW-Net 和 Air-Net 进行微调,然后应用 SAM(称为 SwinIR-F、MW-Net-F 和 Air-Net-F)。我们还使用训练数据对 HQ-SAM 进行了微调,记为 HQ-SAM-F。结果表明,通过微调可以略微提高性能,但这些调整仍然无法与我们提出的方法的有效性相匹配。 这强调了我们方法的稳健性和优越性,特别是在不同程度的图像降级下实现高分割精度方面。
-
此外,我们还评估了 RobustSAM 在 SA-1B 数据集 的特定子集(包含 11,186 张图像)上的性能。本次评估是与标准 SAM 方法进行比较进行的。表 S.3 中显示的结果清楚地表明,RobustSAM 的表现优于 SAM,证明了所提出的 RobustSAM 方法的有效性。
-
在 SA-1B 数据集子集上进行零样本分割比较 。
Improving SAM-prior Tasks
-
我们验证了 RobustSAM 在增强使用 SAM 作为先验的下游任务(即去雾 和去模糊 )方面的有效性。我们的结果如图 S.6 和图 S.8 所示,包括去雾和去模糊任务的分割蒙版和重建结果。这些结果清楚地表明,使用 RobustSAM 作为先验可显著提高这些任务的性能。这种增强在降级场景中尤为明显,此时 RobustSAM 保持了其强大的分割能力。通过在具有挑战性的条件下可靠地分割图像,RobustSAM 为后续图像恢复任务提供了坚实的基础,从而提高了清晰度和细节方面的整体效果。
-
增强基于 SAM 的去雾方法:定性证明 RobustSAM 在改进基于 SAM 的单幅图像去雾方面的优势。
-
增强基于 SAM 的去模糊方法:定性证明 RobustSAM 在改进基于 SAM 的单图像去模糊方面的优势。
Robust-Seg Dataset
-
精心策划的 Robust-Seg 数据集旨在训练和评估 RobustSAM 模型,它包含一个丰富的存储库,其中包含 43,000 张图像和相应的带注释的蒙版。这些图像来自一套著名的数据集,即 LVIS 、ThinObject5k 、MSRA10K 、NDD20 、STREETS 、FSS-1000 和 COCO 。我们使用 albumentations 和 imgaug 库为该集合添加了 15 种类型的合成更改,为数据集引入了各种各样的视觉退化。退化包括雪、雾、雨、高斯噪声、ISO噪声、脉冲噪声、重采样模糊、运动模糊、缩放模糊、颜色抖动、压缩伪影、弹性变换、毛玻璃模糊、低光和对比度调整。 除此之外,还为未经任何修改的图像指定了一个增强类别,以保留其原始清晰度。
-
这些合成降级旨在模拟各种具有挑战性的视觉场景,从而扩展模型对各种图像质量的稳健性。这一战略性增强过程产生了 688,000 个图像蒙版对,大大扩展了数据集的数量和种类。从每个贡献数据集中提取的图像的具体数量详见表 S.7。
-
我们构建的 Robust-Seg 数据集的数据组成。
-
有关增强图像及其各种退化的视觉演示,请参见图 S.7,其中我们展示了引入数据集的合成效果。
-
来自 Robust-Seg 数据集的具有合成退化的图像的说明性样本。
Implementation Details
- 在组合的 Robust-Seg 数据集上训练 RobustSAM 时,我们固定了预训练 SAM 模型的模型参数(主论文图中的灰色块),同时仅使提出的 RobustSAM 可学习,包括稳健输出标记(ROT)、防退化输出标记生成(AOTG)模块、防退化掩码特征生成(AMFG)模块和用于生成最终稳健掩码的三层 MLP。
- AMFG 模块。AMFG 模块首先将输入特征分别传递到实例规范化 (IN) 层和批量规范化 (BN) 层。将 ReLU 激活函数应用于规范化的特征。然后,我们使用 3×3 卷积层和填充 1 对两个输出特征进行卷积,并将它们相加。接下来,将使用选择器网络根据求和后的特征生成两个注意图(具有相同的形状)。
- 选择器网络中生成注意力图有几个步骤。首先,我们利用自适应平均池化层来重塑输入特征。然后使用全连接层处理重塑后的特征,然后使用 ReLU 激活函数。接下来,两个全连接层调整输入特征的尺寸并生成两个未归一化的注意力图。两个注意力图都堆叠在一起,并应用 Softmax 函数将注意力图归一化为 0 和 1 之间。最后,归一化的注意力图将与选择器网络的输入特征进行元素乘法。
- 按照上述过程,我们可以得到一个增强的特征。为了补偿可能丢失的语义信息,这个增强的特征沿着通道维度与原始输入特征连接起来。然后,我们选择 squeeze-and-excitation 方法来细化连接后的特征。
- 然后,使用傅里叶变换对压缩和激励模块的输出特征进行变换,分别获得相位分量和振幅分量。之后,我们应用带有零填充的 1×1 卷积,并在振幅分量上进行步长为 1 以去除退化元素。接下来,执行逆傅里叶变换,将细化的特征恢复为其原始空间表示。最后,采用两个具有 2×2 核和步幅 2 的转置卷积层的组合来对齐维度并生成 AMFG 模块的最终输出特征。
- AOTG 模块。另一方面,AOTG 模块由两个 IN 层和一个 MLP 网络组成。原始的鲁棒输出 token 将首先通过 IN 层,以过滤掉对退化相关细节敏感的信息。 之后,应用 MLP 来调整鲁棒输出 token 的维度。MLP 内部有两个完全连接的层,它们之间有一个 ReLU 激活函数。
Prompt Generation
- 我们遵循与 SAM 相同的推理流程,但使用来自稳健输出标记的掩码预测作为最终掩码预测。对于基于框提示的评估,我们利用 GT 掩码生成边界框的四个角坐标。然后,这些坐标用作框提示,输入到我们的 RobustSAM 模型中。对于基于点提示的评估,我们从 GT 掩码中随机抽取点,并将它们用作输入点提示。
Evaluation Protocol
-
交并比 (IoU) 是用于衡量特定数据集的分割精度的常用指标。 它定义为预测分割与真实分割之间的重叠面积除以预测分割与真实分割之间的并集面积。 IoU 指标由以下公式给出:
-
IoU = ∣ P ∩ G ∣ ∣ P ∪ G ∣ ( S . 1 ) \text {IoU} = \frac {|P \cap G|}{|P \cup G|} (S.1) IoU=∣P∪G∣∣P∩G∣(S.1)
-
其中 P 表示预测分割中的像素集,G 表示真实分割中的像素集。IoU 值越高,分割准确率越高。
-
-
Dice 系数 (Dice) ,通常称为 Dice 相似系数 (DSC),是一种统计工具,用于测量两组数据之间的相似性。在图像分割的背景下,它量化了预测分割与 GT 之间的相似性。Dice 系数计算如下:
-
Dice = 2 ∣ P ∩ G ∣ ∣ P ∣ + ∣ G ∣ ( S . 2 ) \text {Dice} = \frac {2|P \cap G|}{|P| + |G|} (S.2) Dice=∣P∣+∣G∣2∣P∩G∣(S.2)
-
其中 ∣ P ∩ G ∣ |P \cap G| ∣P∩G∣ 表示预测集和真实集之间的共同元素(重叠像素),|P| 和 |G| 分别是每个集合中的总元素。与 IoU 一样,Dice 分数越高,表示预测分割和实际分割之间的相似性越高。
-
-
像素准确度 (PA) 量化了图像中正确分类的像素的比例。计算方法如下:
-
PA = ∑ i = 1 N 1 ( p i = g i ) N ( S . 3 ) \text {PA} = \frac {\sum _{i=1}^{N} \mathbb {1}(p_i = g_i)}{N} (S.3) PA=N∑i=1N1(pi=gi)(S.3)
-
其中 N 是图像中的像素总数, p i p_i pi 表示像素 i 的预测类别, g i g_i gi 是像素 i 的 GT 类别。函数 1 ( p i = g i ) \mathbb {1}(p_i = g_i) 1(pi=gi) 是一个指示函数,当像素的预测类别与其 GT 类别匹配时,该函数等于 1,否则等于 0。分子将预测和实际像素类别相同的所有实例相加,分母是像素总数。PA 越高,表示模型对每个像素进行分类的准确性越高。
-
-
平均精度 (AP) 测量不同阈值下的精度得分的平均值。它是一种将精确度-召回率曲线总结为代表整体分割精度的单个值的方法。AP 计算如下:
-
AP = 1 N thres ∑ t = 1 N thres Precision ( t ) ( S . 4 ) \text {AP} = \frac {1}{N_{\text {thres}}} \sum _{t=1}^{N_{\text {thres}}} \text {Precision}(t) (S.4) AP=Nthres1t=1∑NthresPrecision(t)(S.4)
-
其中 N thres N_{\text {thres}} Nthres 是使用的阈值级别的总数, Precision ( t ) \text {Precision}(t) Precision(t) 是在特定阈值 t 下的分割精度。实际上,AP 是通过取在几个预定阈值级别计算出的精度值的平均值来计算的。这些级别通常在 0 到 1 之间,表示像素被归类为分割对象一部分的概率阈值。AP 值越高,表示模型在各个阈值级别上的性能越好。
-