点击下方卡片,关注 「AI视界引擎」 公众号
( 添加时备注:方向+学校/公司+昵称/姓名 )
大型模型(也称为基础模型)的出现显著改变了人工智能研究的格局,像Segment Anything(SAM)这样的模型在各种图像分割场景中取得了显著成功。
尽管取得了进展,SAM在处理一些复杂的低级分割任务(如伪装物体和医学成像)时遇到了限制。为了解决这些问题,作者们在2023年引入了SAM-Adapter,在这些具有挑战性的任务中展示了改进的性能。现在,随着Segment Anything 2(SAM2)的发布——其继任者拥有增强的架构和更大的训练语料库——本文重新评估这些挑战。
本文介绍了SAM2-Adapter,这是第一个设计用于克服SAM2中持续存在的限制并在特定的下游任务中(包括医学图像分割、伪装物体检测和阴影检测)实现新的最先进(SOTA)结果的适配器。
SAM2-Adapter基于SAM-Adapter的优势,提供了更强的泛化性和可组合性,适用于各种应用。
作者提供了大量实验结果,展示了SAM2-Adapter的有效性和其潜力,并鼓励研究界利用SAM2-Adapter以实现更优越的分割效果。代码、模型和数据集均已开源。
项目页面:http://tianrun-chen.github.io/SAM-Adaptor
太长不看版:SAM2的首个适应调优框架,简单地微调SAM2就能在特定的下游任务取得SOTA表现!
1 Introduction
基础模型的训练基于庞大的数据集,这已经彻底改变了AI研究的格局。最近,在这些基础模型中,Segment Anything (SAM)作为一个高度成功的图像分割模型在各种场景中表现出色。然而,在之前的研究中,作者已经发现SAM在处理一些具有挑战性的低级结构分割任务(如伪装物体检测和阴影检测)时性能有限。为了解决这些问题,作者在2023年SAM发布后两周内提出了SAM-Adapter,旨在利用SAM模型的强大功能,在这些具有挑战性的下游任务中实现更好的性能。SAM-Adapter的成功,其训练和评估代码以及检查点公开发布,已经成为许多研究人员实验和改进的重要资源,展示了其在各种下游任务中的有效性。
现在,研究界推出了一个更强大、更通用的SAM继任者,即Segment Anything 2 (SAM2)。SAM2在网络架构上进行了进一步增强,并在更大的视觉语料库上进行了训练,这引起了科研者的浓厚兴趣。这自然引出了以下问题:
- SAM在下游任务中面临的挑战是否在SAM2中依然存在?
- 能否复制SAM-Adapter的成功,并利用SAM2更强大的预训练编码器和解码器,在这些任务上实现新的最先进(SOTA)结果?
在本文中,对这两个问题的回答都是肯定的。实验证实,由于基础模型的固有局限性——训练数据无法覆盖整个语料库,工作场景各异,SAM在下游任务中遇到的挑战在SAM2中仍然存在。然而,作者提出了一种解决方案。通过引入SAM2-Adapter,创建了一个多适配器配置,利用SAM2的增强组件,在包括医学图像分割、伪装物体检测和阴影检测在内的任务中实现了新的SOTA结果。
与SAM-Adapter一样,这项开创性的工作是首次尝试将大型预训练分割模型SAM2适配于特定的下游任务并实现新的SOTA性能。SAM2-Adapter基于原始SAM-Adapter的优势,同时引入了显著的进步。
SAM2-Adapter继承了SAM-Adapter的核心优势,包括:
- 泛化能力:SAM2-Adapter可以直接应用于各种任务的自定义数据集,以最少的额外数据增强性能。这种灵活性确保了模型能够适应从医学成像到环境监测的广泛应用。
- 可组合性:SAM2-Adapter支持轻松集成多种条件来微调SAM2,改进特定任务的结果。这种可组合性允许结合不同的适应策略,以满足多样化下游任务的特定需求。
SAM2-Adapter通过适应SAM2的多分辨率分层Transformer架构,增强了这些优势。通过使用多个适配器协同工作,SAM2-Adapter有效利用SAM2的多分辨率和分层特性,实现更精确和鲁棒的分割,最大限度地发挥SAM2的潜力。本文在多个任务和数据集上进行了广泛的实验,包括用于阴影检测的ISTD数据集和COD10K数据集,用于伪装物体检测的CHAMELEON数据集和CAMO数据集,以及用于息肉分割(医学图像分割)任务的kvasir-SEG数据集。得益于SAM2和SAM-Adapter的能力,这个的方法在这些任务上实现了SOTA性能。
这项工作的贡献总结如下:
- 首次识别并分析了Segment Anything 2 (SAM2)模型在特定下游任务中的局限性,延续了在SAM上的研究。
- 其次,首次提出了适应方法SAM2-Adapter,将SAM2适配于下游任务并实现增强的性能。该方法有效地将任务特定知识与大型模型学到的一般知识相结合。
- 尽管SAM2的主干模型是一个简单的普通模型,缺乏针对特定下游任务的专门结构,广泛实验表明,SAM2-Adapter在具有挑战性的分割任务上实现了SOTA结果,设定了新的基准,并证明了其在多样化应用中的有效性。
通过进一步建立在SAM-Adapter的成功基础上,SAM2-Adapter继承了SAM-Adapter的优势,展示了SAM2模型将其知识转移到特定数据领域的卓越能力,推动了下游分割任务的边界。本文鼓励研究界将SAM2作为主干,与SAM2-Adapter结合使用,以在各种研究领域和工业应用中实现更好的分割结果。
2 Related Work
2.1语义分割
近年来,语义分割取得了显著进展,主要得益于深度学习方法的显著进步,例如全卷积网络(FCN),编码器-解码器结构,空洞卷积,金字塔结构,注意力模块,以及Transformer。最近的一些进展提升了SAM的性能,例如HQ-SAM引入了高质量输出token并在细粒度掩码上训练模型。其他工作则专注于提高SAM在更广泛的现实世界和移动应用中的效率,例如EfficientSAM, MobileSAM, FastSAM。SAM的广泛成功使其在多个领域得到了应用,包括医学成像,遥感,运动分割,以及伪装物体检测。值得注意的是,本文之前的工作SAM-Adapter测试了伪装物体检测、息肉分割和阴影分割,并提供了第一个基于适配器的方法,将SAM的卓越能力整合到这些下游任务中。
2.2适配器
适配器的概念最早在自然语言处理社区中引入,作为微调大型预训练模型以适应每个下游任务的一种紧凑且可扩展的模型。最初在BERT上探索了使用单个BERT模型共享一些任务特定参数进行多任务学习。在计算机视觉社区中,研究者首先建议对ViT进行微调,以最小的修改来进行目标检测。最近,ViT-Adapter利用适配器使普通的ViT能够执行各种下游任务,同时EVP实现了一种显式视觉提示技术,可以将显式视觉提示融入适配器。然而,之前没有工作尝试将适配器应用于利用大规模图像语料库训练的预训练图像分割模型SAM。在这里,本文弥补了这一研究空白。
2.3息肉分割
近年来,由于深度学习方法的发展,息肉分割取得了显著进展。这些技术利用深度神经网络从内窥镜息肉图像中提取更具辨识度的特征。然而,使用边界框检测器通常会导致息肉边界定位不准确。为了解决这个问题,研究者首先利用预训练模型的全卷积网络(FCN)来识别和分割息肉。随后,研究者引入了一种利用全卷积神经网络(FCNN)预测二维高斯形状的技术。接着,U-Net架构,通过其收缩路径捕捉上下文信息和对称扩展路径进行精确定位,实现了理想的分割效果。然而,这些策略主要关注整个息肉区域,忽略了边界约束。因此,Psi-Net结合了区域和边界约束用于息肉分割,但区域和边界之间的相互作用仍未得到充分探索。PolypSegNet引入了一种用于自动分割结肠镜图像中息肉的增强型编码器-解码器架构。为了解决图像和像素不等价的问题,提出了一种置信度感知重采样方法用于息肉分割任务。在息肉分割方面,其他工作展示了使用无提示的SAM和领域适配的SAM的有前景结果。此外,Polyp-SAM也使用SAM进行了同样的任务,还有研究评估了SAM在器官分割任务中的零样本能力。
3.3伪装物体检测(COD)
伪装物体检测,即隐藏物体检测,是一种具有挑战性但有用的任务,旨在识别与其周围环境融为一体的物体。COD在医学、农业和艺术中有广泛的应用。最初,伪装检测的研究依赖于低级特征如纹理、亮度和颜色来区分前景和背景。值得注意的是,这些先验知识在识别物体时至关重要,并用于指导本文中的神经网络。
Le等人首次提出了一个包含分类和分割分支的端到端网络。最近,基于深度学习的方法显示出在检测复杂伪装物体方面的优越能力。在这项工作中,利用了先进的神经网络主干(基础模型SAM2)以及任务特定的先验知识输入,以实现最先进的性能。
3.3阴影检测
当物体表面没有直接暴露在光线下时,就会产生阴影。阴影提供了关于光源方向和场景照明的线索,有助于场景理解。然而,它们也可能对计算机视觉任务的性能产生负面影响。早期的方法使用手工制作的启发式线索,如色度、强度和纹理。深度学习方法利用从数据中学到的知识,并使用精心设计的神经网络结构(如注意力模块)来捕捉信息。本工作利用这些启发式先验知识与大型神经网络模型相结合,以实现最先进的性能。
3 Method
3.1使用 SAM2 作为主干
SAM2-Adapter 的核心基于 SAM2 模型的强大图像编码器和掩码解码器组件。具体来说,利用从 SAM2 中预训练的 MAE Hiera 图像编码器,并冻结其权重以保留从大规模数据集预训练中学到的丰富视觉表示。此外,本文使用了原始 SAM2 模型的掩码解码器模块,初始化其权重为预训练的 SAM2 参数,然后在训练适配器过程中进行微调。本方法没有为原始 SAM2 掩码解码器提供任何额外的提示作为输入。
与 SAM-Adapter 的成功方法类似,本文通过适配器学习并注入任务特定的知识F^i到网络中。这个方法采用提示的概念,这利用了基础模型(如 SAM2)已在大规模数据集上训练的事实。使用适当的提示来引入任务特定的知识可以增强模型在下游任务上的泛化能力,尤其是在标注数据稀缺的情况下。
提出的 SAM2-Adapter 的架构如图所示。
本方法旨在保持适配器设计的简单和高效。因此选择使用一个仅由两个 MLP 和一个激活函数组成的适配器。值得注意的是,与 SAM 不同,SAM2 的图像编码器具有四个层次的分层分辨率。因此,本方法初始化了四个不同的适配器,并将四个适配器插入每个阶段的不同层中。在每个阶段,适配器的权重是共享的。具体来说,每个适配器获取信息F^i并获得提示 P^i:
其中 MLP_{tune}^i 是用于为每个适配器生成任务特定提示的线性层。MLP_{up} 是一个在所有适配器中共享的上投影层,用于调整变压器特征的维度。P^i指的是附加到SAM模型的每个变压器层的输出提示。GELU是GELU激活函数。信息F^i可以是多种形式的。更多信息,请参阅原始SAM-Adapter论文。
3.2 输入任务特定信息
值得注意的是,信息F^i可以根据任务以多种形式存在并灵活设计。例如,它可以从任务的特定数据集的给定样本中以某种形式提取,如纹理或频率信息,或一些手工制作的规则。此外,F^i可以是由多种指导信息组成的组合形式:
其中F^j可以是某种特定类型的知识/特征,而w^j是一个可调权重,用于控制组合的强度。更多信息,请参阅原始 SAM-Adapter 论文。
4 Experiments
4.1任务和数据集
在本文的实验中,选择了两个具有挑战性的低级结构分割任务和一个医学成像任务来评估SAM2-Adapter的性能:伪装物体检测、阴影检测和息肉分割。在伪装物体检测任务中,使用了三个主要数据集:COD10K、CHAMELEON和CAMO。COD10K是最大的伪装物体检测数据集,包含3040个训练样本和2026个测试样本。CHAMELEON包括76张从互联网上收集的测试图片。CAMO数据集包含1250张图片,其中1000张用于训练,250张用于测试。本文按照训练协议使用CAMO和COD10K的训练集作为模型训练的数据集。评估时,使用CAMO和COD10K的测试集以及整个CHAMELEON数据集。在阴影检测任务中,本文使用了ISTD数据集,包含1330张训练图像和540张测试图像。在息肉分割(医学图像分割)任务中,本文使用了kvasir-SEG数据集。训练和测试的分割遵循Medico多媒体任务的设置。
在评估指标方面,采用了常用的指标,如S-measure (S_m)、平均E-measure (E_phi) 和 MAE,用于伪装物体检测任务。在阴影检测任务中,使用了平衡错误率(BER)指标。对于息肉分割任务,使用了平均Dice分数(mDice)和平均交并比(mIoU)作为评估标准。
4.2 实现细节
在实验中,选择了两种类型的视觉知识,即补丁嵌入F_pe和高频成分F_hfc,这在各种视觉任务中已被证明是有效的。w^j被设置为1。因此,F_i通过F_i=F_hfc+F_pe得出。
MLP_{tune}^i$ 具有一层线性层,MLP_{up}^i是一层将GELU激活输出映射到变压器层输入数量的线性层。本文使用了hiera-large版本的SAM2。阴影检测使用平衡BCE损失,伪装物体检测和息肉分割使用BCE损失和IOU损失。所有实验都使用AdamW优化器,初始学习率设置为2e-4,学习率采用余弦衰减。伪装物体分割训练20个周期,阴影分割训练90个周期,息肉分割训练20个周期。实验使用PyTorch在三台NVIDIA Tesla A100 GPU上进行。
4.3 伪装物体检测实验
首先评估了SAM在伪装物体检测这一具有挑战性的任务中的表现,前景物体通常与视觉上相似的背景图案融合在一起。实验表明,SAM在该任务中表现不佳。如图2所示,SAM无法检测到多个隐藏物体。定量结果进一步确认了这一点,表明SAM在所有评估指标上的表现显著低于现有的最先进方法,而SAM2本身的表现最低,无法产生任何有意义的结果。
如图3和图4所示,通过引入SAM2-Adapter,这个方法显著提高了模型的性能。该方法成功识别了隐藏的物体,可视化结果也证明了这一点。定量结果显示,该方法优于现有的最先进方法。
此外,SAM2-Adapter创造了新的最先进性能。可视化结果表明,SAM2-Adapter在不添加额外错误信息的情况下更精确地分割物体,进一步证明了该方法的鲁棒性和准确性。
4.4 阴影检测实验
本文还评估了SAM在阴影检测中的表现。然而,如图5所示,SAM难以区分阴影和背景,部分阴影缺失或错误添加。同样,SAM2在没有适当提示的情况下也难以理解“阴影”概念,无法产生有意义的结果。在本研究中,作者比较了各种阴影检测方法,发现SAM的性能显著低于现有方法。然而,通过整合SAM-Adapter,性能得到了显著提升。SAM-Adapter增强了阴影区域的检测,使其更加清晰可见。此外,SAM2-Adapter的表现与SAM-Adapter一样出色,提供了可比的结果。本研究通过定量分析得到验证,表2展示了SAM-Adapter和SAM2-Adapter在阴影检测中的显著性能提升。
4.5 息肉分割实验
本文展示了SAM2-Adapter在医学图像分割中的应用,特别是息肉分割。息肉在结肠镜检查过程中被识别并通过息肉切除术移除。准确快速地检测和移除息肉对于预防结直肠癌至关重要。
虽然已经开发了许多深度学习方法用于息肉识别,并且预训练的SAM模型在识别某些息肉方面显示出前景,但其性能可以通过SAM-Adapter方法显著提高。然而,在没有适当提示的情况下,SAM2模型无法产生有意义的结果。SAM2-Adapter解决了这个问题,并且优于原始的SAM-Adapter。见表3和图6的可视化结果,强调了SAM2-Adapter在提高息肉检测准确性和可靠性方面的有效性。
5 Conclusion and Future Work
SAM2-Adapter是一种新型适配方法,旨在充分利用Segment Anything 2(SAM2)模型的高级功能,以应对特定的下游分割任务。基于SAM-Adapter的成功,SAM2-Adapter针对SAM2的多分辨率分层Transformer架构进行了优化,成功克服了SAM的局限性,在伪装物体检测、阴影检测和息肉分割等挑战性任务中实现了新的最先进(SOTA)性能。
实验结果表明,SAM2-Adapter不仅保留了其前身的优势,如泛化性和可组合性,还通过与SAM2的高级架构无缝集成进一步增强了这些能力。
这使得SAM2-Adapter在各种数据集和任务中设定了新的基准,超越了之前的方法。从SAM到SAM2的持续挑战反映了基础模型在多样化现实场景中的复杂性。尽管如此,SAM2-Adapter有效解决了这些问题,展示了其作为高质量分割工具的潜力,适用于多种应用领域。
研究人员和工程师被鼓励采用SAM2结合SAM2-Adapter,以提升分割任务的性能,推动图像分割领域的发展。这项工作不仅扩展了SAM2的能力,还为未来的大规模预训练模型在专门应用中的创新奠定了基础。
点击上方卡片,关注 「AI视界引擎」 公众号