用ControlNet+Inpaint实现stable diffusion模特换衣
https://i-blog.csdnimg.cn/blog_migrate/f4e888f23705abdfe30237a59c45eabf.png在当代计算机视觉领域,稳固扩散(Stable Diffusion)技术已经成为图像修复的告急工具之一。然而,固然稳固扩散可以或许有效地补充图像中的缺失区域,但是对于用户来说,对修复过程进行更精准的控制每每是一项挑战。
为了办理这一题目,我们引入了ControlNet,这是一种专门设计用于在大型预训练文本到图像扩散模子中引入空间调节控制的神经网络架构。通过结合ControlNet与稳固扩散技术,我们实现了一种全新的图像修复方法,使用户可以或许通过各种条件输入来精确控制修复过程,例如Canny边沿、霍夫线、用户涂鸦、人体关键点、分割图、形状法线和深度等。本研究不但证明了ControlNet在小型和大型数据集上的稳健性,还展示了其在图像修复领域的巨大潜力,为更广泛的图像处置惩罚应用提供了全新的大概性。
https://i-blog.csdnimg.cn/blog_migrate/f3447df47352c50e5013ad7e4e41bbee.png
ControlNet 是一种神经网络架构,可以通过空间局部化、特定于任务的图像条件加强大型预训练文本到图像扩散模子。我们首先先容下ControlNet的基本结构,
然后后面描述如何将ControlNet应用到图像扩散模子Stable Diffusion,以及Inpaint的方法
ControlNet 训练与架构详解
ControlNet 的架构
ControlNet 将附加条件注入到神经网络的块中。具体来说,ControlNet 的设计目标是在预训练模子的底子上,添加可训练的副本,以便处置惩罚新的控制信息(如草图、边沿图等)。这种设计可以生存预训练模子的优点,同时加强模子的多样性和灵活性。
焦点概念
[*]网络块:指一组神经层的组合,形成神经网络的一个单位,例如 ResNet 块、Conv-BN-ReLU 块、多头注意力块等。
[*]锁定参数:冻结预训练模子的参数,使其保持稳固,并将其复制为可训练的副本。
[*]零卷积:使用 1×1 卷积层,其权重和偏置初始化为零,确保初始训练时无有害噪声影响。
控制模块的添加
[*]预训练块:
假设F ( ⋅ ; Θ ) F(·;\Theta) F(⋅;Θ)是一个具有参数 Θ \Theta Θ的预训练神经块,将输入特征图 x x x转换为输出特征图 y y y。
y = F ( x ; Θ ) y=F(x;\Theta) y=F(x;Θ)
[*]ControlNet 模块:
锁定原始块的参数 Θ \Theta Θ,并克隆为可训练副本 Θ c \Theta_c Θc
可训练副本继承外部条件向量 c c c作为输入
[*]计算过程:
ControlNet 的完备计算如下:
y c = F ( x ; Θ ) + Z ( F ( x + Z ( c ; Θ z 1 ) ; Z c ) ; Θ z 2 ) y_c = F(x;\Theta)+\Zeta(F(x+\Zeta(c;\Theta_{z1});\Zeta_c);\Theta_{z2}) yc=F(x;Θ)+Z(F(x+Z(c;Θz1);Zc);Θz2)
此中, Z ( ⋅ ; ⋅ ) \Zeta(·;·) Z(⋅;⋅)是零卷积层, Θ z 1 \Theta_{z1} Θz1和 Θ z 2 \Theta _{z2} Θz2是其参数。
[*]零卷积的初始状态:
初始训练步骤中,零卷积的权重和偏置均为零,因此计算效果也是零,使得:
y c = y y_c = y y
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]