Stable Diffusion-inpaint(mask补全)是怎么做的?

AIGC专栏4------Stable Diffusion原理解析-inpaint修复图片为例_diffusion inpaint-CSDN博客

如果我们必须训练一个inpaint模型才能对当前的模型进行inpaint,那就太麻烦了,有没有什么方法可以不需要训练就能inpaint呢?

Stable Diffusion就是一个生成模型,如果我们可以做到让Stable Diffusion只生成指定区域,并且在生成指定区域的时候参考其它区域,那么它自身便是一个天然的inpaint模型。

如何做到这一点呢?我们需要结合img2img方法,我们首先考虑inpaint的两个输入:一个是原图,另外一个是mask图。

在img2img中,存在一个denoise参数,假设我们设置denoise数值为0.8,总步数为20步,那么我们会对输入图片进行0.8x20次的加噪声。如果我们可以在这个加噪声图片的基础上进行重建,那么网络必然会考虑原始图片的特征。(意思就是不让给定输入的图像完全加噪,而是加噪成还是含有一定原始图像特征的噪声图像,这样就对应了图生图的原理,利用到了给定图像的特征)。

具体步骤:

  • 将原图x0映射到VAE隐空间,得到img_orig;

  • 初始化随机噪声图像img(也可以使用img_orig完全加噪后的噪声);

  • 开始循环:

    1. 对于每一次时间步,根据时间步生成img_orig对应的加噪图像特征;

    2. 一个是基于上个时间步降噪后得到的img,一个是基于原图得到的加噪img_orig。通过mask将两者融合:img=img_orig∗mask+(1.0−mask)∗img 。即,将原图中的非mask区域和噪声图中的mask区域进行融合,得到新的噪声图。

    3. 然后继续去噪声直到结束。

由于该方法不需要训练新模型,并且重建效果也不错,所以该方法比较通用

相关推荐
农夫山泉2号9 小时前
【个人开源】——从零开始在高通手机上部署sd(二)
stable diffusion·智能手机·sd·高通·qnn
后知后觉16 小时前
windows 安装 stable diffusion
stable diffusion
农夫山泉2号1 天前
【个人开源】——从零开始在高通手机上部署sd(一)
stable diffusion·智能手机·sd·高通·qnn
AIGC安琪2 天前
【Stable Diffusion】SD迎来动画革命,AnimateDiff快速出图
人工智能·网络协议·tcp/ip·stable diffusion·aigc
Allen-Steven4 天前
《Stable Diffusion绘画完全指南:从入门到精通的Prompt设计艺术》-配套代码示例
人工智能·pytorch·深度学习·stable diffusion·prompt·checkpoint
普通网友5 天前
自动化办公更简单了!新版python-office,有哪些更新?
运维·人工智能·python·stable diffusion·数据挖掘·自动化·midjourney
燃灯工作室6 天前
扩散模型中的马尔可夫链设计演进:从DDPM到Stable Diffusion全解析
stable diffusion
灵魂画师向阳7 天前
万字长文破解 AI 图片生成算法-Stable diffusion
人工智能·算法·计算机视觉·ai作画·stable diffusion·美女
普通网友7 天前
文生图与图生图两款AI工具Midjourney(MJ)和Stable Diffusion(SD)对比
数据库·人工智能·stable diffusion·音视频·midjourney·媒体
AlbertS7 天前
Ubuntu20.04部署stable-diffusion-webui环境小记
python·ai·stable diffusion·nvidia·venv