BLIP-Diffusion

论文大意

BLIP2 结合 Stable Diffusion,实现 主题驱动的图像生成与编辑。

分为两个阶段:

1.BLIP2 的multimodal encoder 输出与 text对齐的 visual representation;

2.上述生成的 特征 与 text embedding 共同引导 Stable Diffusion 的生成。

优点:

1.几乎不用 fine-tune

2.生成图像所需的step数很少

3.zero-shot生成

4.可以与 controlnet 或 prompt-to-prompt 结合起来完成特定任务。

摘要

BLIP-Diffusion 可以完成 主题驱动的 多模态控制

怎么体现出来这个 多模态控制的呢?

1.用 BLIP2里面的 multimodal control 输出 visual representation;

2.设计 subject representation learning task 使得 SD使用这个 visual... 来生成 new subject renditions.

比之前方法的优点:

1.zero-shot subject-driven generation;

2.有效的 fine-tune 使得速度提升了20倍;

3.可以结合 ControlNet 或 prompt-to-prompt 来完成特定的任务。

引言

之前的 subject-driven generation,通过把 subject visual 嵌入 text embedding space。缺点是对于每个新的subject,需要上百次fine-tune 步骤。

multimodal control 的定义:

use both images and texts as control input(同时用 图像和文本 作为控制的输入)

模型使用 BLIP2的 vision-language encoder 和 LDM

BLIP2的encoder:使用 subject image 和 category text 作为输入,产生 text-aligned 主题表示,再把这个嵌入到 prompt embedding 引导 SD 的生成。

提出两阶段预训练策略:

1.multimodal representation learning:

使得 BLIP2 基于输入的图像产生 text-aligned visual features。(输入:合成图像、类标签;输出:multimodal embedding 作为 subject representation)

2.subject representation learning task

SD模型基于 输入的visual features产生 novel subject renditions。(上个阶段产生的 subject representation 和 text prompt 结合 来引导生成 target image)

数据集:

出现在不同上下文的 input-target image pairs

论文效果:

1.zero-shot生成,出色的fine-tune 策略;

2.只用了 40-120步就完成了对于特定 subject 的采样,相比于 DreamBooth加速了20倍。

3.继承LDM的能力,无需fine-tune就可以支持各种主题的生成应用。

方法

3.1 使用BLIP2进行多模态表征学习

BLIP2包含两个模块:

①a frozen pre-trained image encoder,提取图像特征

②a multimodal encoder (Q-Former),目的为 图像文本对齐

(注:这里采用 一半的query tokens,输出16个特征)

BLIP2的三个目标函数

ITC, ITG, ITM

3.2 使用SD进行 主题表征学习

两个期待:

1. subject representation 可以很好的结合 text prompt;

2. 保留 扩散模型的能力。

模型架构

如上图所示,把 BLIP2的 multimodal encoer 和 SD的 Text encoder 连接起来。

[subject prompt]:multimodal encoder 输出的 subject visual representation,然后再通过 a feed-forward layer;

[text prompt]

上述两个 text 一同输入到 CLIP text encoder中,引导扩散模型的生成。

prompted context generation

数据集(input-target image pairs),使用合成图像作为输入,真实图像作为 扩散模型的输出。

给定包含主题的图像和文本,然后通过 CLIPSeg进行分割,置信度高的部分作为前景,低的部分作为不确定区域,其余部分作为背景。然后这三个部分组成 trimap。然后通过 alpha 混合将提取的主题合成到随机背景图像上。

3.3 微调 和 可控推理

Subject-specific Fine-tuning and Inference

以 text prompt embedding 和 mean subject embedding 为条件,以输出图像为target image,对扩散模型进行 fine-tune。

使用 ControlNet 进行结构控制

通过 残差连接 把 UNet 和 ControlNet 连接起来。

???

使用 Attention Control 来编辑主题驱动

4 实验

4.1 预训练数据集 和 细节

多模态表征学习

使用 BLIP-2 在 129M个图像文本对下面预训练,其中包含...

使用 BERT来初始化为 Q-Former

主题表征学习

来自 OpenImage-V6 的292K个图像的子集,移除了人类相关的主题。

从网站上获得了 59K个背景图像 来合成输入。

使用 SDv1.5 来作为扩散模型。

batch-size:6,学习率:2e-6,  500K steps,优化器:AdamW

在 16张A100 上面跑了6天。

4.2 实验结果

(1)zero-shot生成

(2)高效微调

(3)结构控制

(4)图像编辑

(5) 风格迁移

(6)主题插值

(7)定性比较

与 TextInversion、DreamBooth、InstructPix2Pix 

 消融实验

1.conduct multimodal representation learning

2.freezing text encoder of DM

3.giving subject text to the multimodal encoder

4.随机主题嵌入下降的预训练有助于更好地保持扩散模型的生成能力,从而有利于结果。我们进一步论证了主体表征学习的效果。

6 Conclusion

1.提出 BLIP-Diffusion,可以完成多模态控制的主题驱动的图像生成;

2.两个阶段的预训练策略;

3.可以和其他的模型连接起来完成更丰富的功能;

4.效果很好,zero-shot能力,以及相比于其他有20倍的加速。

自我感悟:

提供了 多模态控制 图像生成的一种方法。但是感觉过程比较麻烦,又训练这个又训练那个。

它可以结合controlnet、P2P。觉得这个想法还挺好的。

还要再理解的地方:

1.与其他模型的连接;

2.自己模型的训练;

3.代码

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值