Background
图像描述长期以来一直是计算机视觉和自然语言处理领域中的一个挑战。大多数现有视觉语言模型(如GPT-4o)缺乏精确定位机制,近期赋予视觉语言模型(VLM)处理二维定位信息(如边界框)的研究方法通常仅生成简短短语,而非详细描述; 尽管存在一些方法能够生成长描述,但其提供的细节有限,或混杂了来自其他区域的无关内容,如图所示:
本文确定了Detailed localized captioning所面临的三个关键障碍:
- 区域细节丢失: 如图所示,现有方法从全局图像表征中提取局部特征,这往往导致细粒度细节的丢失;裁剪感兴趣区域虽能增强细节表现,但可能丢失必要的上下文线索。
- 高质量数据集的稀缺性: 诸如RefCOCOs和Visual Genome 等数据集通常仅提供简短短语,不足以训练模型生成丰富、详细的描述。近期基于合成数据的方法依赖于边界框,这些边界框无法精确传达目标区域的具体范围,而依赖全局描述的方法则难以捕捉非显著性区域。
- 基准测试的局限性: 现有的局部化描述基准测试通常采用基于语言的图像描述评估指标或基于大语言模型的评分方法,将生成的描述与参考描述进行比较。然而,此类技术并不完全适用于密集局部化描述任务。由于基准测试提供的参考描述往往缺乏对区域的全面细节,密集局部化描述模型常因正确描述了参考文本中未明确提及的细节而受到不公正的评分。
Contribution
将本文的贡献总结如下:
- Describe Anything Model(DAM): 一种采用焦点提示与局部视觉主干网络的新型架构,用于多粒度区域图像与视频描述生成。
- SSL Data Pipeline(DLC-SDP): 一种利用高质量分割标注与未标注网络图像的半监督数据流水线,用于可扩展且多样化的数据构建。
- DLC-Bench(DLC-Bench): 一个设计用于在无参考描述条件下评估描述局部化控制(DLC)能力的基准测试集。
Method
Describe Anything Model(DAM)能够针对用户在图像和视频中指定的区域生成详细的局部化描述。通过本文提出的焦点提示与局部化视觉主干网络,DAM有效平衡了局部细节与上下文信息。
Task Formulation
详细局部描述任务涉及生成专门针对图像或视频内指定区域的全面文本描述。形式上,给定 $N$ 个输入帧 $I^{(i)} \in \mathbb{R}^{H \times W \times 3}$ 以及指示每一帧中感兴趣区域的对应二值掩码 $M^{(i)} \in {0, 1}^{H \times W}$ ,目标是通过描述模型生成该区域内容的详细描述 $T$ : $$T = \text{CaptioningModel} \left( {I^{(i)}, M^{(i)}}_{i=1}^N \right)$$ 本文重点使用二值掩码 $M^{(i)}$ 作为定位输入,因为其他形式的定位(例如点、涂鸦、框,或图像上的掩码以及视频帧子集上的掩码)可以通过分割模型(如 SAM 和 SAM 2 )转换为掩码。
Architecture
Focal Prompt
首先提取掩码$M$的边界框$B$,并在水平和垂直方向上按系数$\alpha$进行扩展,以包含额外的周边上下文: $$ B^{’} = \text{ExpandBox}(B, \alpha) $$ 随后,图像和掩码的焦点裁剪区域为: $$ I^{’} = I \vert B^{’}, \quad M^{’} = M \vert B^{’} $$ where $\vert B^{’}$ denotes cropping to $B^{’}$. 通过同时包含完整图像和局部裁剪图及其掩码,焦点提示既包含了全局上下文信息,又提供了感兴趣区域的详细视图。
Localized Vision Backbone
Handling Localization Inputs:完整图像 $I$ 及其掩码 $M$ 经过补丁嵌入层处理,随后通过全局视觉编码器 $f_{G}(\cdot)$ 获得全局视觉特征 $\mathbf{z}$。聚焦裁剪图像 $I^{’}$ 及其掩码 $M^{’}$ 则经过类似流程,由区域视觉编码器 $f_{R}(\cdot)$ 处理,不同之处在于 $f_{R}(\cdot)$ 同时将 $\mathbf{z}$ 作为上下文输入,以获得最终融合的视觉特征 $\mathbf{z}^{’}$。具体表达式如下: $$ \mathbf{x} = E_{\text{I}}(I) + E_{\text{M}}(M) + P, \quad \mathbf{z} = f_{\text{G}}(\mathbf{x}) $$ $$ \mathbf{x}’ = E_{\text{I}}(I’) + E_{\text{M}}(M’) + P, \quad \mathbf{z}’ = f_{\text{R}}(\mathbf{x}’, \mathbf{z}) $$ Regional Feature Encoding with Gated Cross-Attention Adapters:为将全局上下文融入焦点提示,本文在区域视觉编码器$f_{R}$的每个Transformer模块中插入门控交叉注意力适配器。在自注意力层和前馈层之后,添加了一个门控交叉注意力机制,使局部特征能够关注全局特征: $$\mathbf{h}^{(l)’} = \mathbf{h}^{(l)} + \tanh\left(\gamma^{(l)}\right) \cdot \text{CrossAttn}\left(\mathbf{h}^{(l)}, \mathbf{z}\right)$$ $$\mathbf{h}_{\text{Adapter}}^{(l)} = \mathbf{h}^{(l)’} + \tanh\left(\beta^{(l)}\right) \cdot \text{FFN}\left(\mathbf{h}^{(l)’}\right)$$ 其中,$\mathbf{h}^{(l)}$ 是 $f_R$ 中第 $l$ 个自注意力模块的输出,$\gamma^{(l)}$ 和 $\beta^{(l)}$ 是可学习的缩放参数(初始化为零)。为减少参数量,$f_R$ 与 $f_G$ 共享自注意力模块的权重。
Extension to Videos
由于图像可视为仅含单帧的视频,该模型自然能够通过处理帧序列及其对应掩码来扩展至视频处理。所有帧的视觉特征在序列维度上进行拼接,并输入语言模型以生成跨视频帧的详细定位描述,这与视觉语言模型预训练时处理视频的方式兼容。本文利用SAM 2 将稀疏定位信息转换为每帧的掩码。
DLC-SDP: SSL-based Data Pipeline
Stage 1: Leveraging Existing Annotations
DLC-SDP的第一阶段将数据生成问题重构为视觉基础的描述扩展任务。本文利用现有分割数据集中高质量的人工标注掩码和关键词(物体类别名称、部件名称、实体等),将视觉语言模型的查询任务重构为:在给定参考掩码的条件下,将每个区域关键词扩展为详细的描述性标题。
Stage 2: SSL with Unlabeled Data
由于依赖高质量人工标注不具备可扩展性,DLC-SDP的第二阶段采用了基于自训练的半监督学习技术,本文自训练方法包含四个步骤:
- 掩码生成。采用开放词汇分割模型从未标注的网络图像中提取物体掩码。
- 描述生成。基于标注分割数据集在DLC数据集上预训练的DAM模型,为这些区域生成详细的局部化描述。
- 置信度过滤。遵循自监督学习文献的方法,应用基于CLIP的置信度过滤机制,仅保留高质量样本。
- 数据扩展。新生成的(图像、掩码、描述)三元组被添加至训练数据集中。 此外,为支持DAM进行多粒度描述生成的能力,本文利用大型语言模型将详细描述总结为更简短的形式(如短语或短句),使DAM能够灵活地生成从简洁短语到多句子叙述的描述文本。
DLC-Bench: Benchmark for DLC
本文推出了DLC-Bench,这是一个专为密集图像描述(DLC)设计的基准测试,旨在消除对完整参考描述的需求。DLC-Bench的核心思想在于:理想的描述应包含丰富的相关细节,同时严格避免事实性错误或涉及无关区域的信息。因此,我们通过为每个区域预定义一组正向与负向属性来评估预测结果。
如图所示,针对DAM类模型的评估过程包含两个步骤:1. 模型被要求为基准数据集中的每个掩码区域生成详细描述。2. 由一个大语言模型担任评估者,通过回答一组人工设计的关于区域细节的正面与负面问题,对生成的描述进行评判。该方法提供了更为灵活和准确的评估,鼓励模型生成信息丰富且描述精准的文本,而无需受限于不完整的参考标注。



