仅需一个任务描述,即可一键分割所有图片!
Segment Anything Model (SAM) 的提出在图像分割领域引起了巨大的关注,其卓越的泛化性能引发了广泛的兴趣。然而,尽管如此,SAM 仍然面临一个无法回避的问题:为了使 SAM 能够准确地分割出目标物体的位置,每张图片都需要手动提供一个独特的视觉提示。如下图所示,即使点击的是同一物体(图 (b)-(d)),微小位置变化都会导致分割结果的显著差异。这是因为视觉提示缺乏语义信息,即使提示在想要分割的目标物体上,仍然可能引发歧义。框提示和涂鸦提示(图 (e)(f))虽然提供了更具体的位置信息,但由于机器和人类对目标分割物的理解存在偏差,效果常常与期望有所出入。
![图片](https://image.jiqizhixin.com/uploads/editor/59b47194-7d2d-4945-aa67-9182c518e43a/640.png)
目前的一些方法,如 SEEM 和 AV-SAM,通过提供更多模态的输入信息来引导模型更好地理解要分割的物体是什么。然而,尽管输入信息变得更加具体和多样化,但在实际场景中,每个无标注样本仍然需要一个独特的提示来作为指导,这是一种不切实际的需求。理想情况下,作者希望告知机器当前的无标注数据都是采集自于什么任务,然后期望机器能够批量地按照作者的要求对这些同一任务下的样本进行分割。然而,当前的 SAM 模型及其变体受到必须为每幅图手动提供提示这一要求的限制,因此很难实现这一点。
![图片](https://image.jiqizhixin.com/uploads/editor/7887090f-977a-42c2-972d-afd655430ed0/640.png)
来自伦敦大学玛丽女王学院的研究者们提出了一种无需训练的分割方法 GenSAM ,能够在只提供一个任务通用的文本提示的条件下,将任务下的所有无标注样本进行有效地分割。
![图片](https://image.jiqizhixin.com/uploads/editor/5ab6bf6b-14c5-4fdd-8d13-27bf1988aa2f/640.jpeg)
论文链接:https://arxiv.org/pdf/2312.07374.pdf
项目链接:https://lwpyh.github.io/GenSAM/
代码链接:https://github.com/jyLin8100/GenSAM/
问题设置
对于给定的分割任务,例如伪装样本分割,对于该任务下来自各个数据集的所有无标注样本,只提供一个任务描述:“the camouflaged animal” 作为这些图片的唯一提示 。对于该任务下的任意一张图像
,需要利用
来有针对性地完成与任务相关的目标的分割。在这种情况下,目标是根据任务描述准确地分割图像中伪装的动物。模型需要理解并利用提供的任务描述来执行分割,而不依赖于手动提供每个图像的特定提示。
这种方法的优势在于,通过提供通用任务描述,可以批量地处理所有相关任务的无标注图片,而无需为每个图片手动提供具体的提示。这对于涉及大量数据的实际场景来说是一种更加高效和可扩展的方法。
GenSAM 的流程图如下所示:
![图片](https://image.jiqizhixin.com/uploads/editor/55dce2f4-2bec-450f-8ebc-45af3b732f13/640.gif)
方法介绍
为了解决这一问题,作者提出了 Generalizable SAM(GenSAM)模型,旨在摆脱像 SAM 这类提示分割方法对样本特定提示的依赖。具体而言,作者提出了一个跨模态思维链(Cross-modal Chains of Thought Prompting,CCTP)的概念,将一个任务通用的文本提示映射到该任务下的所有图片上,生成个性化的感兴趣物体和其背景的共识热力图,从而获得可靠的视觉提示来引导分割。此外,为了实现测试时自适应,作者进一步提出了一个渐进掩膜生成(Progressive Mask Generation,PMG)框架,通过迭代地将生成的热力图重新加权到原图上,引导模型对可能的目标区域进行从粗到细的聚焦。值得注意的是,GenSAM 无需训练,所有的优化都是在实时推理时实现的。
跨模态思维链
Cross-modal Chains of Thought Prompting (CCTP)
![图片](https://image.jiqizhixin.com/uploads/editor/ba1dea61-c3f1-439b-b7c2-6333e409b55e/640.png)
![图片](https://image.jiqizhixin.com/uploads/editor/6a7d1bdc-fe63-41f3-a8cd-22cef134bd98/640.png)
![图片](https://image.jiqizhixin.com/uploads/editor/93590b89-17d6-441e-98f3-09d19fb31e58/640.png)
为了克服这一问题,受到 CLIP Surgery 的启发,作者提出了一个 spatial CLIP 模块,在传统的 CLIP Transformer 基础上添加了一个由 K-K-V 自注意力机制构成的 Transformer 结构,将 VLM 在不同链路上推理得到的不可预测的关键词映射到同一张热力图上。这样,无法在语言层面求取共识的问题可以在视觉层面上得到解决。具体而言,作者通过 Spatial CLIP 的共识特征 和
分别获取不同链路上的前景和背景关键词。由于复杂场景中背景物体可能对结果产生干扰,作者通过用
减去
来排除这种干扰,得到最终的相似度热力图
。$SI$ 通过上采样到原有图片的大小,即获得了定位任务相关目标位置的热力图 H 。其中,具有很高和很低置信度的点分别被视为正和负提示点,它们被筛选出来用于引导 SAM 进行分割。
渐进掩膜生成
Progressive Mask Generation (PMG)
![图片](https://image.jiqizhixin.com/uploads/editor/5020d4c8-36a4-4261-81c8-1951a5ce3e01/640.png)
![图片](https://image.jiqizhixin.com/uploads/editor/b414e09a-57ba-4b8a-9357-e81beaf0762a/640.png)
![图片](https://image.jiqizhixin.com/uploads/editor/962f7dc8-bc56-4e70-b9ea-807bd9ccd71c/640.png)
![图片](https://image.jiqizhixin.com/uploads/editor/5d83cca0-2929-4d54-9d8b-be5a2a888177/640.png)
![图片](https://image.jiqizhixin.com/uploads/editor/18267c14-f8d0-4203-ab92-6f7c0195ffab/640.png)
就是 X 的最终分割结果。
实验
![图片](https://image.jiqizhixin.com/uploads/editor/ccf0324b-e064-4d30-a83f-9ec0e4c5d66c/640.png)
作者在伪装样本分割任务上的三个不同数据集上进行了实验,并分别与点监督和涂鸦 (scribble) 监督下进行训练后的方法进行了比较。GenSAM 不仅比基线方法相比取得了长足的进步,还再更好的监督信号和完全没有训练的情况下,取得了比弱监督方法类似甚至更好的性能。
作者还进一步进行了可视化实验,分析不同 iter 下的分割结果,首先是在 SAM 处理不佳的伪装样本分割任务上进行了评估:
![图片](https://image.jiqizhixin.com/uploads/editor/39cf98ef-657b-4969-bc35-eb02e527b2b5/640.png)
此外,为了验证 GenSAM 的泛化性,还在阴影分割和透明物体分割上进行了可视化实验,均取得了出色的性能。
![图片](https://image.jiqizhixin.com/uploads/editor/80926b57-c0e5-4d96-8765-130f10a653fa/640.png)
总结
总的来说,GenSAM 的提出使得像 SAM 这类提示分割方法能够摆脱对样本特定提示的依赖,这一能力为 SAM 的实际应用迈出了重要的一步。