文章链接:
https://arxiv.org/pdf/2409.08260
Github链接:
https://github.com/Nnn-s/CATdiffusion
总结速览
解决的问题
:
-
单一U-Net在所有去噪步骤中对齐文本提示和视觉对象不足以生成期望的对象。
-
扩散模型的复杂采样空间中无法保证对对象生成的可控性。
提出的方案
:
-
语义预修复
:在多模态特征空间中推理目标对象的语义特征。
-
高保真度的对象生成
:在扩散的潜在空间中基于已修复的语义特征生成目标对象。
应用的技术
:
-
采用级联的Transformer语义修复器与目标修复扩散模型,提出了新型的Cascaded Transformer-Diffusion(CAT-Diffusion)框架。
-
语义修复器通过上下文和文本提示条件,预测目标对象的语义特征。语义修复器的输出作为视觉提示,经过参考Adapter层来指导高保真对象生成。
达到的效果
:
-
在OpenImages-V6和MSCOCO数据集上的广泛评估表明,CAT-Diffusion在文本引导的目标修复任务中优于现有的最新方法。
方法
首先,在文本引导的物体修复中,需要在由输入图像的二值mask指示的指定区域内生成由文本提示(通常是对象标签)描述的新对象。这个任务要求与图像和文本提示分别具有视觉一致性和语义相关性。本节将深入探讨级联Transformer-Diffusion(CAT-Diffusion),在简要回顾扩散模型后,随后介绍训练细节。
级联Transformer-扩散模型
设
和
分别为输入图像、描述新目标的文本提示和指示需要修复区域的二值mask。大多数现有的文本引导物体修复扩散模型仅优化文本提示
和期望目标
在潜在空间中的对齐, 这导致了次优结果。为了进一步改进, 需要解决两个主要问题:
-
依赖单独的U-Net在所有去噪时间步中实现视觉-语义对齐是不够的;
-
在复杂的采样空间中稳定生成高保真度对象是具有挑战性的,而没有额外的语义信息。
为了解决这些挑战,研究者们提出将传统的单阶段流程分解为两个级联阶段:首先进行语义预修复,然后进行对象生成,从而形成CAT-Diffusion。技术上,CAT-Diffusion通过一种新颖的语义修复器在辅助的多模态特征空间(例如CLIP)中进行对象预修复。语义修复器通过知识蒸馏进行训练,以预测目标对象的语义特征,条件是未遮罩的视觉上下文和文本提示。这样,得出的输出自然对齐文本提示和视觉对象,除了U-Net之外,无论去噪时间步如何。语义修复器的输出通过参考Adapter层进一步集成到目标修复扩散模型中,以实现可控的目标修复。CAT-Diffusion的整体框架如下图2所示。
语义修复器
为了缓解在整个去噪过程中仅依靠单独的U-Net对齐文本提示和视觉对象的不足,提出通过在U-Net之外,利用经过良好预训练的辅助多模态特征空间对目标对象的语义特征进行预修复,以增强视觉-语义对应关系。其原理在于,预训练的多模态特征空间是通过大规模的跨模态数据进行学习的,用于实现视觉-语义对齐,无论去噪时间步如何。在本工作中,设计了一种有效的知识蒸馏目标,将这种多模态知识从教师模型(CLIP)转移到CAT-Diffusion中的语义修复器。
基于Transformer的语义修复器(SemInpainter)参数化为
,与CAT-Diffusion中的目标修复扩散模型级联, 如上图2的上部所示。首先, 通过CLIP的图像编码器(ImageEnc)提取被遮罩图像
的视觉特征
,其中
是局部图像块的特征向量。给定被遮罩图像的损坏特征
和文本提示
的文本特征,SemInpainter 旨在预测语义特征
,以忠实重建CLIP空间中的目标对象。这样, 视觉-语义对齐在扩散模型的整个去噪过程中自然得到实现。整个过程可以表示为
其中 [
] 表示拼接操作,
是可学习的位置嵌入,
是可学习的mask嵌入, 指示视觉特征
是否在图像
中被遮罩。SemInpainter 实现为24层的Transformer结构(类似于 CLIP的图像编码器)。最后, 通过将
和
与二值mask
混合, 得到修复后的特征
,这些特征将随后被整合到目标修复扩散模型中:
其中 DownSample
是一个无参数的下采样层,用于降低特征分辨率以提高计算效率。
为了强制预测的对象特征与文本提示
对齐,提出将多模态知识从教师模型(在本文中采用CLIP作为教师模型)转移到SemInpainter。技术上,SemInpainter 的训练任务是遮罩特征预测,以恢复CLIP空间中被遮罩对象的真实语义特征, 条件是未遮罩的视觉上下文和文本提示
。
参考Adapter层
由于控制扩散模型以实现高保真度的文本到图像生成仍然具有挑战性, 受到
的启发, 语义特征
被用作额外的条件,称为视觉提示,以引导扩散模型在潜在空间中进行可控的修复。具体来说,在基础目标修复扩散模型中引入了一个新的参考Adapter层(RefAdapter),其形式为Transformer 风格的多头交叉注意力层。所提出的RefAdapter 在U-Net的原始自注意力(SelfAttn)和交叉注意力层 (CrossAttn)之间交替插入,如图2的下部所示。设
为U-Net的中间隐藏状态,其中
随不同层的分辨率变化。
是扩散模型中文本编码器提取的提示
的文本特征。首先定义不同类型注意力层的共享模块原型为:
因此,升级版U-Net中的一个完整块,包括SelfAttn、RefAdapter和CrossAttn,操作如下:
其中
将作为下一块的输入。
目标修复扩散模型
通过将目标修复流程分解为两个级联过程, CAT-Diffusion能够生成与文本提示语义对齐的高保真度对象。此外,通过利用额外的语义指导(即修复后的视觉特征
),进一步增强了填补对象与周围图像上下文之间的视觉一致性。
一般来说,参数化为
的U-Net的修复扩散模型以噪声潜在编码
、指示待修复区域的mask
和被遮罩的潜在编码
作为输入,估计从
中需要去除的噪声,从而得到去噪后的
。数学上, 整体过程可以表示为:
训练
扩散损失
对于配备参考adapter层的目标修复扩散模型的训练,采用 [35] 中的通用实践,目标函数为:
知识蒸馏损失
此外, 为了强制语义修复器预修复与提示
语义对齐的对象特征, 通过知识蒸馏任务中的真实视觉特征