SmartEdit: Exploring Complex Instruction-based Image Editing with Multimodal Large Language Models
目前基于指令的图像编辑方法,如InstructPix2Pix,由于在扩散模型中依赖于简单的CLIP文本编码器,在复杂场景下往往不能产生令人满意的结果。
为了纠正这一点,本文介绍了SmartEdit,这是一种基于指令的图像编辑的新方法,它利用多模态大型语言模型(mllm)来增强其理解和推理能力。然而,在需要复杂推理的情况下,这些元素的直接集成仍然面临挑战。
为了解决这种情况,我们提出BIM (Bidirectional Interaction Module, 双向交互模块),实现输入图像与MLLM(多模态大语言模型)输出之间全面的双向信息交互。在训练过程中,我们首先结合感知数据来提高扩散模型的感知和理解能力。随后,我们证明了少量复杂指令编辑数据可以有效地激发SmartEdit对更复杂指令的编辑能力。我们进一步构建了一个新的评估数据集,Reason-Edit,专门为复杂的基于指令的图像编辑量身定制。该评估数据集的定量和定性结果表明,我们的SmartEdit超越了以前的方法,为复杂的基于指令的图像编辑的实际应用铺平了道路。
图1所示。我们提出了基于指令的图像编辑模型SmartEdit,它利用多模态大语言模型(Multimodal Large Language Models, mllm)来增强基于指令的编辑方法的理解和推理能力。通过专门的设计,我们的SmartEdit能够处理复杂的理解(包含各种对象属性的指令,如位置、相对大小、颜色、镜子内外)和推理场景。
Introduction
近年来,由于扩散模型的发展,文本到图像的合成[8,13,23,26,27,29]取得了重大进展。这些方法使得生成的图像不仅与自然语言描述一致,而且与人类的感知和偏好一致,标志着该领域的重大飞跃。以InstructPix2Pix为代表的基于指令的图像编辑方法[1,36]利用预训练的文本到图像扩散模型作为先验。这使得用户可以方便,毫不费力地修改图像,通过自然语言指令为普通用户。
虽然现有的基于指令的图像编辑方法可以有效地处理简单的指令,但在处理复杂场景时往往存在不足,这需要模型具有更强大的理解和推理能力。如图1所示,有两种常见的复杂场景类型。第一种情况是,原始图像包含多个对象,指令通过某些属性(如位置、相对大小、颜色、在镜像内外)只修改其中一个对象。另一种是需要世界知识来识别要编辑的对象(例如可以显示时间的对象)。我们将这两种类型分别定义为复杂理解场景和复杂推理场景。处理这两种场景对于实际的指令编辑是至关重要的,但是现有的基于指令的图像编辑方法可能在这些场景中失败(如图2所示)。在本文中,我们试图找出现有的基于指令的图像编辑方法在这些场景中失败的原因,并试图解决这些场景中的挑战。
(根据 Figure 1 所示,SmartEdit 可以处理两种复杂场景:
- 原始图像包含多个对象,指令通过某些属性修改其中一个对象: 左边/中间/右边的苹果换成橙子: 这张图片中包含多个苹果,指令指定了要修改的是左边/中间/右边的苹果,并且要将它们换成橙子。 左边/右边的动物换成白色狐狸: 这张图片中包含多个动物,指令指定了要修改的是左边/右边的动物,并且要将它们换成白色狐狸。 更大/更小的熊换成狼: 这张图片中包含多个熊,指令指定了要修改的是更大/更小的熊,并且要将它们换成狼。 红色/绿色的苹果换成桃子: 这张图片中包含多个苹果,指令指定了要修改的是红色/绿色的苹果,并且要将它们换成桃子。 镜像中的狗换成老虎: 这张图片中包含一个狗和一个镜像,指令指定了要将镜像中的狗换成老虎。 请将通常被称为人类朋友的动物换成老虎: 这张图片中包含一个动物,指令需要利用世界知识来识别这个动物,并将其换成老虎。
- 需要世界知识来识别要编辑的对象: 请去掉可以显示时间的物体: 这张图片中包含多个物体,指令需要利用世界知识来识别可以显示时间的物体,并将其去掉。 请将通常被称为人类朋友的动物换成老虎: 这张图片中包含一个动物,指令需要利用世界知识来识别这个动物,并将其换成老虎。
)
现有的基于指令的图像编辑方法在这些场景中失败的第一个原因是,它们通常依赖于扩散模型(例如,Stable diffusion)中的简单CLIP文本编码器[25]来处理指令。在这种情况下,这些模型努力1)通过指令理解和推理,2)整合图像来理解指令。为了解决这些限制,我们将多模态大型语言模型(mllm)(例如,LLaV A)[22,39]引入到基于指令的编辑模型中。我们的方法SmartEdit联合优化了mllm和扩散模型,利用mllm强大的推理能力来完成基于指令的图像编辑任务。
虽然用mllm代替扩散模型中的CLIP编码器可以缓解一些问题,但当涉及到需要复杂理解和推理的示例时,这种方法仍然不足。这是因为要编辑的输入图像(原始图像)通过直接的连接被整合到稳定扩散模型的UNet中,并通过交叉注意操作与MLLM输出进一步交互。在这个设置中,图像特征作为查询,MLLM输出作为键和值。这意味着MLLM输出单方面调制并与图像特征交互,从而影响结果。为了解决这个问题,我们进一步提出了双向交互模块(BIM)。该模块重用了LLaVA视觉编码器从输入图像中提取的图像信息。它还促进了该图像与MLLM输出之间的全面双向信息交互,使模型在复杂场景中表现更好。
导致现有的基于指令的编辑方法失败的第二个原因是缺乏具体的数据。当仅对编辑数据集进行训练时,例如在Instructpix2pix[1]和MagicBrush[36]中使用的数据集,SmartEdit还难以处理需要复杂推理和理解的场景。这是因为SmartEdit还没有接触到这些场景中的数据。一种直接的方法是生成大量类似于这些场景的成对数据。然而,这种方法过于昂贵,因为为这些场景生成数据的成本很高。
在本文中,我们发现有两个关键来弥补具体编辑数据的不足。一是增强UNet的感知能力[28],二是用一些高质量的例子来激发这些场景下的模型能力。相应地,我们1)将感知相关数据(例如,分割)纳入模型的训练中。2)用复杂的指令合成一些高质量的配对数据来微调我们的SmartEdit(类似于LISA[19])。这样,SmartEdit不仅减少了复杂场景下对配对数据的依赖,而且有效地激发了其处理这些场景的能力。
看一下LISA这篇论文
通过模型设计和数据利用策略,SmartEdit可以理解复杂的指令,超越了以前的指令编辑方法所能做到的范围。为了更好地评估基于指令的图像编辑方法的理解和推理能力,我们收集了Reason-Edit数据集,该数据集共包含219对图像-文本对。请注意,在Reason-Edit数据集和少量高质量的合成训练数据对之间没有重叠。基于Reason-Edit数据集,对现有的基于指令的图像编辑方法进行了综合评价。在ReasonEdit数据集上的定量和定性结果都表明,SmartEdit明显优于以前基于指令的图像编辑方法。
综上所述,我们的贡献如下:
- 我们分析并重点研究了基于指令的图像编辑方法在更复杂指令下的性能。在过去的研究中,这些复杂的情况往往被忽视,也很少被探索。
- 我们利用MLLMs来更好地理解指令。为了进一步提高性能,我们提出了一个双向交互模块来促进文本和图像特征之间的信息交互。
- 我们提出了一种新的数据集利用策略,以提高SmartEdit在复杂场景下的性能。在使用传统编辑数据的基础上,引入感知相关数据,增强UNet在扩散过程中的感知能力。此外,我们还添加了少量的合成编辑数据,以进一步激发模型的推理能力。
- 评估数据集Reason-Edit专门用于评估复杂场景下基于指令的图像编辑任务的性能。对Reason-Edit的定性和定量结果都证明了SmartEdit的优越性。
图2。对于更复杂的说明或场景,InstructPix2Pix无法遵循说明。
Related Work
Image Editing with Diffusion Models. 图像编辑与扩散模型
预训练的文本到图像扩散模型[8,13,23,26,27,29]可以有力地辅助图像编辑任务。基于指令的图像编辑任务[1,4,11,12,16,17,32,36,38]需要用户提供一条指令,该指令将原始图像转换为与给定指令匹配的新设计图像。有些方法可以通过使用无调优方法来实现这一点。例如,Prompt-to-Prompt[12]建议通过比较原始输入标题和修改后的标题来修改交叉注意图。MasaCtrl[4]将扩散模型中已有的自注意转化为相互的自注意,可以帮助从源图像中查询相关的局部内容和纹理以保持一致性。此外,由于配对图像指令编辑数据集的稀缺,开创性的作品InstructPix2Pix[1]引入了通过微调GPT-3[2]和稳定扩散的Prompt-to-Prompt创建的大规模视觉语言图像编辑数据集,并进一步微调UNet[28],通过提供简单的指令即可编辑图像。为了增强InstructPix2Pix对实景图像的编辑效果,MagicBrush[36]进一步提供了一个大规模的人工标注数据集,用于指导实景图像的编辑。
最近的作品InstructDiffusion[11]也采用了InstructPix2Pix的网络设计,以联合训练的方式统一视觉任务。通过利用多个不同的数据集,它可以处理各种视觉任务,包括理解任务(如分割和关键点检测)和生成任务(如编辑和增强)。与InstructDiffusion相比,我们主要关注的是基于指令的图像编辑领域,特别是复杂的理解和推理场景。在这些场景中,InstructDiffusion通常生成较差的结果。
LLM with Diffusion Models. 大型语言模型和扩散模型
独特的开源LLaMA[6,31]在大型语言模型(Large Language Models, llm)的帮助下显著提高了视觉任务的性能。诸如LLaV A和MiniGPT-4之类的开创性作品通过指令调优改进了图像-文本对齐。虽然许多基于mllm的研究[7,22,24,39]已经证明了它们在各种任务中的强大能力,主要是那些依赖于文本生成的任务(例如,人机交互,复杂推理,科学问答等),GILL[18]是mllm和扩散模型之间的桥梁。它学习用llm处理图像,并能够根据输入文本生成连贯的图像。SEED[9]提出了一种创新的图像标记器,使LLM能够同时处理和生成图像和文本。SEED2[10]通过将生成嵌入与unCLIP-SD的图像嵌入对齐,进一步改进了标记器,从而可以更好地保留丰富的视觉语义并重建更真实的图像。Emu[30]可以被描述为一个多模态通才,用下一个标记预测目标进行训练。CM3Leon[35]提出了一种能够执行文本到图像和图像到文本生成的多模态语言模型。它采用了CM3多模态架构,该架构对不同的教学风格数据进行了微调,并利用了一种适应于纯文本语言模型的训练方法。
Preliminary. 准备
基于指令的图像编辑的目标是根据指令
c
T
c_T
cT对输入图像
x
x
x进行特定的修改,从而得到目标图像
y
y
y。基于潜在扩散的InstructPix2Pix是该领域的开创性工作。对于目标图像
y
y
y和编码器
E
\mathcal{E}
E,扩散过程在编码潜函数
z
=
E
(
y
)
z=\mathcal{E}(y)
z=E(y)中引入噪声,产生有噪声潜函数
z
t
z_t
zt,随着时间步长
t
∈
T
t \in T
t∈T,噪声电平逐渐增大。给定图像条件
c
x
c_x
cx和文本指令条件
c
T
c_T
cT,其中
c
x
=
E
(
x
)
c_x=\mathcal{E}(x)
cx=E(x),然后训练UNet
ϵ
δ
\epsilon_\delta
ϵδ来预测添加到噪声潜函数
z
t
z_t
zt中的噪声。通过直接连接
c
x
c_x
cx和
z
t
z_t
zt来合并图像条件。潜在扩散的具体目的如下:
L
d
i
f
f
u
s
i
o
n
=
E
E
(
y
)
,
E
(
x
)
,
c
T
,
ϵ
∼
N
(
0
,
1
)
,
t
[
∥
ϵ
−
ϵ
δ
(
t
,
c
o
n
c
a
t
[
z
t
,
E
(
x
)
]
,
c
T
)
∥
2
2
L_\mathrm{diffusion}=\mathbb{E}_{\mathcal{E}(y), \mathcal{E}(x),c_T,\epsilon\sim N(0,1),t}[\|\epsilon-\epsilon_\delta(t, {concat}[z_t, \mathcal{E}(x)], c_T)\|_2^2
Ldiffusion=EE(y),E(x),cT,ϵ∼N(0,1),t[∥ϵ−ϵδ(t,concat[zt,E(x)],cT)∥22 公式(1)
其中,
ϵ
\epsilon
ϵ为未缩放噪声,
t
t
t为采样步长,
z
t
z_t
zt为步长
t
t
t处的潜在噪声,
E
(
x
)
\mathcal{E}(x)
E(x)为图像条件,
c
T
c_T
cT为文本指令条件。
c
o
n
c
a
t
{concat}
concat对应于连接操作。
尽管InstructPix2Pix在指令编辑方面具有一定的有效性,但在处理复杂的理解和推理场景时,其性能受到限制。为了解决这个问题,我们在网络架构中引入了一个多模态大语言模型(MLLM),并提出了一个双向交互模块(BIM)来实现MLLM输出和图像信息之间的双向信息交互。此外,我们还探讨了数据利用策略,发现感知相关数据和少量复杂的编辑数据对于提高模型的性能至关重要。我们将在下一节中详细描述这些方面。
Method
在本文中,我们介绍了SmartEdit,专门设计用于处理复杂的指令编辑场景。在本节中,我们首先提供SmartEdit框架的详细概述(第4.1节)。然后,我们深入研究双向交互模块(第4.2节)。在4.3节中,我们讨论了如何增强扩散模型中UNet的感知和理解能力,并激发mllm处理复杂场景的能力。最后,我们介绍了Reason-Edit,它主要用于评估基于指令的图像编辑方法在复杂场景下的能力。(4.4节)。
The Framework of SmartEdit. SmartEdit的框架
给定图像
x
x
x和指令
c
c
c,指令
c
c
c被标记为
(
s
1
,
.
.
.
,
s
T
)
(s_1,...,s_T)
(s1,...,sT),我们的目标是基于
c
c
c获得目标图像
y
y
y。如图3所示,图像
x
x
x首先经过图像编码器和FC层处理,得到
v
μ
(
x
)
v_{\mu}(x)
vμ(x)。然后
v
μ
(
x
)
v_{\mu}(x)
vμ(x)与令牌嵌入
(
s
1
,
.
.
.
,
s
T
)
(s_1,...,s_T)
(s1,...,sT)一起被送入LLM。LLM的输出是离散的令牌,不能用作后续模块的输入。因此,我们将这些离散令牌对应的隐藏状态作为以下模块的输入。为了联合优化LLaV A和扩散模型,我们在GILL[18]的基础上,用r个新token扩展原有的LLM词汇表
[
I
M
G
1
]
,
.
.
.
,
[
I
M
G
r
]
[IMG_1], ..., [IMG_r]
[IMG1],...,[IMGr]并将
r
[
I
M
G
]
r[IMG]
r[IMG]令牌附加到指令
c
c
c的末尾。具体而言,我们将一个可训练矩阵
E
E
E合并到LLM的嵌入矩阵中,该矩阵表示
r
[
I
M
G
]
r[IMG]
r[IMG]令牌嵌入。随后,我们最小化生成的
r
[
I
M
G
]
r[IMG]
r[IMG]令牌的负对数似然,条件是之前已经生成的令牌:
L
L
L
M
(
c
)
=
−
∑
i
=
1
r
log
p
{
θ
∪
E
}
(
[
I
M
G
i
]
∣
v
μ
(
x
)
,
s
1
,
.
.
.
,
s
T
,
[
I
M
G
1
]
,
.
.
.
,
[
I
M
G
i
−
1
]
)
L_{LLM}(c)=-\sum_{i=1}^{r}{\log p_{\{\theta\cup E\}}}([IMG_i]\mid v_\mu(x), s_1,...,s_T, [IMG_1], ..., [IMG_{i-1}])
LLLM(c)=−∑i=1rlogp{θ∪E}([IMGi]∣vμ(x),s1,...,sT,[IMG1],...,[IMGi−1]) 公式(2)
LLM中的大部分参数被冻结,我们利用LoRA[15]进行有效的微调。我们将
r
[
I
M
G
]
r [IMG]
r[IMG]令牌对应的隐藏状态
h
h
h作为下一个模块的输入。
考虑到LLM中隐藏状态的特征空间与剪辑文本编码器的特征空间存在差异,我们需要将隐藏状态
h
h
h与剪辑文本编码器空间对齐。受BLIP2[20]和DETR[5]的启发,我们采用带有
6
−
6-
6−层变压器[33]和
n
n
n个可学习查询的QFormer
Q
β
Q_\beta
Qβ,得到特征
f
f
f。随后,图像编码器
E
ϕ
E_\phi
Eϕ输出的图像特征
v
v
v通过双向交互模块(BIM)与
f
f
f交互,得到
f
′
f'
f′和
v
′
v'
v′。上述过程表示为:
h
=
L
L
a
V
A
(
x
,
c
)
,
h=\mathrm{LLaVA}(x,c),
h=LLaVA(x,c),
f
=
Q
β
(
h
)
,
f=Q_\beta\left(h\right),
f=Qβ(h),
v
=
E
ϕ
(
x
)
,
v=E_\phi\left(x\right),
v=Eϕ(x), 公式(3)
f
′
,
v
′
=
B
I
M
(
f
,
v
)
f^{\prime},v^{\prime}={BIM}\left(f,v\right)
f′,v′=BIM(f,v)
对于扩散模型,我们按照Instructpix2pix的设计,将编码后的图像潜函数
E
(
x
)
\mathcal{E}(x)
E(x)和噪声潜函数
z
t
z_t
zt连接起来。与Instructpix2pix不同,我们使用
f
′
f'
f′作为UNet中的键和值,并将
v
′
v'
v′组合成特征,然后以残差方式进入UNet。具体过程可表述为:
L
d
i
f
f
u
s
i
o
n
=
E
E
(
y
)
,
E
(
x
)
,
c
T
,
ϵ
∼
N
(
0
,
1
)
,
,
t
[
∥
ϵ
−
ϵ
δ
(
t
,
c
o
n
c
a
t
[
z
t
,
E
(
x
)
]
+
v
′
,
f
′
)
∥
2
2
L_{diffusion}=\mathbb{E}_{\mathcal{E}(y),\mathcal{E}(x),c_T,\epsilon\sim N(0,1),,t}[\|\epsilon-\epsilon_\delta(t, {concat}[z_t,\mathcal{E}(x)]+v',f')\|_2^2
Ldiffusion=EE(y),E(x),cT,ϵ∼N(0,1),,t[∥ϵ−ϵδ(t,concat[zt,E(x)]+v′,f′)∥22 公式(4)
为了与方程1保持一致,我们在这里省略了Conv操作。
图3。SmartEdit的整体框架。对于指令,我们首先将r [IMG]令牌附加到指令c的末尾。它们将与图像x一起发送到LLaV A,然后LLaV A可以获得这r [IMG]令牌对应的隐藏状态。然后将隐藏状态送入QFormer,得到特征f。随后,图像编码器Eϕ输出的图像特征v通过双向交互模块(BIM)与f交互,得到f '和v '。将f '和v '输入扩散模型,实现基于指令的图像编辑任务。
Bidirectional Interaction Module. 双向交互模块
BIM的设计如图4所示。它包括一个自注意块、两个交叉注意块和一个MLP层。BIM的两个输入分别是QFormer的输出
f
f
f和图像编码器的输出
v
v
v。经过
f
f
f和
v
v
v的双向信息交互,BIM最终输出
f
′
f'
f′和
v
′
v'
v′。在BIM中,这个过程始于自我关注机制。在此之后,
f
f
f作为查询,通过交叉注意块与输入
v
v
v交互,
v
v
v同时充当键和值。这种相互作用导致通过逐点MLP生成
f
′
f'
f′。在创建
f
′
f'
f′之后,它作为键和值与
v
v
v交互,
v
v
v现在作为查询。这第二次交叉注意互动导致了
v
′
v'
v′的产生。
正如引言中所讨论的,提议的BIM模块重用图像特征,并将其作为补充信息输入到UNet中。该模块实现了两个交叉注意块,实现了图像特征和文本特征之间的鲁棒双向信息交互。与不采用BIM模块或只在一个方向上融合图像特征和文本特征相比,配备BIM模块的SmartEdit效果更好。不同设计的实验对比见5.3节。
图4。BIM模块的网络设计。在本模块中,输入信息f和v将通过不同的交叉注意进行双向信息交互。
Dataset Utilization Strategy. 数据集利用策略
在SmartEdit的训练过程中,当单独利用从InstructPix2Pix和MagicBrush收集的数据集作为训练集时,出现了两个主要挑战。第一个挑战是SmartEdit对位置和概念的感知很差。第二个挑战是,尽管配备了mlm,但SmartEdit在需要推理的场景中的能力仍然有限。总之,如果只在传统的编辑数据集上进行训练,SmartEdit在处理复杂场景方面的有效性是有限的。经过分析,我们确定了这些问题的原因。第一个问题源于扩散模型中的UNet缺乏对感知和概念的理解,导致SmartEdit对位置和概念的感知较差。第二个问题是,SmartEdit对需要推理能力的编辑数据的接触有限,这反过来又限制了它的推理能力。
为了解决第一个问题,我们将分割数据合并到训练集中。这些修改显著增强了SmartEdit模型的感知能力。关于第二个问题,我们从LISA[19]中得到启发,少量的推理分割数据可以有效激活MLLM的推理能力。在这一见解的指导下,我们建立了数据生产流水线,合成了476对数据(每个样本包含原始图像、指令和合成目标图像)作为训练数据的补充。这个合成编辑数据集包括两种主要类型的场景:复杂理解和推理场景。对于复杂的理解场景,原始图像包含多个对象,相应的指令根据各种属性(即位置、颜色、相对大小、在镜内或镜外)修改特定对象。我们特别考虑了镜像属性,因为它是一个典型的例子,需要对场景(镜子内外)有很强的理解才能表现良好。对于推理场景,我们涉及复杂的推理案例,需要世界知识来识别特定的对象。该合成编辑数据集的有效性以及不同数据集对模型性能的影响将在5.4节中详细介绍。在补充材料中描述了数据生成管道的细节和一些可视化示例。
Reason-Edit for Better Evaluation.
为了更好地评估现有的指令编辑方法和SmartEdit在复杂理解和推理场景中的能力,我们收集了一个评估数据集Reason-Edit。Reason-Edit由219个图像-文本对组成。与合成训练数据对一致,Reason-Edit也以相同的方式进行分类。注意,在Reason-Edit中的数据和合成训练集之间没有重叠。通过Reason-Edit,我们可以在理解和推理场景方面彻底测试基于指令的图像编辑模型的性能。我们希望更多的研究者能够从这些角度关注基于教学的图像编辑模型的能力,从而促进基于教学的图像编辑方法的实际应用。
Experiments
Experimental Setting
**Training Process and Implementation Details. 培训过程和实施细则。**SmartEdit的培训过程和实施细节可在补充材料中找到。
**Network Architecture. 网络体系结构。**对于具有视觉输入的大型语言模型(例如LLaV A),我们选择LLaV A-1.1-7b和LLaV A-1.1-13b作为基础模型。在训练过程中,LLaV A的权重被冻结,我们加入LoRA进行有效的微调。在LoRA中,dim和alpha两个参数的值分别为16和27。我们用32个新标记扩展了原始的LLM词汇表。QFormer由6层转换器[33]和77个可学习的查询令牌组成。在BIM模块中,有一个自关注模块、两个交叉关注模块和一个MLP层。
**Training Datasets. 训练数据集。**对于SmartEdit的训练过程,训练数据可以分为4类:(1)分割数据集,包括COCOStuff[3]、RefCOCO[34]、GRefCOCO[21]和来自LISA[19]的推理分割数据集;(2)编辑数据集,包括InstructPix2Pix和MagicBrush;(3)视觉问答(VQA)数据集,即LLaV A-Instruct150k数据集[22];(4)合成编辑数据集,共收集了476对数据,用于复杂的理解和推理场景。
**Evaluation Metrics. 评价指标。**由于我们希望在编辑时只改变图像的前景而不改变背景,所以我们对背景区域采用了三个指标:PSNR、SSIM和LPIPS[14,37]。对于前景区域,我们计算编辑后图像的前景区域与GT标签之间的CLIP Score[25]。GT标签手工标注。在这四个指标中,除了LPIPS越低越好,其他三个指标越高越好。虽然这些指标可以在一定程度上反映性能,但它们并不完全准确。为了更准确地评估编辑图像的效果,我们提出了一个评估编辑精度的指标。具体来说,我们雇佣了四名工作人员在Reason-Edit上手动评估这些不同方法的结果。评价标准是编辑后的图像是否与指令一致。在获得每个工作人员的评估结果之后,我们将所有结果平均以获得最终的度量结果,即Instruction-Alignment (in -align)。
Comparison with State-of-the-Art Methods. 与最先进方法的比较
我们将SmartEdit与现有的基于SOTA指令的图像编辑方法(即InstructPix2Pix, MagicBrush和InstructDiffusion)进行了比较。考虑到这些发布的模型是在特定的数据集上训练的,如果直接在ReasonEdit上进行评估,它们将不可避免地表现不佳。为了确保公平的比较,我们在SmartEdit使用的相同训练集上对这些方法进行微调,并在Reason-Edit上评估微调后的模型。实验结果如表1所示。从表中推理场景的量化结果可以看出,当我们将扩散模型中的剪辑文本编码器替换为LLaV A并采用本文提出的BIM模块时,SmartEdit-7B和SmartEdit-13B在这五个指标上都取得了更好的结果。这表明,在需要从指令推理的场景中,一个简单的剪辑文本编码器可能很难理解指令的含义。然而,MLLM可以充分利用其强大的推理能力和世界知识,正确识别相应的对象并进行编辑。
定性结果进一步说明了这一点。如图5所示,前三个示例是推理场景。在第一个例子中,SmartEdit-7B和SmartEdit-13B都成功地识别了用于切割水果的工具(刀)并删除了它,同时保持背景的其余部分不变。第二个例子也可以由两者处理得很好。然而,在第三个示例中,我们观察到性能上的差异。只有SmartEdit-13B可以在不改变其他背景区域的情况下准确定位目标并进行相应的编辑。这表明在需要推理的基于指令的图像编辑任务中,更强大的mlm模型可以有效地将其推理能力推广到该任务中。这一观察结果与LISA的发现一致。
然而,为了理解场景,我们观察到在PSNR/SSIM/LPIPS上与InstructDiffusion相比,SmartEdit-7B和SmartEdit-13B之间的性能差异。具体来说,SmartEdit-7B的性能比InstructDiffusion差,而SmartEdit-13B在这些指标上优于InstructDiffusion。进一步分析定性结果,如图5的第4行和第5行所示,我们发现从视觉上看,SmartEdit-7B和SmartEdit-13B都优于InstructDiffusion。这表明这三个指标并不总是与人类的视觉感知一致。我们在补充资料中确认了这一现象。从in -align度量的结果可以看出,与以前基于指令的图像编辑方法相比,SmartEdit显示出显着的改进。此外,当采用更强大的mlm模型时,smarted13b在in -align上的性能优于SmartEdit-7B。
图5。理性编辑的定性比较。与在我们的合成编辑数据集上进行了进一步微调的几种现有指令编辑方法相比,我们的方法在复杂场景中展示了卓越的编辑能力。
表1。在Reason-Edit上的定量比较(PSNR↑/SSIM↑/LPIPS↓/CLIP评分↑(vitl /14)/Ins-align↑)。我们比较的所有方法都使用与SmartEdit使用的相同的训练数据进行了微调。
图6。验证BIM模块的有效性。
图7。论证多数据集联合训练的重要性。
Ablation Study on BIM. BIM消融研究
为了验证我们提出的BIM模块中双向信息交互的有效性,我们在SmartEdit-7B模型上进行了对比实验。具体情况见表2。第一个实验,记为Exp 1,旨在验证BIM模块中提出的信息交互的必要性。在本次实验中,我们将BIM模块从SmartEdit-7B模型中移除,直接将QFormer输出的文本特征应用到扩散模型中。第二个实验称为Exp 2,旨在验证BIM模块中提出的双向信息交互的必要性。具体来说,除了图像特征分支上的交叉注意块外,所有块都被丢弃。因此,QFormer的文本特征信息被单向应用到图像特征中。这两个实验旨在测试在复杂的理解和推理场景下,移除或改变BIM模块对SmartEdit-7B性能的影响。如表2所示,如果拆除BIM模块,理解和推理场景的所有指标都显著下降。当BIM模块被SimpleCA模块取代时,我们观察到除了理解场景的剪辑分数外,所有指标都有明显的下降。进一步对比图6的定性结果,可以证实BIM的引入确实提升了SmartEdit的指令编辑性能。具体来说,当我们不使用BIM模块(即plain)时,狗碗(第一行)变成了其他物体(用红色圆圈标记),叉子(第二行)完全没有变化。使用SimpleCA后,可以发现狗碗和叉子已经被部分移除。当SmartEdit配备BIM时,狗碗和狗叉可以很好地移除。
Ablation Study on Dataset Usage. 数据集使用的消融研究
在第4.3节中,我们探讨了一种有效的数据利用策略,旨在增强SmartEdit处理复杂理解和推理场景的能力。在SmartEdit的训练过程中,我们使用了通用编辑数据集、分割数据集和合成编辑数据集。为了验证这些不同数据类型在提升SmartEdit性能方面的重要性,我们进行了一系列消融研究,详见表3。这些实验基于SmartEdit-7B模型。在Exp 1中,我们只使用编辑数据来训练模型。在Exp 2中,我们在Exp 1的基础上将分割数据合并到训练过程中。在Exp 3中,我们进一步将合成编辑数据添加到Exp 1中建立的基础上。这些实验的定量结果表明,分割数据和合成编辑数据在提高模型性能方面起着互补的作用。图7的目视对比进一步证实了这一点。在推理场景中,仅采用编辑数据集或编辑数据集与分割数据集结合使用时,SmartEdit的性能较差。当将合成的编辑数据整合到编辑数据集中时,SmartEdit可以准确定位特定对象。然而,SmartEdit的输出也很平庸(生成的狐狸有明显的伪影,生成了两个南瓜)。当所有这些数据集合并为训练集时,SmartEdit生成的结果在视觉效果上有了进一步的显著改善。
Conclution
总之,本文提出了 SmartEdit,一种基于指令的图像编辑方法,通过结合具有视觉输入的 LLM 来增强理解和推理能力。通过引入双向交互模块 (BIM),我们克服了在复杂推理场景中直接集成 LLM 和扩散模型所面临的挑战。我们的数据利用策略,包括感知数据和复杂指令编辑数据,有效地增强了 SmartEdit 处理复杂理解和推理场景的能力。在新建的 Reason-Edit 数据集上的评估表明,SmartEdit 优于先前的方法,标志着复杂指令式图像编辑实际应用迈出了重要一步。