9. Zero-shot Image-to-Image Translation

  该文提出一种无需训练,即可对图像进行文本驱动编辑的方法。在准确修改目标对象的同时,保证原图的背景和布局等内容不受太多的影响。下图展示了几种文本驱动图像编辑的效果,如将猫变成狗,将马变成斑马等。
在这里插入图片描述
  该文主要做了以下几点工作,首先将输入的图像x~\tilde{x}x~利用Stable Diffusion编码到潜在空间得到x0x_0x0,并按照DDIM中的确定性过程将其扩散为噪声编码xinvx_{inv}xinv。然后,利用BLIP模型得到输入图像对应的文本描述ccc,并计算其与目标文本提示ttt之间的均值差异Δcedit\Delta c_{edit}Δcedit,将其作为图像编辑的方向引入到生成过程中。最后,为了保持图像的背景和布局保持不变,作者引入了交叉注意力机制进行引导。该方法的流程如下图所示
在这里插入图片描述

1. 逆转真实图像

  首先得到真实图像x~\tilde{x}x~对应的潜在特征x0x_0x0后,作者利用DDIM中的确定性过程将其扩散为纯噪声,过程如下xt+1=αˉt+1fθ(xt,t,c)+1−αˉt+1ϵθ(xt,t,c)x_{t+1}=\sqrt{\bar{\alpha}_{t+1}} f_{\theta}\left(x_{t}, t, c\right)+\sqrt{1-\bar{\alpha}_{t+1}} \epsilon_{\theta}\left(x_{t}, t, c\right)xt+1=αˉt+1 fθ(xt,t,c)+1αˉt+1 ϵθ(xt,t,c)其中,ϵθ\epsilon_{\theta}ϵθ是基于UNet模型的噪声估计器,fθf_{\theta}fθ是根据当前的噪声图像xtx_txt,时刻ttt和文本描述特征ccc来估计得到的x^0\hat{x}_0x^0过程如下fθ(xt,t,c)=xt−1−αˉtϵθ(xt,t,c)αˉtf_{\theta}\left(x_{t}, t, c\right)=\frac{x_{t}-\sqrt{1-\bar{\alpha}_{t}} \epsilon_{\theta}\left(x_{t}, t, c\right)}{\sqrt{\bar{\alpha}_{t}}}fθ(xt,t,c)=αˉt xt1αˉt ϵθ(xt,t,c)

这里很有意思,作者并不是直接使用DDIM中的扩散过程来增加噪声的,而是将原本已知的x0x_0x0换成了估计得到的x^0\hat{x}_0x^0,把可以随机采样的噪声ϵ\epsilonϵ变成了预测得到的ϵθ\epsilon_{\theta}ϵθ,我认为这样做的目的是为了在扩散过程中就把文字描述特征ccc引入进去。

  但是估计得到的噪声ϵθ\epsilon_{\theta}ϵθ存在一个问题,他不一定满足统计学上的不相关性,也就是说它不是一个完全的高斯白噪声,这将导致由最终的扩散结果xinvx_{inv}xinv生成的图像效果不好。为了解决这个问题,作者引入了两个正则化条件,Lpair\mathcal{L}_{pair}LpairLKL\mathcal{L}_{KL}LKL。为了计算Lpair\mathcal{L}_{pair}Lpair,作者将ϵθ\epsilon_{\theta}ϵθ输出的噪声图η0∈R64×64×4\eta^0\in\mathbb{R}^{64\times64\times4}η0R64×64×4利用2*2的全局池化层将其逐步下采样到尺寸为8×88\times88×8的噪声图,构建一个4层的噪声图金字塔{η0,η1,η2,η3}\{\eta^0,\eta^1,\eta^2,\eta^3\}{η0,η1,η2,η3},然后,利用下式来计算Lpair\mathcal{L}_{pair}LpairLpair =∑p1Sp2∑δ=1Sp−1∑x,y,cηx,y,cp(ηx−δ,y,cp+ηx,y−δ,cp)\mathcal{L}_{\text {pair }}=\sum_{p} \frac{1}{S_{p}^{2}} \sum_{\delta=1}^{S_{p}-1} \sum_{x, y, c} \eta_{x, y, c}^{p}\left(\eta_{x-\delta, y, c}^{p}+\eta_{x, y-\delta, c}^{p}\right)Lpair =pSp21δ=1Sp1x,y,cηx,y,cp(ηxδ,y,cp+ηx,yδ,cp)其中,下标x,yx,yx,y表示位置,ccc表示通道号,δ\deltaδ表示位置偏移量,SpS_pSp表示噪声图的尺寸。另一方面,使用变分自动编码器中的KL散度损失LKL\mathcal{L}_{KL}LKL,来约束生成的噪声满足零均值单位方差的要求。最后,两个损失函数通过加权求和作为最终的自动互相关(auto-correlation)正则化项Lauto=Lpair+λLKL\mathcal{L}_{auto}=\mathcal{L}_{pair}+\lambda\mathcal{L}_{KL}Lauto=Lpair+λLKL

2. 计算编辑方向

  作者把原本的文本描述ccc作为源提示sss,把编辑后的文本描述作为目标提示ttt,并利用GPT-3语言模型,根据这两个提示分别生成一系列的句子,然后利用CLIP的文本编码器得到这些句子的嵌入式特征,并计算二者之间的均值差异Δcedit\Delta c_{edit}Δcedit,如下图所示。这个差异将作为图像编辑的方向引入到生成过程中。
在这里插入图片描述

3. 基于交叉注意力引导的图像编辑

  此时我们已经得到了扩散后的噪声图像xinvx_{inv}xinv和原本的图像描述ccc,以及图像编辑的方向Δcedit\Delta c_{edit}Δcedit。最直接的方法就是将图像描述和编辑方向相加后cedit=c+Δceditc_{edit}=c+\Delta c_{edit}cedit=c+Δcedit作为条件,引入噪声估计网络ϵθ(xt,t,cedit)\epsilon_{\theta}(x_t,t,c_{edit})ϵθ(xt,t,cedit),并按照一般的反向去噪过程得到生成图像,如本文中第二幅图的最后一行表示的过程。但这样带来一个问题,就是虽然目标对象按照编辑的内容发生了改变,但由于缺少约束和引导,图像的背景布局以及目标的结构和姿态都发生了变化,这是我们不希望看到的。因此为了解决这个问题,作者引入了基于交叉注意力机制的引导方法。
  其实在Prompt-to-prompt这篇文章中,我们就已经揭示了交叉注意力图和图像内容以及文字描述之间的对应关系,如下所示Attention⁡(Q,K,V)=M⋅V where M=Softmax⁡(QKTd)\begin{aligned} \operatorname{Attention}(Q, K, V) & =M \cdot V \\ \text { where } M & =\operatorname{Softmax}\left(\frac{Q K^{T}}{\sqrt{d}}\right) \end{aligned}Attention(Q,K,V) where M=MV=Softmax(d QKT)其中Q=WQψ(xt),K=WKc,V=WVcQ=W_Q\psi(x_t),K=W_Kc,V=W_VcQ=WQψ(xt),K=WKc,V=WVcψ(xt)\psi(x_t)ψ(xt)表示经过UNet编码的图像特征。得到的交叉注意力图MMM其中的每个元素MijM_{ij}Mij表示了第jjj个文本提示对于图像中第iii个位置处的作用。因此为了保证图像的整体背景和布局不会随着文本编辑发生较大的改变,作者提出了一种基于交叉注意力机制的引导。
  第一步,直接使用原本的图像描述ccc获得交叉注意力图MtrefM_t^{ref}Mtref;第二步,使用编辑后的描述ceditc_{edit}cedit获得交叉注意力图MteditM_t^{edit}Mtedit,计算两者差异的L2范数关于xtx_txt的梯度Δxt=∇xt(∥Mtedit −Mtref ∥2)\Delta x_{t}=\nabla_{x_{t}}\left(\left\|M_{t}^{\text {edit }}-M_{t}^{\text {ref }}\right\|_{2}\right)Δxt=xt( Mtedit Mtref  2),并将其作用于xtx_txt,得到x~t=xt−λxaΔxt\tilde{x}_t=x_t-\lambda_{xa}\Delta x_{t}x~t=xtλxaΔxt后,再次计算噪声ϵedit^←ϵθ(xt−λxa Δxt,t,cedit )\epsilon^{\hat {edit }} \leftarrow \epsilon_{\theta}\left(x_{t}-\lambda_{\text {xa }} \Delta x_{t}, t, c_{\text {edit }}\right)ϵedit^ϵθ(xtλxa Δxt,t,cedit )。最后,根据ϵedit^\epsilon^{\hat {edit }}ϵedit^进行反向去噪,得到xt−1x_{t-1}xt1。完整的算法流程如下图所示
在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐