像艺术家一样画画:通过构图、绘画和润色用扩散模型生成复杂场景
文章链接:https://arxiv.org/pdf/2408.13858
亮点直击
- 定义与标准:本文提供了一个明确的实验性复杂场景定义,并引入了复杂性分解标准(CDC),以有效管理复杂提示。
- CxD框架:受艺术创作过程的启发,本文提出了一种无需训练的复杂扩散(CxD)框架,将复杂场景图像的生成分为三个阶段:构图、绘画和润色。
- 验证与性能:大量实验表明,CxD能够生成高质量、一致且多样的复杂场景图像,即使在处理复杂提示时也表现出色。
总结速览
解决的问题
- 复杂场景的生成不足:尽管文本生成图像的扩散模型在图像质量上取得了显著进展,但复杂场景的生成仍然相对未被充分探索。
- “复杂场景”定义不明确:关于“复杂场景”的具体定义尚不清晰,导致难以有效处理这类生成任务。
提出的方案
- 复杂场景的精确定义:首先对复杂场景进行了精确定义,明确了其构成和特点。
- 复杂分解标准(CDC)的引入:基于对复杂场景的定义,提出了一套复杂分解标准(Complex Decomposition Criteria,CDC),用于管理和处理复杂提示。
- 复杂扩散(CxD)框架:提出了一种无训练需求的扩散框架——复杂扩散(Complex Diffusion,CxD),将生成过程分为三个阶段:构图、绘画和润色。
应用的技术
- 大语言模型(LLMs)的链式思维:利用LLMs的强大链式思维能力,根据CDC对复杂提示进行分解,管理构图和布局。
- 注意力调制方法:开发了一种注意力调制方法,将简单提示引导至特定区域,以完成复杂场景的绘画。
- 润色模型:将LLM的详细输出注入到润色模型中,增强图像细节,从而实现润色阶段。
达到的效果
- 生成高质量图像:大量实验表明,CxD在生成高质量、语义一致且视觉上多样的复杂场景图像方面表现优异。
- 显著提升:即使面对复杂提示,CxD也表现出显著的提升,优于先前的最先进方法(SOTA),在处理复杂场景的图像生成任务中显示出明显的优势。
方法:CxD
本节介绍了无训练需求的框架CxD,该框架模拟了艺术家的绘画过程,将复杂场景的生成分为三个阶段:构图、绘画和润色,如下图3所示。首先,基于复杂场景提示,在大语言模型(LLMs)中使用链式思维(Chain-of-Thought,CoT)方法进行构图。LLM提取实体和属性,对实体进行重新措辞,合并它们,并根据复杂分解标准(CDC)划分背景并分配布局。随后,CxD在每个采样步骤中计算并结合复杂和简单的交叉注意力图。最后,将LLM提取的属性注入ControlNet tile中,以进行详细润色。
使用LLMs进行构图与布局生成
实体提取
在接收到用户提供的复杂场景y提示后,利用LLM的高级语言理解和推理能力,从提示中提取实体E及其对应的属性A。这个过程可以描述如下:
提示的重新措辞
受RPG的启发,该方法利用LLM对提示进行重新措辞并使用链式思维(CoT)来规划区域划分。研究者们同样使用LLM基于提取的实体E及其对应的属性A,将原始复杂提示重新措辞为子提示。设计这些子提示时,尽可能与原始复杂提示中的相关描述保持一致。此过程可以表示为:
提示的合并或拆分
在重新措辞后,子提示相比原始的复杂提示已经简化了很多。然而,无法保证所有的子提示都足够简单,以便生成模型处理,因为其中一些可能仍然相对复杂。此外,有些子提示本身可能非常简单,即使将它们组合在一起,整体提示对生成模型来说可能依然相对简单。为确保图像生成的质量和效率,我们使用LLM根据复杂分解标准(CDC)对子提示进行合并或拆分。合并或拆分的结果被记录为简单提示。
布局分配
最后,按布局面积大小的降序排列LLM分配的布局,并相应地调整简单提示的顺序。这种方法与艺术家优先关注主要对象的实践一致,并有助于在图像生成过程中避免较小的对象被较大的对象遮挡。
交叉注意力调制
如前文分析,扩散模型在处理包含超过四个概念的复杂场景时往往效果较差。为了解决这一挑战,对交叉注意力进行调制,以适应LLM生成的构图,从而有效处理复杂场景提示,如下图4所示。
提示批处理
在调制结果后,根据边界框的面积,将所有简单提示的去噪潜变量结果进行拼接,以实现对位置关系的控制。未被边界框覆盖的区域则填充背景去噪潜变量的结果。将这个过程定义为:
其中, w是用于平衡复杂提示和简单提示贡献的权重。
为了应对复杂场景的挑战,我们将复杂提示分解为更简单的提示,以管理概念过载。LLM提供的边界框帮助为每个简单提示创建精确的潜变量表示,确保准确的位置控制。独立生成每个潜变量可以最小化实体之间的冲突。总之,CxD有效地解决了与复杂场景相关的问题。
使用ControlNet-tile模型进行润色
本文的方法有效地生成了符合复杂提示描述的图像。然而,当实体和属性的数量超出预训练扩散模型的能力时,可能会丢失或模糊一些与复杂提示无关的局部细节。为了解决这一问题,使用润色模型来精细化结果,类似于艺术家在画作上进行的最后润色。将LLM提取的实体和属性作为细节提供给ControlNet 扩展——ControlNet-tile模型,该模型通过修正缺陷和添加新细节来增强图像。应用ControlNet-tile后,图像保持原有的语义,但在细节和纹理上获得了更高的清晰度。因此,我们通过构图、绘画和润色三个阶段完成了复杂场景图像的创建,这与艺术家的创作过程类似。
实验
实验设置
对于CxD框架,使用了开源的LLaMA-2 13B版本作为大语言模型(LLM),并使用了Stable Diffusion XL版本作为预训练扩散模型。然而,CxD被设计为一个通用且可扩展的框架,能够集成各种LLM架构。所有实验均在NVIDIA RTX 3090 GPU上进行。使用CxD生成复杂场景图像大约需要2分钟,包括处理复杂提示所需的时间。我们精心设计了任务感知模板和高质量的上下文示例,以有效利用LLM的链式思维(CoT)能力。
质量评估
评估了CxD在各种复杂性指标下的表现,包括概念数量、空间位置和冲突关系。下图1展示了SD XL模型和CxD的结果对比。顶部一行显示,SD XL在处理包含五个实体和属性的提示时,面临着高复杂性的挑战,包括空间定位的失真和不准确,同时也往往忽视实体之间的冲突。相比之下,CxD能够有效管理高复杂度、精确的空间安排和冲突实体,生成了一致和谐、视觉上令人愉悦的图像。
将CxD与之前的最先进文本到图像模型进行比较,包括SDXL、LDM+ 、DALLE-3 和RPG。LDM+ 和 RPG 利用LLM进行构图辅助。如下图5所示,SDXL 和 LDM+ 在处理复杂提示时表现不佳,生成的图像未能完全满足提示要求。虽然 DALLE-3 和 RPG 能够有效捕捉整体内容,但在复杂提示的局部细节上有时会有所遗漏(例如图5中的红色部分)。相比之下,CxD将复杂提示分解为简单提示,确保没有遗漏任何实体或属性。因此,CxD 在管理整体语义和局部细节方面表现出色,显示出其在处理复杂场景方面的有效性。
定量实验
使用 T2I-Compbench 基准对 CxD 模型与之前的最先进文本到图像模型进行了比较。如下表1所示,CxD 模型在通用文本到图像生成和复杂生成任务中均优于所有其他模型,其中 RPG 排名第二。这突显了该方法在处理复杂场景生成任务中的优越性。本文的模型在大多数任务中设立了新的最先进基准,特别是在对象关系和复杂场景方面表现突出,显著优于第二名的方法。这一卓越表现归功于我们提出的复杂分解标准(CDC)与这些任务的强对齐,展示了该方法在解决复杂场景生成问题中的优越性。
消融研究
对CxD框架的各个组件进行了评估:(a) 复杂提示潜变量,(b) 背景提示潜变量,(c) 注意力增强调制,和(d) 图像润色,如下图6所示。第一列展示了没有复杂提示潜变量的图像,结果为不连贯和不一致的输出。第二列缺少背景提示潜变量,显示的背景不符合提示要求。第三列未进行注意力增强调制,结果是实体被遮挡。第四列缺少修改,生成的图像由于实体过多而细节模糊。最后一列展示了CxD框架的输出,保持了语义并增强了细节,突显了CxD每个组件在生成复杂场景中的重要性。
结论
CxD,一种无训练需求的扩散框架,旨在解决复杂场景生成的挑战。本文精确定义了“复杂场景”,并提供了一套复杂分解标准(CDC),以帮助人类和大语言模型(LLMs)有效处理复杂场景提示。CxD框架将生成过程分为三个阶段——构图、绘画和润色——模拟传统艺术家的绘画方法。实验结果表明,CxD 在生成复杂场景方面表现良好。未来的工作将集中在集成额外的模态数据作为输入条件,以进一步增强可控性。
本文转自 AI生成未来 ,作者:Minghao Liu等