浅析扩散模型与图像生成【应用篇】(二十五)——Plug-and-Play

devtools/2024/9/22 16:53:40/

25. Plug-and-Play: Diffusion Features for Text-Driven Image-to-Image Translation

  该文提出一种文本驱动的图像转换方法,输入一张图像和一个目标文本描述,按照文本描述对输入图像进行转换,得到目标图像。图像转换任务其实本质上属于图像编辑任务的一种,在保留输入图像原有的姿态、布局不变的情况下,修改图像的背景、纹理、材质等内容,而不能改变图像的内容、语义、视角等。本文提出在解码器阶段的特征图能够保留局部语义信息,并且不会受到对象外观的影响,而自注意力层中的相似性图能够保留布局和形状的细节。作者对输入图像进行重建,并将重建过程中的特征图和自注意力层中的相似性图抽取出来,注入到目标图像的生成过程中,从而实现对生成图像的布局、形状的约束和引导。文本的特征还是通过交叉注意力机制引入,来实现对目标图像的修改。
在这里插入图片描述
  首先,输入图像 I G I^G IG经过一个DDIM的扩散过程得到噪声图 x T G x^G_T xTG,将 x T G x^G_T xTG输入到一个预训练好的LDM中得到去噪重建的图像 x T − 1 G x^G_{T-1} xT1G。在解码过程中,将特征图 f t l f^l_t ftl和自注意力层中的相似性图 A t l = S o f t m a x ( q t l k t l T ) A_t^l=\mathrm{Softmax}(\boldsymbol{q}_t^l{\boldsymbol{k}_t^l}^T) Atl=Softmax(qtlktlT)提取出来。为了展示特征图和相似性图所包含的信息,作者使用PCA提取特征图中前三个主成分,并进行可视化展示,效果如下图所示
在这里插入图片描述
  可以看到,在较浅的层级中,特征图只保留了非常粗糙的前景物体信息。而在中间层级(layer=4)中,就能观察到不同领域的对象之间共享的局部语义信息,物体中相同的部分对应的颜色也相同(例如人物的头部都是黄绿色,而躯干都是红紫色),即使他们的外观存在很大的差别。在更高的层级中,特征图就包含了更多高频的低级纹理信息。同理,我们再看一下不同层级中自注意力层的相关性图的可视化效果,如下图所示。在较低的层级中,相似性图和图像的语义布局是对齐的,随着层级不断地加深,能够提取到更多的高频信息。
在这里插入图片描述
  可视化的结果表明了,中层级的特征图保留了局部的语义信息,而相似性图保留了布局和形状信息。作者的想法也非常简单,直接把这些信息注入到目标图像的生成过程中,取代对应位置的特征图和相似性图,从而实现对生成过程的引导。保持生成图像的语义、布局和形状不会发生改变。
  可以看到生成过程中,初始的噪声图 x T ∗ x^*_T xT直接使用原图的扩散结果 X T G X^G_T XTG,对噪声图使用预训练的LDM进行扩散生成,并将第4层特征图 { f t ∗ l } \{f_t^{*l}\} {ftl}和自注意力层的相似性图 A t l A_t^l Atl直接用前面提取得到特征图和相似图替换掉,而文本特征 P P P仍通过交叉注意力机制引入,得到生成的结果 z t − 1 ∗ = ϵ ^ θ ( x t , P , t ; f t 4 , { A t l } ) z_{t-1}^*=\hat{\epsilon}_{\boldsymbol{\theta}}(\boldsymbol{x}_t,P,t;\boldsymbol{f}_t^4,\{\boldsymbol{A}_t^l\}) zt1=ϵ^θ(xt,P,t;ft4,{Atl})为什么选择第4层的特征图而不是选择所有的特征图呢?是因为作者发现,如果全部都用会使得的生成结果保留原有图像的一些纹理和外观信息,只用第4层特征图就能够很好的保留语义信息。此外,如果只注入相似性图而不注入特征图,则会导致引导特征和生成特征之间没有语义关联,从而导致结构上的不对齐,如下图所示
在这里插入图片描述
  在生成过程中,作者使用两个参数 τ f \tau_f τf τ A \tau_A τA分别来控制注入特征图和相似性图的时间步数,当生成步数 t t t大于 τ f \tau_f τf τ A \tau_A τA,才开始注入特征图或相似性图,整个流程如下图所示
在这里插入图片描述
  此外,作者还引入了输入图像的文本描述作为负提示(Negative-prompting),作为无分类器的引导来修正预测的噪声 ϵ \epsilon ϵ ϵ = w ϵ θ ( x t , P , t ) + ( 1 − w ) ϵ ~ \epsilon=w\boldsymbol{\epsilon}_{\theta}(\boldsymbol{x}_{t},P,t)+(1-w)\tilde{\boldsymbol{\epsilon}} ϵ=wϵθ(xt,P,t)+(1w)ϵ~其中 ϵ ~ = α ϵ θ ( x t , ∅ , t ) + ( 1 − α ) ϵ θ ( x t , P n , t ) \tilde{\boldsymbol{\epsilon}}=\alpha\boldsymbol{\epsilon}_\theta(\boldsymbol{x}_t,\varnothing,t)+(1-\alpha)\boldsymbol{\epsilon}_\theta(\boldsymbol{x}_t,P_n,t) ϵ~=αϵθ(xt,,t)+(1α)ϵθ(xt,Pn,t) α \alpha α w w w分别来控制负提示的影响和无分类器引导的影响。但作者通过实验发现,这个改进对于缺少纹理的轮廓图像效果更明显,而对于拥有正常外观的引导图片作用较小。本文的转换效果与其他的图像编辑方法对比如下
在这里插入图片描述


http://www.ppmy.cn/devtools/42150.html

相关文章

【智能算法】清道夫优化算法(CFO)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献5.代码获取 1.背景 2024年,W Zhang受到清道夫自然行为启发,提出了清道夫优化算法(Cleaner Fish Optimization Algorithm, CFO)。 2.算法原理 2.1算法思想 CF…

SVDD(Singing Voice Deepfake Detection,歌声深度伪造检测)挑战2024

随着AI生成的歌声快速进步,现在能够逼真地模仿自然人类的歌声并与乐谱无缝对接,这引起了艺术家和音乐产业的高度关注。歌声与说话声不同,由于其音乐性质和强烈的背景音乐存在,检测伪造的歌声成为了一个特殊的领域。 SVDD挑战是首个…

【Python】语句与众所周知【自我维护版】

各位大佬好 ,这里是阿川的博客 , 祝您变得更强 个人主页:在线OJ的阿川 大佬的支持和鼓励,将是我成长路上最大的动力 阿川水平有限,如有错误,欢迎大佬指正 本篇博客是在之前的基础上进行的维护 目录 条…

2024kali linux上安装java8

1 kali下载Java 8安装包 访问Oracle官网或其他可信的Java下载站点,如华为云的开源镜像站(例如:https://repo.huaweicloud.com/java/jdk/8u202-b08/jdk-8u202-linux-x64.tar.gz)。 确保下载的是与你的Kali Linux系统架构&#xf…

docker无法映射/挂载根目录

docker无法映射(挂载)根目录下的文件夹只能映射家目录 最近想要使用nas-tools做做刮削,电影存在一个机械磁盘里,机械磁盘被挂载到/data1下,发现一个很奇怪的问题,docker只能挂载成功home目录下的文件夹&am…

集成了Gemini的Android Studio,如虎添翼

今天将Android Studio升级到最新版(Jellyfish)。发现在new features中有一条: Code suggestions with Gemini in Android Studio 打开路径为: View > Tool Windows > Gemini 支持多国语言,英文、中文都能正确理解…

高效协同,智慧绘制:革新型流程图工具全解析

流程图,作为一种直观展示工作过程和系统运作的工具,在现代办公和项目管理中发挥着不可或缺的作用。 其优势在于能够清晰、直观地呈现复杂的过程和关系,帮助人们快速理解并掌握关键信息。同时,流程图也广泛应用于各种场景&#xf…

使用可接受gitlab参数的插件配置webhook

jenkins配置 安装Generic Webhook Trigger 配置远程触发令牌 勾选Print post content和Print contributed variables用于打印值 配置gitlab 选择新增webhook 配置webhook http://JENKINS_URL/generic-webhook-trigger/invoke,将JENKINS_URL修改成自己的jenkins地址 先保存…