Abstract
随着扩散模型(Diffusion Model)的最新进展,图像编辑领域取得了显著的突破。然而,大多数现有方法主要集中于全局或主体级别的修改,在仅依赖文本提示的情况下,对场景中特定对象进行编辑时常常面临限制,尤其当场景中存在多个共存对象时。为应对这一挑战,我们引入了一种对象级生成任务,称为Referring Image Editing,该任务使得能够使用文本提示识别和编辑图像中的特定源对象。
为有效解决这一任务,我们提出了一个定制的框架,称为 ReferDiffusion。该框架旨在将输入提示解耦为多个嵌入表示,并采用一种混合监督的多阶段训练策略。为了促进该领域的进一步研究,我们还引入了 RefCOCO-Edit 数据集,其中包含用于训练和评估的图像、编辑提示、源对象分割掩码以及参考编辑后的图像。
1. Introduction
paper: Referring Image Editing: Object-level Image Editing via Referring Expressions
2. Related Work
3. Referring Image Editing
3.1 Problem Definition
RIE 的输入包括两部分:源图像 I s I_s Is 和文本提示 P P P,其中 P P P 指定目标对象及其编辑要求;输出则是根据提示编辑后的图像 I c I_c Ic。文本提示包括两部分:指代部分 P r P_r Pr 用于指明源对象;以及编辑部分 P e P_e Pe,用于描述图像应如何被编辑。此外,值得注意的是,编辑区域并不严格局限于源对象的分割掩码;相反,模型应根据提供的提示生成自然且有意义的图像。
Difference with other image-to-image tasks. RIE 的一个主要特点是,它强调模型在目标定位和识别能力上的挑战。相比于基于区域的图像编辑方法或需要掩码或边界框指示目标的修复方法,RIE 不再需要用户提供额外的手动输入,因而更直观且更易于使用。此外,与主要处理具有显著 “主体” 的图像或仅支持全局修改的通用文本驱动或主体驱动的图像编辑方法不同,RIE 更关注用户希望通过文本提示仅编辑包含多个对象的真实图像中的特定部分的场景。
3.2 RefCOCO-Edit Dataset
构建了一个指代图像编辑数据集,命名为 RefCOCO-Edit。该数据集由从广泛认可的指代数据集 RefCOCO 中精心挑选的 400 张图像组成。每张图像通常包含至少两个编辑样本。对于 RefCOCO-Edit 中的每个样本,除了提供源图像 I s I_s Is、文本提示 P P P 和参考编辑输出 I e I_e Ie 外,还包括源对象的掩码 M M M 以及真实标签中指示粗略编辑区域的掩码 M c M_c Mc,以便于评估。此外,在文本提示中,我们明确指出了指代部分 P r P_r Pr 和编辑部分 P c P_c Pc,以辅助模型训练。
标注过程包含三个关键步骤:
-
Source object selection. 指代图像编辑的一个重要特性是它需要模型具有较强的区分能力。标注人员可以自由选择源对象,但需遵循以下两条规则:
-
源对象不能是图像中唯一显著的主体。这避免了过于简单的情况,并将 RIE 与通用图像编辑任务区分开来。
-
场景中必须存在另一个对象,与源对象在语义类别或视觉特征(如颜色和形状)上相似。这进一步提升了对模型区分能力的挑战。
-
-
Prompt creation. 我们使用来自指代数据集的表达作为 P r P_r Pr,对 P e P_e Pe 的内容则不施加具体限制。还允许涉及虚构或富有想象力的场景的提示。组合后的文本提示以灵活和不受限制的方式结构化。此外,我们使用大语言模型丰富提示的多样性,但所有提示都经过人工审查以确保其有效性。
-
Reference ground-truth generation. 我们使用现有的生成模型结合人工输入与选择来生成参考真实标签。我们建立了三种标注流程,标注人员可以选择最适合的一种或多种流程以找到优质的参考输出:
-
使用参考替代对象的图像合成方法。
-
基于区域的图像编辑模型,手动指定编辑区域。
-
图像修复方法,用于从场景中移除对象。
所有参考输出均需经过人工验证,以确保质量。
-
4. Approach
4.1 Existing Approaches and Motivation
现有的扩散模型可以实现许多功能,然而,大多数现有方法存在其自身的局限性,无法直接应用于这一任务。
首先,通用图像编辑模型无法直接使用指代图像编辑提示对输入图像进行编辑,即使在 RefCOCO-Edit 数据集上进行了微调。这可能是因为这些模型最初是为生成或编辑图像中唯一显著主体而设计和训练的,因此难以控制模型仅定位并编辑所需的特定区域,即它们缺乏区分能力。另一种直观的方案是使用分割模型识别源对象的掩码,然后利用基于区域的编辑或修复方法进行编辑。然而,这类方法面临一个主要问题:编辑目标的形状与源对象的形状往往差异很大,这会产生非常不自然的输出。
因此,RIE 任务的两个主要挑战显现出来:
-
训练具有区分能力的模型,能够定位特定对象的同时保留生成能力;
-
解耦 “移除” 区域和 “绘制” 区域,以生成自然的输出。
为了解决这些挑战,我们为 RIE 任务引入了一种基线方法:ReferDiffusion。它具有以下特点:
-
Region-Embedder Module. 用于为指代区域和编辑区域生成独立的嵌入表示。
-
Region-control Loss. 引导网络保持背景不受影响。
此外,我们提出了一种混合监督训练策略,通过逐步关注单一任务,来温和地训练模型。
4.2 ReferDiffusion
给定源图像 I s I_s Is 和文本提示 P P P,网络首先通过编码器 E E E 将 I s I_s Is 转换为潜在空间。同时,从 P P P 中提取文本特征 F P F_P FP。接下来,区域嵌入模块(Region-embedder Module, REM)处理 F s F_s Fs 和 F P F_P FP,生成一组嵌入:视觉嵌入 e v e_v ev、指代嵌入 e r e_r er 和编辑嵌入 e e e_e ee。这些嵌入融合为最终的条件向量 c c c。随后,与常规扩散模型类似,网络 ϵ θ \epsilon_\theta ϵθ 进行 T T T 次迭代,对潜在变量 z T z_T zT 逐步去噪。最后,通过解码器 D D D 将去噪后的特征 z 0 z_0 z0 解码为编辑后的输出图像。模型使用基于分类器自由引导(Classifier-free Guidance)的两种条件进行训练,条件分别为图像条件 c I c_I cI 和上述条件向量 c c c:
L = E E ( x ) , c I , c , ϵ ∼ N ( 0 , 1 ) , t ∥ ϵ − ϵ θ ( z t , t , E ( c T ) , c ∥ 2 2 \mathcal L=\mathbb E_{E(x),c_I,c,\epsilon\sim\mathcal N(0,1),t}\parallel\epsilon-\epsilon_\theta(z_t,t,E(c_T),c\parallel^2_2 L=EE(x),cI,c,ϵ∼N(0,1),t∥ϵ−ϵθ(zt,t,E(cT),c∥22
Region-Embedder Module. 在大多数通用文本到图像的扩散模型中,条件向量完全依赖文本提示 P P P。虽然这足以描述全局级别的图像主题或内容,但针对性的图像编辑(RIE)提出了独特挑战。如前所述,源对象的位置和形状可能与编辑目标不同。为了解决这个问题,我们将条件向量 c c c 分解为多个方面,并引入区域嵌入模块(REM)。
REM 接收两个输入:编码后的源图像特征 F s ∈ R H × W × C e F_s\in\R^{H\times W\times C_e} Fs∈RH×W×Ce 和提示嵌入 F P ∈ R N e × C e F_P\in\R^{N_e\times C_e} FP∈RNe×Ce,其中 C e C_e Ce 表示通道数, N e N_e Ne 表示 CLIP 中的 token 数量。REM 从输入中分别提取三个嵌入,每个嵌入关注不同的视角。
REM 包含了两个组件:
-
Edition Embedding Extractor. 编辑嵌入提取器专注于定位并恢复文本提示中编辑部分 P e P_e Pe 的嵌入。过程如下:对 F P F_P FP 应用一个自注意力层,然后对结果向量进行全局平均池化,得到编辑嵌入 e e e_e ee。通过对 P e P_e Pe 的特征均值进行监督,确保 e e e_e ee 包含关于编辑目标的信息。
-
Referring Embedding Extractor. 指代嵌入提取器也对 F P F_P FP 应用自注意力层,并对结果向量进行全局平均池化,得到特征 F e r ∈ R 1 × C e F_{er}\in\R^{1\times C_e} Fer∈R1×Ce,随后,该特征分为两个路径:
-
通过将多层感知机(MLP)变换后的 F e r F_{er} Fer 作为滤波器应用于图像特征 F s F_s Fs,预测源对象的掩码:
M ^ = F s MLP ( F e r ) T \hat M=F_s\text{MLP}(F_{er})^T M^=FsMLP(Fer)T
该预测由源对象的真实掩码监督,引导 F e r F_{er} Fer 学习源对象的位置。此外,从 F s F_s Fs 中通过 M ^ \hat M M^ 聚合视觉特征,生成视觉嵌入 e v e_v ev,提供源对象的视觉信息。
-
额外的 MLP 应用于 F e r F_{er} Fer,生成指代嵌入 e r e_r er ,其中包含源对象的丰富位置信息。
最终,将 e v , e r , e e e_v,e_r,e_e ev,er,ee 使用交叉注意力层融合。这些条件嵌入与提示嵌入 F P F_P FP 在 token 维度上连接,作为交叉注意力层的键和值输入,同时 F P F_P FP 作为查询输入,从提示和所有派生嵌入中整合信息,生成最终的条件向量 c c c。该条件向量随后用于扩散过程。
-
Region-Control Loss. 在指代图像编辑中,我们的目标是仅修改必要的图像部分,同时保持其他像素不变。为此,我们引入区域控制损失,利用 RefCOCO-Edit 数据集中的编辑区域掩码 M e M_e Me 。受 DragGAN 启发,我们在扩散过程的每一步对编辑区域外的像素施加潜在空间监督。区域控制损失 L r L_r Lr 计算如下:
L r = ∥ z t − s g [ z 0 ′ ] ⊙ ( 1 − M e ) ∥ 1 L_r=\parallel z_t-sg[z^\prime_0]\odot(1-M_e)\parallel_1 Lr=∥zt−sg[z0′]⊙(1−Me)∥1
其中 z 0 ′ z^\prime_0 z0′ 是图像无噪潜在变量, s g sg sg 是停止梯度操作符。本质上,该损失鼓励网络对非编辑区域保持原始潜在变量,从而帮助模型保留背景区域不变,同时提供编辑区域的提示,进一步促进模型学习如何解耦指代区域和编辑区域。
4.3 Training Strategy
如前所述,RIE(指代图像编辑)的一个主要挑战在于训练一个能够同时擅长两种截然不同任务的模型:强辨别能力和受控生成能力。此外,生成模型训练中的另一个常见障碍是可用的训练数据通常有限。为了解决这些问题,我们提出了一种混合监督的多阶段训练策略。该策略能够有效帮助模型在训练中一次专注于一个任务,同时实现训练数据的合成。
自监督训练: 利用指代表达数据集合成训练样本进行自监督训练。给定一个指代分割样本,包括图像、目标对象掩码和指代表达,我们首先对对象掩码进行扩展,并用随机颜色覆盖源对象。同时,从表达中提取主题名称。然后,我们使用掩码作为指代部分,并将主题名称作为编辑部分,生成一个新的 RIE 提示,例如:“在蓝色掩码上画一个三明治(Paint a sandwich on the blue mask)”。为增强数据多样性,我们还应用了随机裁剪、翻转和通过大语言模型对提示进行重述等数据增强技术。在这一初始阶段,合成的源对象在图像中非常显眼且易于定位,因此模型可以专注于学习如何在目标区域绘制内容,而不会修改其他无关像素。
全监督训练: 在第二阶段,我们在提出的 RefCOCO-Edit 数据集上对模型进行全监督训练。这一阶段旨在教会模型完成 RIE 任务的完整流程,包括定位目标对象以及编辑图像。