[论文阅读] General Image-to-Image Translation with One-Shot Image Guidance

速览

WHY

现存方法缺乏保留内容或有效翻译视觉概念的能力,因此无法将想要的视觉概念整合到现有的图像中。
传统的基于GAN的方法:存在泛化性差的问题,即在一个数据集上训练的模型无法适用于另一个数据集,因此在通用的I2I场景下无法工作
基于扩散模型的方法:尝试从图像中提取所需的视觉信息,但因为他们无法保留源图像中的内容,因此无法适应于通用的I2I
为了保留源图像中的内容,提出DDIM反演法。然而该方法以文本为条件,无法理解参考图像中的视觉概念

针对这些问题,该文提出一种视觉概念转换器(VCT)的新框架,该框架具有仅通过一张参考图即可保留源图像内容和翻译视觉概念的能力

WHAT

个人理解是改进版的SD,优化了文本条件的生成与去噪过程。
包括两个过程:CCI和CCF。

HOW

CCI:通过PTI和MCI来分别提取源图像文字嵌入与参考图文字嵌入
CCF:采用双分支去噪结构将提取的信息聚合以获得目标图像
优势:仅给定一个参考图,VCT就可以完成一系列通用的I2I任务并取得出色的结果

方法

整体框架

1
VCT整体框架如图
其过程为:源图像使用DDIM逆向生成初始噪点图Xt,Xt进入双分支去噪网络同时去噪。Content Matching branch主要负责在文本条件(Vsrc和V∅)的参与下重构源图像,并提取注意力映射以通过注意力控制机制来引导主要过程。Main branch则负责收集所有信息,在文本条件(Vsrc和Vref)的参与下生成最终目标图像。其中,两条分支的文本条件通过域融合文字嵌入得到,而文字嵌入通过CCI(PTI和MCI)过程得到。

CCI——文字嵌入的来源

源图像文字嵌入的获取

作者使用Pivot Turning Inversion(下文简称PTI)技术获取了参考图像的文字信息。

关于PTI技术

相比训练一个新的编码器的方法,PTI通过微调生成器来使其适应输入图像。其主要流程简述如下:
1:对于一幅或一组真实图像,先利用反演技术将其投影到潜空间得到lantent code: Wp。在这个阶段,生成器保持冻结,训练编码器。
2:将Wp视为锚点,微调预训练的生成器使其能够生成Wp对应的高保真图像。在这个阶段编码器保持冻结,训练生成器。

这一整个过程可以看作是先投飞镖Wp到靶子(潜空间)上,再移动靶子(优化生成器)让飞镖到中间
111

如图,左边是第一步后的结果。我们可以看出失真和可编辑性的权衡:A位于可编辑性更强的区域但不像真实图像,而 B 位于可编辑性较差的地方但更像真实图像。 右边为经过 PTI 之后的结果 (优化生成器后)。其中 C 既保持了 A 的编辑能力,也实现了 B 相似的与真实图像的相似性。

我们可以将 B 看作是我们投出去的 ‘飞镖’,而 A 为靶子的中心点。而 PTI 过程就可以看作为将作为背景的靶子整体移动,使 ‘飞镖’ 移动到靶心。很显然这个过程可以通过优化实现。

参考图像文字嵌入的获取

作者使用了改进后的语义反转技术(Textual Inversion,下文简称TI),通过生成概念嵌入来表示复杂的视觉概念

关于TI
在TI技术出现之前,我们无法获取拥有我们想要的特征的图片。例如,我们想生成一张“我的布娃娃在火星上坐着”的图片,Diffusion是无法做到的,因为它不知道“我的布娃娃”是什么样子。因此我们就需要训练模型,给模型几张图片让他学会这个特殊的目标。这一技术就是TI

TI是如何做的呢?
这里的重点是模型不知道"我的布娃娃"这个token对应的是什么样的图像特征,所以我们给新的token设置特殊符号S*并给它新增一个token id。其他token对应的token embedding+都固定住,后面所有网络的所有参数也都固定住,只训练这个S*对应的token embedding,就ok了。如图

另外,一般情况下,为了加速训练,这个新增的toekn embedding 可以初始化为跟S*最接近的token对应的embedding,比如S*是"我的布娃娃",S*对应的embedding就初始化为"布娃娃"对应的embedding
000

DreamArtist
DreamArtist改进了TI,从单张图像中学习到成对的正负多概念嵌入,并提出了细节增强的重建约束

在DreamArtist上的改进
作者采用了与DreamArtist相似的策略,但是加入了两个改进:

  • 使用正多概念嵌入来学习参考文本嵌入
    在VCT中,负嵌入与源嵌入冲突,为了最大可能的保留源图像信息,仅使用正多概念嵌入

  • 在隐空间中实现重构约束
    DreamArtist 在图像空间中应用重构约束,一方面,由于解码器内部的梯度反向传播,在图像空间中的优化需要消耗巨大的资源。另一方面,估计Zt-1和Z0之间存在差距,特别是在去噪过程的早期阶段。因此,本方法在隐空间中实现重构约束。

CCF

文本条件的获取———域融合 ϵ Space Fusion

2

对于两个不同的文本嵌入 Vsrc 和 Vref,他们分别产生两种不同的噪声预测 ϵsrc=ϵθ(zt,t,vsrc)和 ϵref=ϵθ(zt,t,vref)。

根据分类器引导和无分类器引导的结论,每个扩散步骤中的噪声预测可以看作是为分数估计函数ϵθ(zt,t,vsrc)≈−σt∇ztlogp(zt|v)

独立的文本嵌入Vsrc和Vref可以在ϵ空间中通过分配权重进行融合,生成包含具有两张图的某些属性的图像。
公式:˜ϵθ(zt,t,vsrc,vref)=w⋅ϵsrc+(1−w)⋅ϵref)
其中,w是平衡两项的超参数权重。

注意,域空间有两个文字嵌入参数哦~

去噪———双分支去噪结构 Dual stream denoising architecture

3
关于DDIM Inversion
初始噪声Xt由DDIM Inversion对源图像进行反演得到。
DDIM反向推理过程是由目标图像推理生成得到噪点图。也就是说,反向推理过程中我们已知图像的结构和信息去推理获得噪点图

关于Content Matching branch
内容匹配分支是一个去噪过程,最后重构源图像
在每一个denoising step t,提取文字嵌入和注意力映射,可以得到保留源图像的文字嵌入(反向过程,后文会讲)和图像结构,为后续main branch生成目标图像做准备

关于Main branch
与Content Matching branch的流程类似,只是文本条件有所不同

关于backpropagation反向传播
通过计算梯度来更新神经网络参数,使得模型在训练数据上的预测结果更接近真实

关于注意力机制
使用Soft Attention——一种能跟随神经网络模型在梯度后向传播得到优化的注意力机制,会考虑所有源信息

其中,软注意力机制采取类似于分段函数的形式,在小于T时间步内采用M*映射,在大于T时间步内采用Mt映射
222


实验

定性实验

在通用I2I方面:

  • 同一组源图像与参考图像,不同的方法比较:
    基于GAN方法的TuiGAN、PhotoWCT
    基于扩散模型的SD、TI、Ptp
    9

  • VCT方法在不同组源图像与参考图像下的表现
    此外,为了评估所提出的VCT的强概念翻译能力,保持内容图像固定,并改变不同的参考图像。不同参考图像的生成结果表明了良好的内容保留和概念翻译能力。
    8

  • 与一次性基准Paint-by-example和ControlNet比较:
    7

在图像风格迁移方面:

  • 与不同艺术风格下的SOTA方法进行比较:
    基于GAN的TuiGAN、PhotoWCT、ArtFlow
    基于扩散方法的SD、TI、Ptp
    6

  • VCT方法在不同组源图像和参考图像下的表现以及相反实验(值得学习)
    5

定量实验

遵循StyTR2的相同设置,从不同翻译任务中随机选择800个生成图像进行定量比较。将提出的方案与最先进的方法Artflow、CAST、InST、StyleFormer和StyTR2进行了对比。
使用Learned Perceptual Image Patch Similarity (LPIPS)来评估输出与源图像之间的差异,以及CLIP分数来评估输出与参考图像之间的差异。结果显示VCT方法可以达到最低的LPIPS值并且性能最佳,获得最高CLIP分数
11

消融实验

12

  • 通过移除MCI,我们使用单词“狗”来生成我们的管道中参考嵌入vref,在此过程中生成的结果不是参考图像中的特定的狗。
  • 通过移除PTI,内容匹配分支无法重建内容图像,因为DDIM采样轨迹不一致。
  • 通过移除AC,结果不能保留内容图像的结构。

所以,VCT可以通过使用所有提出的组件来获得最佳的生成输出。这更好地保留了内容图像的结构和语义布局,并且符合参考图像。

我的总结

该论文的实验方法和思路特别好,值得学习

  1. 定性实验
    在A方面的比较:
    同组图像不同方法
    目标方法在不同图像下的表现
    与基准的比较
    相反实验
    在B方面的比较:
    ......

  2. 定性试验

  3. 消融实验
    注意要说明缺少哪一种方法会有什么影响,每一条说明之后最后再来个总结——所以我们的实验方法缺一不可。
    要有说服力!!

写在后面

原文:https://arxiv.org/abs/2307.14352
GitHub:https://github.com/CrystalNeuro/visual-concept-translator
关键词:I2I
阅读理由:了解过程、学习思路、积累实验方法
前置知识:SD、DDIM Inversion、PTI多概念反转multi-concept inversion
配套思维导图:https://mubu.com/app/edit/home/2OSvO51kOg
参考:PTI

posted @   Chunleiii  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤
点击右上角即可分享
微信分享提示