ControlNet是一种图像生成AI技术,可以在保持输入图像结构不变的情况下,将输入图像转换为另一幅图像,例如可以使用ControlNet来生成通过使用简笔画等3D模型来实现具有指定人物姿势和构图的插图。
在这个过程中ControlNet可以从输入图像中提取轮廓、深度和分割等信息,并根据指令创建图像。因此可以使用ControlNet来将一张人物照片转换为一张美丽的插图,而不会改变人物的结构和特征。
工作原理大致如下:
ControlNet是一种可以控制大型预训练扩散模型以适应额外输入条件的技术。如上图所示,扩散模型的神经网络分为两种:固定权重的模型(locked)和复制权重的可训练模型(trainable copy)。
ControlNet可以通过仅在可训练模型上学习附加条件,即使是小数据集也可以高效且有效地进行学习。此外,为了稳定学习并加快学习速度,ControlNet还可以通过向可训练模型添加一个称为零卷积的块,将卷积层的权重初始化为 0。
ControlNet端的神经网络(Unet)的encoder部分被变成了可训练的副本。在输入前,Unet的decoder部分被替换成了零卷积,并与Stable Diffusion端的Unet(固定权重模型)相连接。