ControlNet和LoRA:一个管风格,一个管构图

ControlNet和LoRA根本不冲突,一个管“画成什么样”,一个管“摆成什么构图”,我自己经常两个叠着用。

之前我也分不清这俩,混着用吃了不少亏,后来按功能拆开才理顺:

LoRA是往模型里塞一小撮训练好的权重。它改的是模型本身的倾向,所以人物长相、画风、某个特定角色,都靠它来定。可以理解成给底模补了一门专长,不挂它,模型就认不出那个角色,也画不出那种笔触。

ControlNet不碰模型,而是在生成的时候额外喂一张参考图——线稿、深度图、姿势骨架都行——让画面沿着这张图的结构走。它管的是位置、姿态、轮廓这些“摆在哪”的事。

正因为一个动权重、一个只在生成时加约束,两者分工不重叠。我常用的搭法是一个LoRA定风格,再挂一个ControlNet锁姿势,互不打架。

判断起来也很直观:想让画风变,找LoRA;想让人站成某个动作、或者沿着草图走,上ControlNet。拿不准的时候就问自己一句,我要改的是“长什么样”还是“站在哪”。

这套理解是我自己捋的,可能有不严谨的地方,有更底层的解释欢迎补充。

叠着用这个思路点醒我了,一直以为得二选一

补一句,ControlNet的预处理器选错一样出不来效果