BrushNet: A Plug-and-Play Image Inpainting Model with Decomposed Dual-Branch Diffusion
Introduction
ECCV 2024.
提出了一个双分支的扩散inpainting模型,同时改模块可以即插即用用到其他微调的模型中。
Methods
首先对比了其他的两种inpainting思路。
第一种是直接微调unet对mask区域进行inpainting,然后再与原先未mask的区域拼合。但是指出这样边缘会很割裂,同时没有学习上下文语义信息
第二种是将mask,noise和image拼在一起,进行去噪过程。这种又可以分为两种,一种为dedicated inpainting models。这种受prompt的影响比较大,因为在早期prompt就会和latent information进行计算。另一种是通过controlnet微调,这种方法可能更能够保留结构相似度,而不是像素对应。
本文提出的pipeline如上图所示,从预训练unet中copy权重,然后进行微调,对应的层之间初始化为zero convolution,并且text embedding只参与去噪的过程。
同时为了缓解inpainting不在同一图层的情况,提出了一个后处理方式,即对mask图区域进行一次高斯模糊,让过渡更平滑。
由于模型并没有更改预训练unet的参数,所以文中称其为即插即用。同时在通过1*1卷积与预训练unet结合时,可以调整参数改变保留原始未mask区域的程度,具有一定的灵活性。
Experiments
提出了BrushBench用来评估,提出了BrushData用于训练
不同模型的对比:
即插即用效果:
灵活控制:
BrushNet: A Plug-and-Play Image Inpainting Model with Decomposed Dual-Branch Diffusion
https://dreamerland.cn/2024/10/28/图像编辑/BrushNet/