这篇有意思的地方,不是让扩散模型再多认一种提示,而是把“用文字猜构图”变成了“把构图直接画给它看”。扩散模型,就是从一团噪声出发、逐步还原出图像的生成模型。
文生图很擅长回答“画什么”,却不擅长严格执行“东西放在哪”。一句“厨师站在灶台左边,右手举锅”,模型可能把人、手和锅都画出来,位置却未必对。继续改提示词像隔着电话指挥摄影师:语言越长,也不一定能说清轮廓、姿势和镜头空间。若为每种控制方式重训一个生成模型,成本又高,还容易丢掉原模型已经学会的画质与语义。
ControlNet 的转折,是把现成的大扩散模型当作不能碰坏的“主机”,冻结其参数;再复制一部分编码网络,专门学习边缘图、人体骨架、深度图或分割图。这里的深度图,就是用明暗数值记录每个位置离相机多远的二维图。这样,文字仍决定内容和风格,外加的图负责钉住空间结构。
两条网络之间通过“零卷积”连接:这是一层初始权重全为零的小型卷积,训练刚开始时输出也是零,所以新分支不会立刻扰乱原模型;随着学习推进,它才逐步把控制信号送进去。这个看似保守的设计解决了关键矛盾:既借用大模型的生成能力,又让新条件从一个近乎无害的起点加入。作者在 Stable Diffusion 这个开源文生图底座上,展示了轮廓、直线、涂鸦、姿态、深度和语义分区等控制,也能叠加多个条件。论文还做了消融实验,也就是拆掉某个关键设计再看效果如何变化;配合人类评测,结果支持其画面质量与条件跟随能力,但这些是作者报告,并非独立复现。
它进入真实影像工作流后,价值不只是“更听话地画图”。修图软件可以把用户草绘的线条变成受约束的补画;相册可沿人物姿态和场景深度生成风格化版本;影视预演能先锁机位、构图和动作,再试服装、光线与美术风格;电商渲染也能在保留产品轮廓的同时更换环境。论文还展示了:只要网络结构兼容,同一控制分支可以迁移到不同的社区模型,不必为每种画风重新训练。
局限也很清楚。论文展示过含糊形状会被模型自行解释,也专门处理过条件和文字提示的配合,这说明输入并不是一份绝对服从的施工图。它约束的是画面中的空间结构,不等于验证了物体身份、材质或几何真实。与此同时,复制较大的编码分支也会增加训练与运行负担。ControlNet 真正留下的遗产,是一种工程思路:先保护通用生成能力,再给它接上可替换的控制器。