1 ControlNet介绍
1.1 ControlNet是什么?
ControlNet是斯坦福大学研究人员开发的Stable Diffusion的扩展,使创作者能够轻松地控制AI图像和视频中的对象。它将根据边缘检测、草图处理或人体姿势等各种条件来控制图像生成。
论坛地址:Adding Conditional Control to Text-to-Image Diffusion Models
ControlNet是一种通过添加额外条件来控制stable diffusion的神经网络结构。它提供了一种增强稳定扩散的方法,在文本到图像生成过程中使用条件输入,如涂鸦、边缘映射、分割映射、pose关键点等。可以让生成的图像将更接近输入图像,这比传统的图像到图像生成方法有了很大的改进。

ControlNet 模型可以在使用小数据集进行训练。然后整合任何预训练的稳定扩散模型来增强模型,来达到微调的目的。
- ControNet 的初始版本带有以下预训练权重。
- Canny edge — 黑色背景上带有白色边缘的单色图像。
- Depth/Shallow areas — 灰度图像,黑色代表深区域,白色代表浅区域。
- Normal map — 法线贴图图像。
- Semantic segmentation map——ADE20K 的分割图像。
- HED edge — 黑色背景上带有白色软边缘的单色图像。
- Scribbles — 黑色背景上带有白色轮廓的手绘单色涂鸦图像。
- OpenPose (姿势关键点)— OpenPose 骨骼图像。
- M-LSD — 仅由黑色背景上的白色直线组成的单色图像。
1.2 ControlNet原理
ControlNet是一种神经网络结构,通过添加额外的条件来控制扩散模型。将网络结构划分为:
- 可训练“trainable”
- 不可训练“locked”
其中可训练的部分针对可控的部分进行学习。而锁定的部分,则保留了stable-diffusion模型的原始数据,因此使用少量数据引导,可以保证能充分学习到前置约束的前提下,同时保留原始扩散模型自身的学习能力

上图的“Zero Convolution”是带有零初始化权重和偏差的1×1卷积。在进行自己的模型训练开始之前,所有零卷积输出都是零,此时模型仍然是原始的Stable Diffusion Model。而在加入自己的训练数据之后,则会对最终数据产生影响,这里的影响,更多是对最终结果的微调,因此不会导致模型出现重大偏离的情况。整体的模型结构如下:

ControlNet是斯坦福大学为StableDiffusion开发的扩展,允许用户通过边缘检测、草图或人体姿势等条件来控制AI生成的图像和视频。该模型通过添加额外条件控制扩散模型,支持使用少量数据进行微调,并提供了多种预训练权重选项。用户可以通过运行不同的脚本来体验和展示ControlNet的效果,如canny2image、pose2image等。
最低0.47元/天 解锁文章
3132






