卷4 · 生成模型
4.6 可控生成:ControlNet、IP-Adapter 与风格 LoRA
展开本章目录与同卷章节
1. 问题:prompt 是粗粒度遥控器2. 风格 LoRA:美术方向的第一件兵器3. ControlNet:让结构听你的4. IP-Adapter 与图像编辑的现代化5. 自测题6. 动手作业(美术方向试金石)7. 延伸资源同卷章节4.1 生成模型地图:五大家族一张图4.2 DDPM 原理与从零实现4.3 采样器与 Classifier-Free Guidance4.4 Latent Diffusion 与 Stable Diffusion:生成模型工程学4.5 DiT 与 Flow Matching:生成模型的现代化4.6 可控生成:ControlNet、IP-Adapter 与风格 LoRA4.7 视频生成:Sora 范式与开源阵营4.8 统一模型之争:Chameleon、Transfusion、Janus4.9 前沿瞭望:扩散语言模型本章目标:掌握”prompt 之外的控制手段”——空间控制(ControlNet)、参考控制(IP-Adapter)、风格控制(LoRA),并落到美术学工作流。这是卷4 与你导师方向连接最紧的一章。学完标准:能说清三种控制各自”控制什么、怎么注入”,并跑通至少一种的微调。
1. 问题:prompt 是粗粒度遥控器
4.3 的 CFG 控制”画什么”,但对构图、姿态、线稿、颜色分布这些形式层(8.1)的表达力很弱——文字说”三分法构图”模型多半不理你。三类更强控制,对应三种信息注入位置:
| 手段 | 控制什么 | 注入位置 | 成本 |
|---|---|---|---|
| LoRA | 风格/概念/人物 | 微调权重本体(2.6 同款技术) | 数十张图即可 |
| ControlNet | 空间结构(边缘/深度/姿态/线稿) | 额外旁路编码器,逐层注入 | 需成对数据训练 |
| IP-Adapter | 参考图的内容/风格/身份 | 文本 K/V 之外的独立图像 K/V | 轻量训练 |
2. 风格 LoRA:美术方向的第一件兵器
2.6 的 LoRA 原理原样搬到扩散模型(挂 U-Net 或 DiT 的 attention 投影),差异只在数据和验收:
- 数据:某画家的 30–200 张高清图(WikiArt 按作者抓取),统一裁剪分辨率;caption 要小心——全部用”by artist XXX”式的占位 caption,把风格”锁”进触发词,防止画风和内容语义纠缠;
- 训练:SD1.5/SDXL 上 rank 8–32、lr 1e-4、2000–5000 步(diffusers 的
train_text_to_image_lora或 kohya 脚本);4090 上一小时量级; - 验收(美术方向的特色):不只看”像不像”,用 8.1 的语言分层验收——色相分布是否复现(算直方图对比)、笔触肌理是否在、明暗对比性格是否保持。“风格复现度”本身就能做成量化评测——这是论文点(8.7 的伏笔);
- 伦理红线:在世艺术家风格 LoRA 有权利争议(8.1 §9),研究用已故大师+公开数据集,论文里写清数据来源与用途限定。
3. ControlNet:让结构听你的
设计:把预训练模型的一部分(SD U-Net 的下采样/中间块)复制一份作为可训练旁路;控制信号(Canny 边缘、深度图、人体姿态、线稿)过这份副本,逐层” injecting”回主干——两处零卷积(zero-conv)连接(1×1 卷积、权重与偏置初始化为 0):训练起点旁路输出恒为零,主干行为与原模型完全一致。“零初始化哲学”第四次出现(Flamingo 门控/LoRA B 置零/DiT adaLN-Zero/ControlNet zero-conv)——这个模式值得你写进自己的科研直觉:给预训练模型加任何新能力,都从”不干扰原行为”的起点出发。
训练数据:成对(控制图, 图文对)——用现成大模型的深度/边缘估计从海量图文对”自动制造”控制图(弱监督自举,5 百万对级别)。思考题:这本质是”用旧模型给新模型造监督”——和你将来蒸馏/数据引擎的思路同源。
美术工作流:线稿上色(lineart ControlNet + 风格 LoRA 叠加——控制来自画师线稿、风格来自 LoRA,两者正交可叠加)、构图迁移(depth)、名画构图重绘(pose+composition)。叠用规则:多个 ControlNet 权重配比(controlnet_conditioning_scale 0.5–1.0)调平衡。
4. IP-Adapter 与图像编辑的现代化
- IP-Adapter:给 U-Net 的 cross-attention 解耦出第二组 K/V 投影专接图像特征(CLIP image encoder 编码参考图)——文本说”画什么”,参考图说”长什么样/什么风格”。训练只动这组新投影(~22M 参数), Again 是”旁路+轻量”模式;
- 趋势(2025–2026):控制正在从”显式地图”走向”指令编辑”——FLUX Kontext、Qwen-Image-Edit、StepOCR 类模型用一句话完成”把背景换成黄昏/保持人物改画风”,本质是多图输入的 DiT(参考图作为条件 token 进 MMDiT)。但美术工作流里显式控制(线稿/色块/深度)并未过时——它给的精确性是语言给不了的;你的研究空间恰在”指令编辑的美术专业版”(比如”按宋代院体规范改线”)。
5. 自测题
- 三种控制手段分别控制什么层?(风格概念→权重;空间结构→旁路逐层注入;参考内容→解耦图像 K/V)
- zero-conv 的作用?哪三次前例共享此哲学?(训练起点旁路为零、不扰动原模型;Flamingo/LoRA/DiT——“零初始化哲学”)
- 风格 LoRA 的 caption 为什么要用占位触发词?(把风格锁进触发词,防止与内容语义纠缠——“style leakage”防治)
- ControlNet 的控制图哪来的?(预训练估计器从图文对自动制造——弱监督自举)
- IP-Adapter “解耦”的是什么?(文本 K/V 与图像 K/V 分开投影,正交可控可加权)
- 指令编辑模型兴起后,显式控制在美术场景为何仍不可替代?(线稿/色块/构图的精确性语言无法表达——专业创作需要像素级控制)
6. 动手作业(美术方向试金石)
- 从 WikiArt 取莫奈(或你与导师商定画家)80 张,训一个风格 LoRA;生成 20 张图,与真迹对比:色相直方图 JS 散度 + 主观打分两张表——你的第一个”风格复现度量化”实验;
- 用 lineart ControlNet:把一幅素描线稿分别用”莫奈 LoRA”和”浮世绘 LoRA”上色,同构图不同风格——叠用系统跑通;
- IP-Adapter:拿一幅真迹当参考,生成同风格新题材,评估”风格迁移 vs 内容泄漏”的边界(写 200 字);
- 全部实验记录进 repo,起名
art-control-suite——8.7(艺术基准构建)的雏形。
7. 延伸资源
- ControlNet 论文(Zhang et al., 2023)——zero-conv 与自举数据两处精华
- IP-Adapter 论文——解耦 cross-attention
- diffusers 文档 ControlNet/LoRA 训练页——工程直达
