在这项工作中,作者解决了现有条件扩散模型的两个局限性:由于迭代去噪过程导致的推理速度慢以及模型微调对配对数据依赖的问题。
为了解决这些问题,作者引入了一种通过对抗性学习目标将单步扩散模型适应到新任务和领域的一般方法。具体来说,作者将原始潜扩散模型中的各种模块整合为一个具有小可训练权重的端到端生成网络,增强了其在保留输入图像结构的同时减少过拟合的能力。
作者证明,在无配对设置中,作者的模型CycleGAN-Turbo在多种场景翻译任务上,例如日夜转换以及添加/移除雾、雪和雨等天气效果,优于现有的基于GAN和基于扩散的方法。作者将作者的方法扩展到配对设置中,在这种设置中,作者的模型pix2pix-Turbo与Sketch2Photo和Edge2Image的最新作品相比肩,但具有单步推理的能力。
关注公众号,私信 『代码』获取代码。
1 Introduction
条件扩散模型[38, 48, 5, 73]使用户能够根据空间条件和文本提示生成图像,实现了对场景布局、用户草图和人体姿态需要精确控制的多种图像合成应用。尽管它们取得了巨大成功,但这些模型面临着两个主要挑战。首先,扩散模型的迭代性质使得推理过程缓慢,限制了如交互式Sketch2Photo等实时应用的可能性。其次,模型训练通常需要整理大规模的成对数据集,对于许多应用来说,这造成了重大的成本负担,而对于其他一些应用来说则是不可行的[77]。
在这项工作中,作者引入了一种一步到位的图像到图像转换方法,该方法适用于成对和非成对的情况。作者的方法在视觉效果上令人满意,可与现有的条件扩散模型相媲美,同时将推理步骤减少到1步。更重要的是,作者的方法可以在不使用图像对的情况下进行训练。作者的核心思想是通过对抗性学习目标,高效地适应一个新的领域和任务,例如通过预训练的文本条件一步扩散模型,如SD-Turbo [54]。
不幸的是,在作者的实验中,直接将标准的扩散 Adapter 如ControlNet[73]应用于一步设置证明效果不佳。与传统的扩散模型不同,作者观察到噪声图在一步模型中直接影响输出结构。因此,将噪声图和输入条件同时通过额外的 Adapter 分支输入,会导致网络接收到的信息相互冲突。特别是对于非配对案例,这种策略导致原始网络在训练结束时被忽视。此外,由于SD-Turbo模型的多次阶段 Pipeline (编码器-UNet-解码器)不完全重建,输入图像中的许多视觉细节在图像到图像的翻译过程中丢失。这种细节的丢失在输入为真实图像时尤为明显和关键,例如在日到夜的翻译中。
为了应对这些挑战,作者提出了一种新的生成器架构,该架构利用了SD-Turbo权重同时保留了输入图像的结构。首先,作者将条件信息直接输入到UNet的噪声编码器分支中。这使得网络能够直接适应新的控制,避免了噪声图与输入控制之间的冲突。其次,作者将三个独立的模块,编码器、UNet和解码器,整合为一个单一的端到端可训练架构。为此,作者采用LoRA [17]来适应原始网络以适应新的控制和领域,减少过拟合和微调时间。最后,为了保留输入的高频细节,作者通过零卷积[73]在编码器和解码器之间引入跳跃连接。作者的架构是通用的,可作为条件GAN学习目标,如CycleGAN和pix2pix[19, 77]的即插即用模型。据作者所知,作者的工作是首次使用文本到图像模型实现了一步图像翻译。
作者主要关注更难的未配对翻译任务,例如将白天转换为夜晚以及反向转换,以及向图像中添加/移除天气效果。作者展示了作者的模型CycleGAN-Turbo在分布匹配和输入结构保持方面显著优于现有的基于GAN和基于扩散的方法,同时比基于扩散的方法实现更高的效率。作者对方法中的每个设计选择进行了广泛的消融研究。
为了展示作者架构的灵活性,作者也进行了成对设置的实验,比如 Edge2Image 或 Sketch2Photo。作者的模型名为 pix2pix-Turbo,在视觉效果上可与其他最新的条件扩散模型相媲美,同时将推理步骤减少到1步。作者可以通过在预训练模型中使用的噪声图和作者模型编码器输出之间插值来生成多样的输出。总之,作者的研究结果表明,一步预训练的文本到图像模型可以作为许多下游图像合成任务中强大且灵活的基础架构。
2 Related Work
图像到图像的翻译。 生成模型最近的发展使得许多图像到图像的翻译应用成为可能。成对的图像翻译方法 [19, 41, 51, 65, 75, 79] 利用重建[20, 74]和对抗损失[13]的组合,将一个源域中的图像映射到目标域。近来,各种条件扩散模型不断涌现,为图像翻译任务整合了文本和空间条件[2, 5, 28, 38, 48, 64, 73]。这些方法通常基于预训练的文本到图像模型。例如,像GLIGEN [28],T2I-Adapter [38],以及ControlNet [73]这样的工作引入了有效的微调技术,使用如门控 Transformer 层或零卷积层的 Adapter 。然而,模型训练仍然需要大量的训练对。相比之下,作者的方法可以在没有图像对的情况下利用大规模扩散模型,并且具有显著更快的推理速度。
在许多情况下,由于配对的输入和输出图像不可用,已经提出了几种技术,包括循环一致性[70, 24, 77],共享中间潜在空间[18, 27, 29],内容保持损失[56, 60],和对立学习[40, 14]。最近的工作[52, 67, 59]也探讨了无配对翻译任务中的扩散模型。然而,这些基于GAN或基于扩散的方法通常需要在新领域上从头开始训练。相比之下,作者引入了第一种利用预训练扩散模型的无配对学习方法,展示了比现有方法更好的结果。
文本到图像模型。 大规模文本条件模型[39, 46, 49, 11, 21]通过在互联网级数据集[55, 6]上的训练,显著提高了图像的质量和多样性。几项工作[15, 35, 37, 42, 62]提出了零样本方法,使用预训练的文本到图像模型编辑真实图像。例如,SDEdit[35]通过向输入图像添加噪声,然后根据文本提示用预训练模型进行去噪来编辑真实图像。Prompt-to-Prompt方法在图像编辑过程中进一步操纵或保留交叉注意力和自注意力层中的特征[15, 12, 15, 42, 44, 62]。其他方法在图像编辑之前对网络或文本嵌入进行微调[23, 37],或采用更精确的逆推方法[57, 63]。尽管它们取得了令人印象深刻的结果,但在具有许多目标的复杂场景中,它们经常遇到困难。作者的工作可以看作是使用来自新领域/任务的成对或非成对数据来增强这些方法。
一步生成模型。 为了加快扩散模型的推理速度,近期的研究工作聚焦于通过使用快速的常微分方程(ODE)求解器[22, 32]来减少采样步骤,或者将慢速的多步教师模型蒸馏为快速的几步学生模型[50, 36]。从噪声直接回归到图像通常会产生模糊的结果[33, 76]。对此,各种蒸馏方法使用了连贯性模型训练[58, 34],对抗性学习[69, 54],变分得分蒸馏[66, 71],矫正流[30, 31],以及它们的组合[54]。其他方法直接使用生成对抗网络(GANs)进行文本到图像的合成[53, 21]。与这些专注于一步文本到图像合成的作品不同,作者提出了第一个同时使用文本和条件图像的一步条件模型。作者的方法超越了直接使用原始ControlNet与一步蒸馏模型的 Baseline 。
3 Method
作者从一个一步预训练的文本到图像模型开始,这个模型能够生成真实的图像。然而,作者的目标是“转换”一个来自源域的输入真实图像到目标域,比如将日间驾驶图像转换为夜间图像。在3.1节中,作者探讨了为作者的模型添加结构的不同条件方法以及相应的挑战。接下来,在3.2节中,作者研究了困扰潜在空间模型[47]的常见问题——细节丢失(例如,文本、手、街道标志),并提出了解决方案。然后,在3.3节中,作者讨论了作者的非配对图像翻译方法,并进一步扩展到配对设置和随机生成(3.4节)。
Adding Conditioning Input
为了将一个文本到图像的模型转换成图像翻译模型,作者首先需要找到一个有效的方法将输入图像 结合到模型中。
噪声与条件输入之间的冲突。 将条件输入融入扩散模型的一种常见策略是引入额外的 Adapter 分支[38, 73],如图3所示。具体来说,作者初始化了一个标记为条件编码器的第二编码器,可以用稳定扩散编码器[73]的权重初始化,或者使用随机初始化权重的小型网络[38]。这个控制编码器接收输入图像 ,并通过残差连接向预训练的稳定扩散模型输出多分辨率的特征图。这种方法在控制扩散模型方面已经取得了显著成果。然而,如图3所示,在一步模型中使用两个编码器(U-Net编码器和条件编码器)处理噪声图和输入图像在语境中提出了挑战。与多步扩散模型不同,一步模型中的噪声图直接控制生成图像的布局和姿态,经常与输入图像的结构相矛盾。因此,解码器接收两组代表不同结构的残差特征,使得训练过程变得更加具有挑战性。
直接条件输入。 图3还说明了由预训练模型生成的图像的结构显著受到噪声图的影响。基于这一洞见,作者建议将条件输入直接输入到网络中。图7和表4进一步显示,直接条件输入比使用额外的编码器能获得更好的结果。为了使 Backbone 模型能够适应新的条件,作者在U-Net的各个层次中添加了几个LoRA权重[17](见图2)。
Preserving Input Details
一个关键挑战阻碍了潜在扩散模型(LDM [47])在多目标和复杂场景中的应用,那就是缺乏细节保留。
为什么细节会丢失。 潜在扩散模型(LDMs)的图像编码器通过将输入图像在空间上压缩8倍,同时将通道数从3增加到4。这种设计加快了扩散模型的训练和推理速度。然而,对于需要保留输入图像精细细节的图像转换任务来说,这可能并不是理想的选择。作者在图4中说明了这个问题,其中作者取了一个输入的白天驾驶图像(左),并将其转换为一个对应的夜间驾驶图像,所用的架构没有使用跳跃连接(中)。观察可见,细粒度的细节,如文本、街道标志和远处的汽车,并没有被保留。相比之下,采用包含跳跃连接的架构(右)得到的转换图像显著更好地保留了这些复杂细节。
连接第一阶段编码器和解码器。 为了捕捉输入图像的细粒度视觉细节,作者在编码器和解码器网络之间添加了跳跃连接(见图2)。具体来说,作者在编码器内的每个下采样块之后提取四个中间激活,通过一个11零卷积层[73]处理它们,然后将它们输入到解码器中相应的上采样块中。这种方法确保在整个图像翻译过程中保留复杂的细节。
Unpaired Training
作者使用稳定扩散加速(v2.1)版作为一步推理的基础网络进行所有实验。在这里,作者展示了作者的生成器可以用于修改后的CycleGAN公式[77]进行无配对翻译。具体来说,作者的目标是将源域中的图像转换成所需的目标域,给定一个无配对的数据集。
作者的方法包括两个翻译函数 和 。这两个翻译都使用了如第3.1节和第3.2节所描述的相同网络 ,但是对应于任务的不同标题 和 。例如,在白天夜晚翻译任务中, 是白天驾驶,而 是夜晚驾驶。如图2所示,作者冻结了大多数层,只训练了第一卷积层以及添加的LoRA Adapter 。
循环一致性与感知损失 。循环一致性损失 强制每个源图像 通过两个翻译函数后能够返回到其本身。作者用 来表示L1差异和LPIPS [74]的组合。关于权重设置,请参考附录0.D。
对抗损失。 作者在两个领域都使用了对抗损失[13],以鼓励翻译后的输出与相应目标领域相匹配。作者使用了两个对抗判别器, 和 ,它们旨在对相应领域的真实图像和翻译图像进行分类。两个判别器都采用CLIP模型作为基础网络,遵循Vision-Aided GAN[26]的建议。对抗损失可以定义为:
完整目标函数。 完整的训练目标包含三种不同的损失:循环一致性损失 ,对抗性损失 和身份正则化损失 。损失通过 和 进行加权,如下所示:
Extensions
虽然作者的主要关注点是未配对学习,但作者也展示了两个扩展,用以学习其他类型的生成对抗网络(GAN)目标,例如从配对数据中学习以及生成随机输出。
配对训练。 作者将作者的翻译网络 适应于配对设置,例如将边缘或草图转换为图像。作者将作者方法的配对版本称为pix2pix-Turbo。在配对设置中,作者的目标是学习单一的翻译函数 :,其中 X 是源域(例如,输入草图),Y 是目标域(例如,输出图像),而 是输入标题。对于配对训练目标,作者使用以下几项:(1) 重构损失,它是感知损失和像素空间重构损失的组合;(2) GAN损失,类似于方程2中的损失,但只针对目标域;(3) CLIP文本-图像对齐损失 [45]。更多详细信息请参见附录0.D。
生成多样化输出 在许多图像转换任务中,生成随机输出是很重要的,例如,草图到图像的生成。然而,让一步法模型生成多样化的输出是具有挑战性的,因为它需要利用额外的输入噪声,这通常被忽略 [18, 78]。作者提出通过将特征和模型权重插值到已经能产生多样化输出的预训练模型来生成多样化输出。具体来说,给定一个插值系数 ,作者做了以下三个改动。首先,作者将高斯噪声和编码器输出进行结合。作者的生成器 现在接收三个输入:输入图像 ,一个噪声图 ,以及系数 。更新后的函数 首先将噪声 和编码器输出结合:。然后,作者将这个结合后的信号输入到U-Net中。
其次,作者根据 同比例缩放LoRA Adapter 的权重和跳跃连接的输出,其中 和 分别表示原始权重和新增加的权重。
最后,作者根据系数 对重建损失进行缩放。
值得注意的是, 对应于预训练模型的默认随机行为,在这种情况下不强制执行重建损失。 对应于第3.3和3.4节中描述的确定性翻译。作者使用不同的插值系数对图像翻译模型进行微调。图9显示了这种微调使得作者的模型在推理时通过采样不同的噪声来生成多样化的输出。
4 Experiments
作者在几个图像翻译任务上进行了广泛的实验,这些实验被组织成三个主要类别。首先,在第四章第一节中,作者将作者的方法与几种先前的基于GAN和扩散模型的图像翻译方法进行了比较,展示了更好的定量和定性结果。其次,在4.2节中,作者逐个纳入每个组成部分,分析作者无配对方法CycleGAN-Turbo中每个部分的有效性。最后,在4.3节中,作者展示了作者的方法在配对设置下的工作情况,并生成多样化的输出。请在作者的GitHub页面https://github.com/GaParmar/img2img-turbo上找到代码、模型和互动演示。
训练细节。 作者在驾驶数据集上对未配对模型的总体可训练参数量为330 MB,包括LoRA权重、零卷积层以及U-Net的第一个卷积层。超参数和架构细节请参阅附录0.D。
数据集。 作者在两个常用的数据集(马 斑马和优胜美地夏季 冬季)上进行了非配对的翻译实验,以及两个更高分辨率的驾驶数据集(白天 夜晚和清晰 雾天,来自BDD100k [72] 和DENSE [4])。对于前两个数据集,作者遵循CycleGAN [77] 的方法,加载 的图像,并在训练时使用随机 的裁剪。在推理过程中,作者直接在 的尺寸上进行翻译。对于驾驶数据集,作者在训练和推理过程中将所有图像调整至 。在评估时,作者使用相应的验证集。
评估协议。 一种有效的图像转换方法必须满足两个关键标准:(1)与目标域的数据分布相匹配,(2)在转换后的输出中保留输入图像的结构。作者使用FID [16]评估分布匹配,遵循clean-FID的实现[43]。作者使用DINO-Struct-Dist [61]评估对第二个标准的遵循程度,该指标在特征空间中测量两张图像的结构相似性。_作者将所有的DINO结构得分乘以100后报告。_ FID得分越低,表示与参考目标分布的匹配越接近,真实性越高;而DINO-Struct-Dist越低则表明在转换图像中更准确地保留了输入结构。低FID得分与高DINO-Struct-Dist表明该方法无法遵循输入结构。低DINO-Struct-Dist但高FID则意味着该方法几乎不改变输入图像。考虑这两个得分是至关重要的。此外,作者在Nvidia RTX A6000 GPU上比较了所有方法的推理运行时间,并在表1和表2中包含了一项人类感知研究。
Comparison to Unpaired Methods
作者比较了CycleGAN-Turbo与先前的基于GAN的无配对图像翻译方法、零样本图像编辑方法,以及使用其公开可用代码训练的用于图像编辑的扩散模型。从定性的角度来看,图5和图6显示现有的方法,无论是基于GAN的还是基于扩散的,在输出真实性和结构保持之间难以达到正确的平衡。
与基于GAN方法的比较。 作者将作者的方法与两种无配对GAN模型——CycleGAN [77]和CUT [40]进行了比较。作者在所有数据集上使用默认的超参数训练这些 Baseline 模型100,000步,并选择最佳预训练权重。表1和表2展示了在八个无配对翻译任务上的定量比较。CycleGAN和CUT在简单的以目标为中心的数据集(如马斑马(图13))上表现出有效的性能,获得了较低的FID和DINO-Structure分数。作者的方法在FID和DINO-Structure距离度量方面稍微优于这些方法。然而,对于更复杂的场景,如夜晚白天,CycleGAN和CUT得到的FID分数显著高于作者的方法,经常产生不希望出现的伪迹(图15)。
与基于扩散的编辑方法的比较。 接下来,作者在表1和表2中比较了作者的方法与几种基于扩散的方法。首先,作者考虑了最近的零样本图像转换方法,包括SDEdit [35],Plug-and-Play [62],pix2pix-zero [42],CycleDiffusion [67]和DDIB [59],这些方法使用预训练的文本到图像扩散模型,并通过不同的文本提示转换图像。请注意,原始DDIB实现涉及从头开始训练两个独立的特定领域扩散模型。为了提高其性能并公平比较,作者用预训练的文本到图像模型替换了特定领域的模型。作者还与Instruct-pix2pix [5]进行了比较,后者是一种基于文本的图像编辑训练的条件扩散模型。
如表1和图14所示,在以目标为中心的数据集上,例如马斑马,这些方法能够生成逼真的斑马,但很难精确匹配目标姿态,这一点从持续较大的DINO-structure得分可以明显看出。在驾驶数据集上,这些编辑方法的性能明显更差,原因有三:(1)模型难以生成包含多个目标的复杂场景;(2)这些方法(除Instruct-pix2pix外)需要先将图像反演到噪声图,这可能导致潜在的瑕疵;(3)预训练模型无法合成与驾驶数据集捕获的街景图像相似的图片。表2和图16显示,在所有四个驾驶翻译任务中,这些方法输出的图像质量较差,这体现在较高的FID得分上,并且没有遵循输入图像的结构,这从较高的DINO-Structure距离值可以看出。
人类偏好研究 接下来,作者在亚马逊机械土耳其(AMT)上进行了一项人类偏好研究,以评估不同方法产生的图像质量。作者使用了相关数据集的完整验证集,每个比较都由三位独特用户独立评估。作者将两个模型的输出并排展示,并要求用户在无限时间内选择哪一个更准确地遵循目标提示。例如,对于日转夜翻译任务,作者收集了1500次比较,涉及500张验证图像。呈现给用户的问题提示是:“哪张图像看起来更像是夜间拍摄的驾驶场景的真实图片?”
表3将作者的方法与CycleGAN [77](表现最佳的GAN方法)以及Instruct-Pix2Pix [5](表现最佳的扩散方法)进行了比较。作者的方法在所有数据集上均超过了这两个 Baseline ,除了从清晰到雾天的转换任务。在这种情况下,用户更倾向于InstructPix2Pix的结果,因为它输出的雾景更具艺术性。然而,InstructPix2Pix未能保留输入的结构,这一点从其较高的DINO-Struct得分(7.6)与作者的(1.4)的比较中可以明显看出。此外,如表2所示,其结果与目标雾天数据集相差较大,其FID得分(170.8)远高于作者的(137.0)。
Ablation Study
在这里,作者通过表4和图7中的广泛消融研究展示了作者算法设计的有效性。
\begintable} \begin{tabular}{l c cc c c c\hline \hline \multirow{2}{}{方法 } & \multirow{2}{}{\begin{tabular}{c} 输入 \ 类型 \ \end{tabular} } & \multirow{2}{}{\begin{tabular}{c} 跳过 \ 跳过 \ \end{tabular} } & \multirow{2}{}{ \begin{tabular}{c} 预 \ 训练 \ \end{tabular} } & \multicolumn{2}{c}{**马 **斑马 } & \multicolumn{2}{c}{**斑马 **马 } \ \cline{4-7} & & & & FID & DINO & FID & DINO \ & & & & 结构 & & 结构 & 结构 \ \hline 配置A & 直接输入 & x & x & 128.6 (+214%) & 5.2 (+148%) & 167.1 (+31%) & 4.6 (+156%) \ 配置B & ControlNet & x & ✓ & 41.2 (+0%) & 7.3 (+248%) & 99.4 (-22%) & 8.6 (+378%) \ 配置C & T2I-Adapter & x & ✓ & 55.4 (+35%) & 4.7 (+124%) & 135.4 (+6%) & 4.8 (+167%) \ 配置D & 直接输入 & x & ✓ & 40.1 (-2%) & 4.4 (+110%) & 116.2 (-9%) & 3.0 (+67%) \ \cline{2-7} \cline{5-7} \end{tabular} \end{table}
注:表格中“x”代表没有应用该项技术,“✓”代表应用了该项技术。其他内容如FID、DINO等术语保持原文,未翻译。百分比符号前的数值代表该项技术的性能指标,百分比表示与基准相比的变化。
使用预训练权重。 首先,作者评估了使用预训练网络的影响。在表4的配置A中,作者在Horse Zebra数据集上训练了一个未配对的模型,但是使用随机初始化的权重而不是预训练权重。由于没有利用来自预训练文本到图像模型的先验知识,如图7配置A所示,输出的图像看起来不自然。这一观察在表4中两个任务的FID(故障检测率)大幅上升得到了证实。
添加条件输入的不同方式。 接下来,作者比较了三种向模型添加结构输入的方法。配置B使用ControlNet编码器[73],配置C使用T2I-Adapter[38],最后,配置D直接将输入图像提供给基础网络,没有任何额外的分支。配置B获得了与配置D相当的平均FID值。然而,它的DINO-结构距离也显著更高,表明ControlNet编码器在匹配输入的结构方面存在困难。这在图7中也可以观察到;配置B(第三行)一致地改变场景结构并虚构出新物体,例如在驾驶场景中出现的部分建筑物,以及马到斑马翻译中不自然的斑马纹路。配置C使用轻量级的T2I-Adapter来学习结构,得到的FID和DINO-Struct分数更差,输出图像中存在多处伪迹和结构保留不佳的情况。
跳跃连接和可训练的编码器与解码器。 最后,作者通过比较表4和图7中的配置D与作者的最终方法CycleGAN-Turbo,可以看出跳跃连接的效果。在所有任务中,添加跳跃连接并共同训练编码器与解码器可以显著提高结构保持,尽管这会带来FID的小幅增加。
附加结果。 请参见附录A和C,了解关于其他数据集的进一步消融研究,以及模型训练时训练图像数量变化的影响,以及编码器-解码器微调的作用。
Extensions
配对翻译。 作者在由社区收集的30万艺术图像数据集[1]上训练Edge2Photo和Sketch2Photo模型。作者提取了Canny边缘[7]和HED轮廓[68]。由于作者的方法和 Baseline 使用不同的数据集,作者展示视觉比较而不是进行FID评估。有关训练数据和预处理的更多详细信息包含在附录D中。
作者在图8中比较了作者的成对方法pix2pix-Turbo与现有的单步和多步翻译方法,包括两种使用潜在一致性模型[34]的单步 Baseline 以及带有ControlNet Adapter 的稳定扩散-涡轮[54]。尽管这些方法可以一步生成结果,但它们的图像质量会下降。接下来,作者将其与使用100步稳定扩散的普通ControlNet进行比较。此外,作者还为100步ControlNet Baseline 使用了无需分类器的引导和一个长的描述性负提示。如图8所示,与单步 Baseline 相比,这种方法可以生成更令人满意的输出。作者的方法只需一次前向传递就能生成令人信服的输出,无需负提示或无需分类器的引导。
生成多样化输出。 最后,在图9中,作者展示了作者的方法可以如第3.4节所述用来生成多样化的输出。在相同的输入草图和用户提示下,作者可以采样不同的噪声图,并生成多样化的多模态输出,比如不同风格的猫、背景的变化以及具有不同壳图案的乌龟。
5 Discussion and Limitations
作者的工作表明,一步预训练模型可以作为许多下游图像合成任务的强大而通用的基础模型。通过各种GANs目标,可以适应这些模型以应对新任务和领域,而无需进行多步扩散训练。作者的模型训练只需要少量额外的可训练参数。
局限性。 尽管作者的模型能够通过一步生成视觉上吸引人的结果,但它确实存在局限性。首先,作者无法指定引导的强度,因为作者的基础模型SD-Turbo没有使用无分类器引导。引导式蒸馏[36]可能是一个有望实现引导控制的解决方案。其次,作者的方法不支持负提示,这是一种减少瑕疵的便捷方式。第三,使用循环一致性损失和高容量生成器进行模型训练是内存密集型的。探索用于更高分辨率图像合成的单边方法[40]是下一个有意义的步骤。
致谢。 作者感谢Anurag Ghosh、Nupur Kumari、Sheng-Yu Wang、Muyang Li、Sean Liu、Or Patashnik、George Cazenavette、Phillip Isola和Alyosha Efros在作者的手稿上进行的富有成果的讨论和宝贵的反馈。这项工作得到了GM Research Israel、NSF IIS-2239076、Packard Fellowship和Adobe Research的部分支持。
Appendix
接下来,作者从A部分开始,这部分提供了更多数据集上的消融研究结果。B部分接着进行了更多与所有基于GAN和基于Diffusion的 Baseline 方法的比较。C部分展示了关于条件编码器冲突的额外分析,改变数据集大小的影响以及编码器-解码器微调的作用。最后,在D部分,作者提供了超参数和训练细节。
Appendix A Additional Ablation Study
主论文中的表3展示了关于马到斑马转换的消融研究的结果。作者在图10中展示了在此数据集上更多的定性消融结果。接下来,作者定性地在图11、图12和表5中对日到夜转换执行相同的消融研究。与主论文类似,作者与四个变体进行了比较:(1) 配置A使用随机初始化权重而不是预训练权重,(2) 配置B使用ControlNet编码器[73],(3) 配置C使用T2I-Adapter[38],以及(4) 配置D直接将输入图像送入基础网络,而不使用跳跃连接。
作者的完整方法在分布匹配(FID)和结构保持(DINO结构距离)方面优于所有其他变体。
Appendix B Additional Baseline Comparisons
本文的图5和图6展示了作者的方法与表现最佳的GAN Baseline 方法以及最佳的扩散模型 Baseline 方法之间的比较。在这里,作者通过图13和图15展示了与所有GAN Baseline 方法的额外定性比较,以及通过图14和图16展示了与所有扩散模型 Baseline 方法的比较。作者的方法一致地生成更加逼真的输出,同时保持了输入图像的结构。
Appendix 0.C Additional Analysis
与条件编码器的冲突。 本文的图3展示了通过单独的编码器加入条件图像时出现的冲突特征。在这里,作者展示了如图3所示的使用条件编码器会导致原始网络被忽略。在图17中,作者展示了在相同条件图像下,不同噪声图的输出。这些不同的噪声图产生了感知上相似的输出图像,表明原始SD-Turbo编码器的特征已被忽略。
改变数据集大小。 接下来,作者评估了作者的方法在不同大小数据集上的有效性。作者使用了日夜转换数据集,其中包含36,728张白天图像和27,971张夜晚图像。为了了解数据集大小对性能的影响,作者在原始数据集的逐步减少的子集上训练了三个额外的模型:1,000张图像,100张图像,最后是10张图像。表6显示,减少训练图像的数量会导致FID略有增加,但在所有不同的设置中结构保持基本不变。这表明作者的模型可以在小数据集上进行训练。
4.2.2 Role of Skip Connections.
作者此外通过考虑一个 Baseline 来评估跳跃连接的作用,这个 Baseline 在不添加跳跃连接的情况下对VAE编码器和解码器进行微调。图18显示,这个 Baseline 未能保留诸如文本和街道标志等精细细节。
训练细节
We trained our model on a dataset consisting of ( N ) images. The training process involved several stages, including data preprocessing, model architecture design, and optimization algorithm selection.
作者在包含 ( N ) 张图像的数据集上训练了作者的模型。训练过程包括几个阶段,包括数据预处理、模型架构设计以及优化算法选择。
During the preprocessing phase, we normalized the images and applied data augmentation techniques such as rotation, scaling, and flipping to improve the model's generalization ability.
在预处理阶段,作者对图像进行了归一化处理,并应用了数据增强技术,如旋转、缩放和翻转,以提高模型的泛化能力。
For the model architecture, we employed a convolutional neural network (CNN) with ( L ) layers. The network architecture was inspired by the VGG-16 model with slight modifications to better suit our specific task.
对于模型架构,作者采用了一个具有 ( L ) 层的卷积神经网络(CNN)。网络架构参考了VGG-16模型,并对其进行了少许修改,以更好地适应作者的特定任务。
The optimization algorithm we used was Adam with a learning rate of ( \alpha ) and a batch size of ( B ). We trained the model for ( E ) epochs and applied early stopping when the validation loss stopped improving.
作者使用的优化算法是Adam,学习率为 ( \alpha ),批量大小为 ( B )。作者训练了模型 ( E ) 个周期,并在验证损失不再改善时应用了早停法。
Additionally, we applied dropout regularization to prevent overfitting and used weight decay to mitigate the effect of large weights.
此外,作者还应用了dropout正则化以防止过拟合,并使用了权重衰减来减轻大权重的影响。
These training details were crucial in achieving the high performance observed in our model on the test dataset.
这些训练细节对于实现在测试数据集上作者模型的高性能表现至关重要。
无配对翻译。 对于所有的无配对翻译评估,作者使用了以下列出的四个数据集。对于白天和夜晚数据集,在测试时作者使用了对应验证集中的500张图像。雾天图像的验证集由DENSE数据集中的50张图像组成。
_Horse Zebra_:继CycleGAN [77]之后,作者在Imagenet [10]中使用了来自 野生马 类别的939幅图像和来自 斑马 类别的1177幅图像。
_Yosemite Winter Summer_:作者在CycleGAN [77]中使用了从Flickr收集的854张优胜美地冬季照片和1273张夏季照片。
_Day Night_:作者使用BDD100k数据集[72]的白天和夜晚子集来进行这项任务。
Clear Foggy: 作者使用了BDD100k数据集中的日间清晰图像(12,454张)以及DENSE数据集['dense-fog'分区]中的572张雾天图像[4]。
对于所有的非配对翻译实验,作者使用了Adam求解器[25],学习率为1e-6,批量大小为8, 以及 。
成对翻译。 成对翻译的训练目标包括如主论文第3.4节所述的三种损失:重建损失 (L2和LPIPS)、GAN损失 和CLIP文本-图像对齐损失 。完整的学习目标如下所示。作者使用 , 。
作者训练了作者的配对方法pix2pix-Turbo用于两个任务:Edge2Image和Sketch2Image。这两个任务都使用了同一由社区收集的艺术图像数据集[1],并遵循了ControlNet[73]的预处理方法。
Edge2Image. 在训练时,作者使用带有随机阈值的Canny边缘检测器[7]。作者用Adam优化器进行训练,学习率为1e-5,共7500步,批量大小为40。
Sketch2Image. 作者首先使用HED检测器生成合成草图,并应用数据增强方法,例如随机阈值、非最大抑制和随机形态变换。作者的Sketch2Image模型以Edge2Image模型为基础初始化,并使用相同的的学习率、批量大小和优化器进行5000步的微调。
参考
[1].One-Step Image Translation with.