AnyControl:使用文本到图像生成的多功能控件创建您的艺术作品
图1 AnyControl的多控制图像合成。该研究的模型支持多个控制信号的自由组合,并生成与每个输入对齐的和谐结果。输入到模型中的输入控制信号以组合图像显示,以实现更好的可视化。
摘要:近年来,文本到图像(T2I)生成领域取得了重大进展,主要是由扩散模型的进步驱动的。语言控制使有效的内容创建成为可能,但对图像生成的细粒度控制却很困难。在很大程度上,通过结合额外的用户提供的空间条件(如深度图和边缘图),然而,多控制图像合成仍然面临着一些挑战。具体而言,现有方法在处理不同输入控制信号的自由组合方面受到限制,忽略了多个空间条件之间的复杂关系,并且通常无法保持与提供的文本提示语义对齐。这可能导致次优的用户体验。为了解决这些挑战,该研究提出了AnyControl,一个多控制图像合成框架,支持各种控制信号的任意组合。AnyControl开发了一种新颖的多控制编码器,提取统一的多模态嵌入来指导生成过程。这种方法能够全面理解用户输入,并生成高质量,通过大量的定量和定性评估,在多功能控制信号下获得可靠的结果。该研究的项目页面可在https://any-control.github.io上找到。
关键词:可控图像合成·多控制·文本到图像
主要挑战:多控制图像合成的任务在以下方面仍然具有挑战性:(1)适应输入条件的自由组合,(2)建模多个空间条件之间的复杂关系,以及(3)保持与文本提示的兼容性。该研究将这三个挑战分别称为输入灵活性、空间兼容性和文本兼容性。
输入灵活性。第一个挑战来自基于用户需求的可用控制信号的任何组合。用户提供的控制信号的数量和模态是变化的,对模型的输入灵活性提出了很高的要求。然而,现有方法通常采用固定长度的输入通道,限制了它们适应不同输入的能力。其他方法采用MoE设计来解决变数条件,这可能导致在处理不可见的输入组合时出现不可预见的伪影。
空间兼容性。第二,控制信号不是孤立的;考虑这些控制信号之间的关系是至关重要的,特别是在管理多个空间条件之间的遮挡时。不幸的是,当前的算法通常通过加权求和和手工权重来组合多个条件,容易导致不期望的混合结果,或者甚至导致低响应控制信号在处理阻塞时消失。
文本兼容性。最终,文本兼容性成为影响用户体验的一个重要因素。通常,文本管理生成图像的内容,而空间条件补偿结构信息。然而,文本和空间条件之间缺乏通信通常导致当前算法优先考虑适应空间条件,从而忽视文本提示的影响。
研究概述:综上所述,生成既满足文本提示又满足多种空间条件的全面和谐的结果是多控制图像合成的一个重大挑战,为了解决输入灵活性、空间兼容性和文本兼容性的挑战,该研究提出了AnyControl,一个支持多种控制信号任意组合的可控图像合成框架。
AnyControl的核心是Multi-Control Encoder,它在确保连贯、空间和语义对齐的多模态嵌入方面发挥着至关重要的作用。这个新颖的组件允许AnyControl从各种控制信号中提取统一的表示,从而实现真正通用和高性能的多控制图像合成框架。
具体来说,多控制编码器由多控制融合(multi-control fusion)模块和多控制对齐(multi-control alignment)模块轮流驱动,并通过一组query tokens将两者无缝地统一起来。
多控制融合模块通过query tokens聚合来自多个空间条件的兼容信息,并对query tokens和从预训练的视觉编码器中提取的空间条件视觉tokens进行交叉注意力Transformer计算,从而将丰富的空间可控信息传递给query tokens,并将其用于多控制对齐模块.
多控制对齐通过将所有其他控制信号对齐到文本信号来保证所有形式的控制信号之间的兼容性,在query tokens和文本tokens上使用自注意Transformer块。query tokens包含空间可控信息,文本tokens包含语义信息,通过query tokens和文本tokens之间的信息交换,两种tokens都能表示兼容的多模态信息。
通过交替的多控制融合和对齐块,query tokens实现了对来自多个用户输入的高度对齐和兼容信息的全面理解。这种能力使该研究的方法能够处理条件之间的复杂关系,并保持与文本提示的强兼容性。因此,这种方法促进了对生成的图像的更平滑和和谐的控制。此外,具有注意机制的Transformer块固有地擅长于适应各种控制信号,并且因此使得能够自由组合用户输入。
主要贡献:
-
AnyControl提出了一种新的多控制编码器,包括一系列替代多控制融合和对齐块,以实现对复杂的多模态用户输入的全面理解。
-
AnyControl支持用户输入的灵活组合,无论不同控制信号的数量和形式如何。
-
AnyControl产生更和谐、更自然的高质量结果,展示了多控制图像合成的最新性能。
图2 AnyControl和多控件编码器。左显示了该研究的AnyControl的整体框架,它开发了一个多控件编码器,用于基于文本提示和多个空间条件提取全面的多控件嵌入。然后利用多控件嵌入来指导生成过程。右图显示了该研究的多控制编码器的详细设计,该编码器由交替的多控制融合和对齐块驱动,其中定义了query tokens,以从空间条件的文本tokens和视觉tokens中提取兼容信息。
AnyControl
Multi-Control Encoder 与ControlNet类似,在该研究的AnyControl中,该研究也锁定了预先训练好的稳定扩散模型,并设计了一个Multi-Control Encoder来理解复杂的控制信号。该研究首先获得三种类型的tokens,即文本tokens-T,视觉tokens-V和query tokens-Q。文本tokens是在文本提示时从CLIP文本编码器中提取的,而视觉tokens是从预先训练的视觉编码器获得的(例如,CLIP图像编码器)。query tokens被定义为一组可学习的参数。为了解决引言中讨论的三个挑战,即,输入灵活性,为了兼顾空间兼容性和文本兼容性,该研究设计了一种多控制编码器,它通过交替使用多控制融合块和多控制对齐块来实现。
多控制融合 多控制融合块旨在从各种空间条件中提取兼容的信息。这是通过利用交叉注意Transformer块来实现的,以促进所有空间条件的query tokens和视觉tokens之间的交互。
多控制对齐 虽然各种可控信息被集成到query tokens中,但是由于缺乏指示空间条件之间的关系的全局条件,因此推断重叠区域内的空间控制信号的优先级是具有挑战性的。幸运的是,文本提示可以用作调节生成的图像的内容的全局控制。因此,在多控制对齐块中,该研究使用自我注意力转换器(self-attention Transformer)块来促进query tokens和文本tokens之间的交互。在将文本提示编码为tokens之前,该研究在用户提供的文本的尾部添加文本任务提示,以解决不同空间条件之间的模态差异。然后该研究将query tokens-Q和文本tokens-T连接在一起,并执行自我注意力转换:
交替融合和对齐 为了确保所有控制信号的信息对齐和兼容,该研究交替使用多控制融合和对齐块进行多轮。值得注意的是,该研究使用多级视觉tokens进行细粒度的空间控制。具体来说,在每一轮中,交叉注意Transformer块中消耗的视觉tokens从预训练的视觉编码器的不同级别中提取,考虑到空间条件在控制层次上的多样性,即布局控制(如分割图)和结构控制(如边缘图),因此,多级视觉标记对于不同深度的多控制融合块是必要的。
AnyControl的优势 query tokens充当桥梁,无缝地将两种类型的块联合起来。经过几个回合后,query tokens保留对齐良好的组合信息,作为用户输入的统一多模态表示。该设计使AnyControl能够在遮挡的情况下进行多控制图像合成,生成具有高空间和文本兼容性的高质量和谐结果。该研究的多控制编码器共享一个类似的想法Q-Former,然而,AnyControl包含许多用于多控件图像合成的专用设计,如附加的文本任务提示,跨所有条件的额外共享位置嵌入和多层次视觉tokens的使用。在实现中,为了节省计算成本,该研究在每两个自注意块之后插入交叉注意块。该研究的AnyControl的另一个天然优势在于输入的灵活性。AnyControl利用具有注意力机制的Transformer块,在容纳用户输入的自由组合方面具有天然的优势。以往的方法要么采用定长输入通道设计,要么采用MoE结构设计,如图3所示。前者限制了用户输入的自由度,而后者,即MoE设计,支持将灵活的输入与手工制作的加权求和相结合,从而导致费力地调整组合权重。
图3 三种多控制方式。不同颜色的方块表示不同的条件类型,虚线方块表示零张量。(a)采用输入卷积层的固定长度通道,然后是几个卷积块作为Multi-Control Encoder。(b)采用MoE设计,即对每种控制信号分别构造编码器,然后通过加权求和得到嵌入。©与它们不同的是,AnyControl采用注意机制来适应条件的数量和形式的变化。“SAB”和“CAB”分别表示自我和交叉注意块。
数据集
该研究采用训练数据集MultiGen进行中提出的多控制图像合成。该数据集基于美学评分在6分以上的LAION[37]。去除低分辨率图像,最终保留280万张图像。采用不同的方法提取控制信号。不幸的是,训练时的空间条件与推理时的空间条件的组合存在领域差距,即在训练时,从同一幅图像中提取的所有空间条件都是完全对齐的,而从用户那里接受的多个空间条件则不是这样。用户提供的条件通常有多个图像源,因此提取的空间条件并不总是对齐的,有时在重叠区域有遮挡,这就要求模型根据目标场景的深度正确排列处理空间条件。为了消除这种差异,该研究收集了未对齐数据的子集,如图4所示。具体来说,该研究利用Open images数据集和MSCOCO数据集中对象丰富的图像来制作合成数据。给定图像和前景对象的蒙版,该研究使用补图工具用蒙版区域恢复背景图像。该研究丢弃对象太小或太大的图像,最终产生0.44M图像作为补充的未对齐训练数据。
在合成未对齐数据集的制作过程中,该研究利用面积比为[0.1,0.4]的groudtruth对象掩模来勾勒前景对象,而过小或过大的对象将导致不希望恢复的背景图像。PowerPaint是一个多任务绘制模型,支持文本引导的对象绘制、上下文感知的图像绘制以及对象删除。在这里,该研究采用“对象移除”模式来进行非对齐数据的构建。图11显示了合成未对齐数据的更多可视化效果。
实验细节
训练策略 在利用未对齐数据进行训练时,该研究将前景目标和所绘制的背景图像的空间条件组合在一起,同时将原始图像作为目标。在训练过程中,对于空间条件完全对齐的数据,该研究为每个训练样本随机选取两个条件;对于合成的未对齐数据,该研究分别为前景对象和背景嵌入图像随机选择一个条件。该研究以0.05的速率随机丢弃所有条件,使分类器能够自由引导,并且以0.05的速率随机丢弃文本提示,让模型只从纯空间条件中学习
网络 AnyControl的详细结构如图10所示。该研究基于1.5版本的Stable Diffusion来构建AnyControl。与ControlNet类似,该研究在完全冻结稳态扩散模型的预训练权值的同时,对UNet编码块进行可训练拷贝,以适应控制信息。在该研究的多控制编码器中,query tokens的数量设置为256,从而可以提取详细的可控信息。与query tokens长度相同的附加位置嵌入由所有输入空间条件共享。该研究将QFormer的预训练权值作为Multi-Control Encoder的初始化,除了query tokens和附加的位置嵌入是随机初始化的。
超参数 该研究在8个A100 GPU卡上训练AnyControl,每个GPU上的批处理大小为8。该研究训练模型总共90K次迭代,初始学习率为1e-5。在推理过程中,该研究将classifier-free guidance scale设置为7.5。在所有的实验中,该研究都采用了50个时间步长的DDIM采样器。
结果展示
研究不足
虽然在AnyControl中不限制空间条件的输入数量,但容易导致过多空间条件下的混色缺失问题。观察图9所示,当空间条件的数量过大时,例如在本例中为8。可能的原因是:1)CLIP文本编码器在理解概念众多的复杂文本提示时能力有限;2)交叉注意变压器块中过多的视觉标记导致softmax的精度降低,从而削弱了精确多控制理解中的AnyControl。
其他内容
手工重量调整器 如图12所示,手工制作权值的多控制方法,即Multi-ControlNet,通常需要根据合成结果进行一系列费力的权值调整,而该研究的方法可以自动推断组合权值并提取统一的多控制嵌入,从而产生和谐的结果。
多层次视觉Tokens 尽管来自预训练的视觉编码器的最后一个transformer块的视觉tokens已经聚合了丰富的信息,但它们还不够。
该研究逐渐使视觉tokens从最深的层次到最浅的层次细粒度可控信息。该研究对从视觉编码器到多控制编码器所使用的视觉tokens的水平进行了消融实验。表4表明,从中间层集成更多的可视化tokens会增加FID,并在第4层遇到性能饱和。
深的层次到最浅的层次细粒度可控信息。该研究对从视觉编码器到多控制编码器所使用的视觉tokens的水平进行了消融实验。表4表明,从中间层集成更多的可视化tokens会增加FID,并在第4层遇到性能饱和。