DEADiff: An Efficient Stylization Diffusion Model with Disentangled Representations
代码:https://tianhao-qi.github.io/DEADiff/
论文:https://arxiv.org/pdf/2403.06951
本文介绍了一种名为DEADiff的方法,旨在解决基于扩散的文本到图像模型在风格迁移时遇到的问题。解决当前的基于编码器的方法显著影响了文本到图像模型在风格迁移时的文本可控性问题。为了解决这个问题,DEADiff采用了以下两种策略:
- 解耦风格和语义的机制。通过Q-Formers首先提取解耦的特征表示,这些特征表示受不同的文本描述指导。然后将它们注入到互斥的交叉注意力层的子集中,以更好地解耦风格和语义。
- 非重构性学习方法。Q-Formers使用成对图像进行训练,而不是相同的目标图像。在这种情况下,参考图像和真值图像具有相同的风格或语义。
MOTIVATION
附加编码器为中心(center around an additional encoder)
风格转移的流行方法是以附加编码器为中心的方法。基于编码器的方法通常训练编码器将参考图像编码为信息特征,然后将其注入扩散模型作为其引导条件。通过这样的编码器,可以提取高度抽象的特征,以有效地描述参考图像的风格。T2I-Adapter)可以自然地生成忠实的参考样式。 然而,这种方法也引入了一个特别令人烦恼的问题:虽然它允许模型遵循参考图像的风格,但它显着降低了模型在理解文本条件的语义上下文方面的性能。
文本可控性的丧失(The loss of text controllability)
- 编码器提取的信息将风格与语耦合在一起,而不仅仅是纯粹的风格特征。具体来说,先前的方法在其编码器中缺乏有效的机制来区分图像风格和图像语义。因此,提取的图像特征不可避免地包含了风格和语义信息。这种图像语义与文本条件中的语义冲突,导致对基于文本的条件的控制力降低。
- 先前的方法将编码器的学习过程视为一种重构任务(reconstruction),其中参考图像的gournd-truth是图像本身与训练文本到图像模型遵循文本描述相比,从参考图像的重构中学习通常更容易。因此,在重构任务下,模型倾向于关注参考图像,而忽视文本到图像模型中的原始文本条件。
CONTRIBUTION
- 提出了一种双解耦表示提取机制,分别获取参考图像的风格和语义表示,从学习任务的角度缓解文本和参考图像之间的语义冲突问题。
- 引入了一种解耦的调节机制,允许交叉注意力层的不同部分分别负责图像风格/语义表示的注入,从模型结构的角度进一步减少语义冲突。
- 构建了两个配对数据集,以使用非重建训练范例来辅助 DDRE 机制。
RELATED WORK
T2I
基于文本反演的方法(Textual inversion-based meth-ods)将风格图像投影到可学习的文本token空间的embedding中。不幸的是,由于从视觉到文本模态的映射导致的信息丢失问题,使得学习的embedding无法准确地渲染参考图像的风格与用户定义的提示。
DreamBooth和Custom Diffusion通过优化扩散模型的全部或部分参数,可以合成更能捕捉参考图像风格的图像。然而,这种方法的代价是由于严重过拟合导致的对文本提示的准确度降低。
目前,参数有效的微调提供了一种更有效的方法来进行风格化图像生成,而不影响扩散模型对文本提示的忠实度,如InST,LoRA和StyleDrop。然而,尽管这些基于优化的方法可以定制风格,但它们都需要数分钟到数小时来微调每个输入参考图像的模型。额外的计算和存储开销阻碍可行性。
因此,一些无优化方法被提出来通过设计的图像编码器从参考图像中提取风格特征。
- T2I-Adapter-Style和IP-Adapter使用Transformer作为图像编码器,以CLIP图像embedding作为输入,并利用通过UNet交叉注意力层提取的图像特征。
- BLIP-Diffusion构建了一个Q-Former,将图像embedding转换为文本embedding空间,并将其输入到扩散模型的文本编码器中。
这些方法使用整个图像重建或对象重建作为训练目标,导致从参考图像中提取了内容和风格信息。为了使图像编码器专注于提取风格特征,StyleAdapter和ControlNet-shuffle对参考图像的块或像素进行了重排,并且可以生成具有目标风格的各种内容。
Q-Former
Q-Former是一个基于Transformer的组件,它被用来提取和过滤图像特征。
METHODS
双重解耦下的提取-Dual Decoupling Representation Extraction
DDRE(Dual Decoupling Representation Extraction)受到BLIP-Diffusion的启发,DDRE不是直接训练一个模型来重建或模仿输入图像,而是通过设计2个辅助task来帮助模型学习更深层次的特征表示、DDRE通过分别针对风格和内容的训练,使得模型能够独立地处理这两类特征。
- 使用Q-Formers作为表示过滤器:Q-Formers在这个中充当风格和内容特征提取的过滤器。利用 QFormer从参考图像中获取风格和语义表示。 Q-Former 根据“风格”和“内容”条件来选择性地提取与给定指令相符的特征。
- 配对合成图像中学习的非重建训练范例:使用分别与参考图像和地面实况图像具有相同风格的成对图像来训练由“Style”条件指示的Q-Former。 同时,“Content”条件指示的QFormer是由具有相同语义但不同风格的图像训练的。
- 非重构范式:与直接重建图像的方法不同,DDRE采用非重构的训练范式。这意味着模型的目标不是生成与参考图像完全相同的图像,而是学习如何提取和利用对生成过程有用的特征表示。
风格图像提取STRE:
- 选择一对风格相同但内容不同的图像(对应图中reference A和target A),两者都保持相同的风格,它们分别作为Stable Diffusion(SD)生成过程的参考图像(reference )和目标图像(target )。(使用两个具有相同提示的不同图像)
- 参考图像输入到CLIP图像编码器,其输出(该编码器会输出一个向量表示或特征向量)与Q-Former的learnable query tokens以及其输入文本(inputs)通过交叉注意力机制相互作用。
- Q-Former的输入文本(inputs)被设定为“style”,目的是生成与文本对齐的图像特征作为输出。(条件化输入),对应的输出封装了风格信息,然后与目标图像内容的详细描述相结合,并提供给去噪U-Net进行条件控制.
这种prompt构成策略的动力在于更好地解开风格和内容描述之间的纠缠,使Q-Former更加专注于提取以风格为中心的表示
内容表示提取SERE
- 选择一对主题相同但风格不同的图像((对应图中reference B和target B)),分别作为参考图像和目标图像。
- 与STRE不同,Q-Former的输入文本被替换为“content”,以提取与内容相关的特定表示。
- 为了获取纯净的内容表示,Q-Former的query token输出和目标图像的文本风格词同时作为去噪U-Net的条件。在这种方法中,Q-Former在生成目标图像时将筛选出CLIP图像嵌入中与内容无关的信息。
同时,将重构任务整合到整个流程中。这个学习任务的条件提示由“风格”Q-Former和“内容”Q-Former处理的 query token组成。通过这种方式,可以确保Q-Formers不会忽视关键的图像信息,考虑到内容和风格之间的互补关系。
解耦条件机制-Disentangled Conditioning Mechanism
DCM
受先前工作的启发(去噪 U-Net 中的不同交叉注意层主导合成图像的不同属性,不同的交叉注意力层对风格和语义的不同响应),引入了一种创新的Disentangled Conditioning Mechanism(DCM)。
- DCM采用的策略是,空间分辨率较低的粗层以语义为条件,而空间分辨率较高的精细层以风格为条件。
- 我们仅将带有“Style”条件的 Q-Former 的输出 query 注入到细层(fine layers),这些层响应局部区域特征而不是全局语义。这种结构性的调整促使Q-Former在输入“风格”条件时提取更多的风格导向特征,例如图像的笔触、纹理和颜色,同时减弱了其对全局语义的关注。
a joint text-image cross-attention layer
为了使去噪U-Net支持图像特征作为条件,设计了一个联合文本-图像交叉注意力层,类似于IP-Adapter:
IP-adapter可以跳转到这篇博客:IP-adapter
- 包含了两个可训练的线性投影层 W I k , W I V W_I^k,W_I^V WIk,WIV来处理图像特征 c i c_i ci
- 还包含了冻结的线性投影层 W T k , W T V W_T^k,W_T^V WTk,WTV,用于处理文本特征 c t c_t ct
- 不是独立地对图像和文本特征执行交叉注意力,而是分别从文本和图像特征中连接键和值矩阵,随后使用U-Net query 特征Z进行单个交叉注意力操作
Q = Z W Q , K = C o n c a t ( c t W T K , c i W I K ) , V = C o n c a t ( c t W T V , c i W I V ) , Z n e w = S o f t m a x ( Q K T d ) V . \begin{aligned} \text{Q}& =ZW^{Q}, \\ \text{K}& =Concat(c_{t}W_{T}^{K},c_{i}W_{I}^{K}), \\ \text{V}& =Concat(c_{t}W_{T}^{V},c_{i}W_{I}^{V}), \\ Z^{new}& =Softmax(\frac{QK^{T}}{\sqrt{d}})V. \end{aligned} QKVZnew=ZWQ,=Concat(ctWTK,ciWIK),=Concat(ctWTV,ciWIV),=Softmax(dQKT)V.
配对数据集构建
通过组合主题词和风格词手动创建文本提示列表,并利用预先训练的模型构建两个配对图像数据集
- 具有相同风格的sample
- 具有相同主题的sample。
具体而言,构建配对数据集包括以下三个步骤:
- 步骤1:文本提示组合。 列出了近12,000个主题词,涵盖了四个主要类别:人物、动物、物体和场景。此外,还记录了近700个风格词,包括艺术风格、艺术家、笔触、阴影、镜头、分辨率和视角等属性。然后,平均每个主题词分配了大约14个来自所有风格词的风格词,这些组合形成了用于文本到图像模型的最终文本提示。
- 步骤2:图像生成和收集。 将文本提示与主题词和风格词结合后,得到了超过160,000个文本提示。随后,将所有文本提示发送到Midjourney,这是一个领先的文本到图像生成产品,用于合成相应的图像。作为Midjourney的特点,给定提示的直接输出包括4张分辨率为512×512的图像。将每个图像上采样到分辨率为1024×1024,并与给定的提示一起存储。由于数据收集中的冗余性,最终收集了共计106万个图像-文本对。
- 步骤3:**配对图像选择。**至于描述的内容表示学习任务,将具有相同主题词但不同风格词的图像配对为一个单独的项目。 我们观察到,即使具有相同的风格词(style words),使用不同的subject词生成的图像也存在显著差异。
- 考虑到这一点,在风格表示学习任务中,使用两个具有相同提示的不同图像。
- 将具有相同提示的图像存储为单个项目,并在每次迭代中随机选择两个图像。
Training and Inference
采用SD对应的损失函数来监督上述三个学习任务。在训练过程中,只有Q-Former和新添加的线性投影层被优化
L = E z , c , ϵ ∼ N ( 0 , 1 ) , t [ ∥ ϵ − ϵ θ ( z t , t , c ) ∥ 2 2 ] L=\mathbb{E}_{z,c,\epsilon\sim\mathcal{N}(0,1),t}\left[\left\|\epsilon-\epsilon_{\theta}\left(z_{t},t,c\right)\right\|_{2}^{2}\right] L=Ez,c,ϵ∼N(0,1),t[∥ϵ−ϵθ(zt,t,c)∥22]
EXPERIMENT
实验设置
采用Stable Diffusion v1.5 作为我们的基础文本到图像模型,该模型包括总共 16 个交叉注意力层。按照从输入到输出的顺序对它们进行编号,定义层 4-8 为粗层,用于注入图像内容表示。因此,其他层被定义为用于注入图像风格表示的细层。使用来自 CLIP 的 ViT-L/14 作为图像编码器,并保持 Q-Former 的可学习 query token数量与 BLIP-Diffusion 一致,即为 16。采用两个 Q-Formers 分别提取语义和风格表示,以鼓励它们专注于自己的任务。
为了快速收敛,使用 HuggingFace 中由 BLIP-Diffusion 提供的预训练模型初始化 Q-Former。至于额外的投影层 W I k , W I V W_I^k,W_I^V WIk,WIV,我们将它们的参数初始化为 W T k , W T V W_T^k,W_T^V WTk,WTV的参数。在训练期间,我们根据前面中所述的三个学习任务的采样比率设置为1:1:1,以同等地训练风格 Q-Former 和内容 Q-Former。我们固定图像编码器、文本编码器和原始 U-Net的参数,仅更新 Q-Former、16 个可学习 query 和额外的投影层 W I k , W I V W_I^k,W_I^V WIk,WIV的参数。模型在 16 个 A100-80G GPU 上以总batch大小为 512 进行训练。采用 AdamW 作为优化器,学习率为 1 e − 4 1e^{-4} 1e−4训练 100000 次迭代。至于推理阶段,采用 DDIM采样器进行 50 步采样。无分类器指导的指导尺度为 8。
评估指标
在缺乏准确和合适的评估风格相似度(SS)的度量标准的情况下,我们提出了一个更合理的方法。此外,在 CLIP 文本-图像embedding空间内确定文本提示与其对应的合成图像之间的余弦相似度,这表明了文本对齐能力(TA)。还报告了每种方法的图像质量(IQ)的结果。最后,为了消除客观度指标计算中随机性带来的干扰,进行了用户研究,反映了结果的主观偏好(SP)。
Style Similarity: 具体来说,该过程首先使用 CLIP Interrogator 生成与参考图像对齐的最佳文本提示。 随后,我们过滤掉与参考图像内容相关的提示,并计算剩余提示与 CLIP 文本图像嵌入空间内生成的图像之间的余弦相似度。 计算结果表示风格相似度,有效减轻参考图像内容的干扰。
Image Quality:采用名为 LAION-Aesthetics Predictor V2 的预测模型来评估每种方法生成的图像的质量。
Text Alignment: 确定 CLIP 文本图像嵌入空间内文本提示与其相应的合成图像之间的余弦相似度,表明文本对齐能力。
实验效果
定性分析:
与最先进的方法进行比较,包括无优化方法,如CAST、StyleTr2、T2I-Adapter、IP-Adapter和StyleAdapter,以及基于优化的方法,如InST。
首先,基于内容图像的风格迁移方法,如CAST和StyleTr2,它们不使用扩散模型,从而避免了文本控制减少的问题。然而,它们仅执行直接的颜色迁移,没有从参考图像中提取更独特的特征,如笔触和纹理,导致每个合成结果中都存在明显的伪影。因此,当这些方法遇到具有复杂风格参考和大量内容图像结构复杂性的情况时,它们的风格转移能力明显降低。
另外,对于使用扩散模型进行重建目标训练的方法,无论是基于优化的(InST)还是无优化的(T2I-Adapter),它们通常都会在生成的结果中受到来自参考图像的语义干扰,如图4的第一行和第四行所示。这与我们之前的语义冲突问题的分析相一致。
第三,虽然随后改进的工作StyleAdapter有效地解决了语义冲突的问题,但它学习到的风格并不理想。它失去了参考图像的细节笔触和纹理,颜色也有明显的差异。
最后,IP-Adapter通过对每个参考图像进行精细的权重调整,可以实现不错的结果,但其合成输出要么引入了一些来自参考图像的语义,要么风格退化。相反,我们的方法不仅更好地遵循了文本提示,而且显著保留了参考图像的整体风格和详细纹理,颜色色调之间的差异非常小。
定量分析:
在文本对齐方面与生成内容图像的两种基于SD的方法CAST和StyleTr2相当,这表明在学习参考图像的风格时并没有牺牲SD的原始文本控制能力。
与StyleDrop的比较:
尽管DEADiff在颜色准确性方面略逊于基于优化的StyleDrop,但在艺术风格和对文本的忠实度方面,它取得了相当甚至更好的结果。DEADiff生成的小屋、帽子和机器人更加合适,并且不会遭受参考图像中固有的语义干扰。这证明了从参考图像中解耦语义的关键作用
应用
应用:与ControlNet的结合
DEADiff支持所有原生于SD v1.5的ControlNet类型。以深度ControlNet为例
应用:风格混合
应用:参考语义的风格化
应用:切换基础T2I模型
由于DEADiff不对基础T2I模型进行优化,因此可以直接在不同基础模型之间切换,生成不同的风格化结果,如下图10所示