|
|
@@ -1,398 +0,0 @@
|
|
|
-# ComfyUI 画中画分阶段生成工作流
|
|
|
-
|
|
|
-**知识 ID**: knowledge-20260411-155313-comfyinpaint
|
|
|
-**类型**: strategy
|
|
|
-**评分**: ⭐⭐⭐⭐⭐ (5/5)
|
|
|
-**来源**: ComfyUI 社区/YouTube 教程
|
|
|
-**领域**: AI 图像生成
|
|
|
-**工作流类型**: 画中画分阶段生成
|
|
|
-**核心工具**: ControlNet, IP-Adapter, Inpainting, Z-Image-Turbo
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 核心设计理念
|
|
|
-
|
|
|
-### 分阶段生成 + 双控架构
|
|
|
-
|
|
|
-**分阶段流程**:
|
|
|
-```
|
|
|
-背景生成 → 画中画区域生成 → 风格统一 → 细节优化
|
|
|
-```
|
|
|
-
|
|
|
-**双控架构**:
|
|
|
-- **ControlNet**: 锁结构(几何/深度/姿态控制)
|
|
|
-- **IP-Adapter**: 注入风格(风格/纹理/色彩迁移)
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 工作流总览
|
|
|
-
|
|
|
-```
|
|
|
-┌─────────────────────────────────────────────────────────────┐
|
|
|
-│ 阶段 1: 背景/外框生成 │
|
|
|
-│ 输入:背景提示词 + 参考图 → ControlNet 控制 → 生成背景 │
|
|
|
-└─────────────────────────────────────────────────────────────┘
|
|
|
- ↓
|
|
|
-┌─────────────────────────────────────────────────────────────┐
|
|
|
-│ 阶段 2: 画中画区域生成 (Inpainting) │
|
|
|
-│ 输入:背景图 + 蒙版 + 画中画提示词 → 局部重绘 → 生成内容 │
|
|
|
-└─────────────────────────────────────────────────────────────┘
|
|
|
- ↓
|
|
|
-┌─────────────────────────────────────────────────────────────┐
|
|
|
-│ 阶段 3: 风格统一 (IP-Adapter) │
|
|
|
-│ 输入:合成图 + 风格参考图 → IP-Adapter 注入 → 风格融合 │
|
|
|
-└─────────────────────────────────────────────────────────────┘
|
|
|
- ↓
|
|
|
-┌─────────────────────────────────────────────────────────────┐
|
|
|
-│ 阶段 4: 细节优化 (ControlNet + Detailer) │
|
|
|
-│ 输入:风格化图 → ControlNet 微调 → FaceDetailer → 最终输出 │
|
|
|
-└─────────────────────────────────────────────────────────────┘
|
|
|
-```
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 阶段 1:背景/外框生成
|
|
|
-
|
|
|
-### 节点配置
|
|
|
-
|
|
|
-| 节点类型 | 节点名称 | 参数设置 |
|
|
|
-|----------|----------|----------|
|
|
|
-| Checkpoint | SDXL/Flux 主模型 | `albedobaseXL_v21.safetensors` 或 `flux1-dev.safetensors` |
|
|
|
-| ControlNet | Apply Advanced ControlNet | 权重 0.6-0.75 |
|
|
|
-| ControlNet 模型 | ControlNetLoader | `control_sdxl_canny.safetensors` 或 `depth` |
|
|
|
-| 预处理器 | AIO Aux Preprocessor | Canny/Depth/MLSD(根据场景选择) |
|
|
|
-| CLIP Text Encode | 背景提示词 | 描述整体场景氛围 |
|
|
|
-| KSampler | 采样器 | 20-30 步,CFG 7-8,DPM++ 2M Karras |
|
|
|
-
|
|
|
-### 操作步骤
|
|
|
-
|
|
|
-1. **加载背景参考图**(可选)
|
|
|
- - 使用 `Load Image` 节点加载参考图
|
|
|
- - 通过 `AIO Aux Preprocessor` 提取结构信息
|
|
|
-
|
|
|
-2. **设置 ControlNet 控制**
|
|
|
- ```
|
|
|
- 参考图 → 预处理器 → ControlNet 模型 → Apply Advanced ControlNet
|
|
|
- ```
|
|
|
- - 控制权重:`0.6-0.75`
|
|
|
- - 控制模式:`Balanced` 或 `ControlNet is more important`
|
|
|
- - Starting/Ending Step:`0.0-1.0`(全程控制)
|
|
|
-
|
|
|
-3. **编写背景提示词**
|
|
|
- ```
|
|
|
- A cozy living room with large empty wall frame, warm lighting,
|
|
|
- modern minimalist interior, soft shadows, high quality photography
|
|
|
- ```
|
|
|
-
|
|
|
-4. **生成背景图**
|
|
|
- - 分辨率:`1024x1024` 或 `1280x720`(根据最终输出设定)
|
|
|
- - 批次数:1(单张背景)
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 阶段 2:画中画区域生成(Inpainting)
|
|
|
-
|
|
|
-### 三种实现方案对比
|
|
|
-
|
|
|
-| 方案 | 核心节点 | 适用场景 | 优点 | 缺点 |
|
|
|
-|------|----------|----------|------|------|
|
|
|
-| **A: 原生节点法** | Inpaint Model Conditioning | 理解底层逻辑 | 学习价值高 | 连线复杂 |
|
|
|
-| **B: KJ Nodes 简化版** ⭐ | KJ Nodes: Inpaint Node | 生产环境 | 工作流简洁 | 需安装自定义节点 |
|
|
|
-| **C: SAM 3 智能重绘** | SAM 3 + Grounding DINO | 自动化场景 | 无需手动蒙版 | 依赖 AI 识别准确度 |
|
|
|
-
|
|
|
-### 方案 A:原生节点法
|
|
|
-
|
|
|
-**节点连接**:
|
|
|
-```
|
|
|
-背景图 → VAE Encode → Inpaint Model Conditioning → KSampler → VAE Decode
|
|
|
-蒙版图 ↗
|
|
|
-```
|
|
|
-
|
|
|
-**关键参数**:
|
|
|
-- `denoise`: `0.6-0.8`(重绘强度)
|
|
|
-- `mask_expand`: `10-20`(蒙版扩展像素)
|
|
|
-- 模糊蒙版边缘:让重绘更融合
|
|
|
-
|
|
|
-### 方案 B:KJ Nodes 简化版(推荐)
|
|
|
-
|
|
|
-**核心节点**:
|
|
|
-- `KJ Nodes: Inpaint Node`: 简化重绘流程
|
|
|
-- `KJ Nodes: Mask Editor`: 可视化蒙版编辑
|
|
|
-
|
|
|
-**优势**:工作流连线简洁,适合生产环境
|
|
|
-
|
|
|
-### 方案 C:SAM 3 智能重绘
|
|
|
-
|
|
|
-**核心节点**:
|
|
|
-- `SAM 3 (Segment Anything)`: 自动识别目标区域
|
|
|
-- `Grounding DINO`: 文本引导分割
|
|
|
-
|
|
|
-**操作步骤**:
|
|
|
-1. 输入文本指令:`"the empty frame on the wall"`
|
|
|
-2. SAM 3 自动识别并生成蒙版
|
|
|
-3. 自动执行局部重绘
|
|
|
-
|
|
|
-### 关键参数设置
|
|
|
-
|
|
|
-| 参数 | 推荐值 | 说明 |
|
|
|
-|------|--------|------|
|
|
|
-| denoise | 0.65-0.75 | 平衡原图保留与重绘效果 |
|
|
|
-| mask_expand | 15-25 | 确保边缘融合自然 |
|
|
|
-| CFG | 7-8 | 避免过拟合 |
|
|
|
-| Steps | 25-30 | 保证细节质量 |
|
|
|
-
|
|
|
-### 画中画提示词示例
|
|
|
-
|
|
|
-```
|
|
|
-A beautiful landscape painting inside the frame,
|
|
|
-mountain lake at sunset, golden hour lighting,
|
|
|
-oil painting style, detailed brushstrokes, masterpiece
|
|
|
-```
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 阶段 3:风格统一(IP-Adapter)
|
|
|
-
|
|
|
-### 核心原理
|
|
|
-
|
|
|
-> **IP-Adapter 负责风格注入,ControlNet 负责结构保持**
|
|
|
-
|
|
|
-⚠️ **重要**: IP-Adapter 单独使用易结构崩坏、手部细节失控,必须配合 ControlNet 使用
|
|
|
-
|
|
|
-### 节点配置
|
|
|
-
|
|
|
-| 节点类型 | 节点名称 | 参数设置 |
|
|
|
-|----------|----------|----------|
|
|
|
-| IPAdapter | IPAdapter Plus | `PLUS(high strength)` 预设 |
|
|
|
-| CLIP Vision | CLIP-ViT-H-14-laion2B-s32B | 风格编码模型 |
|
|
|
-| IPAdapter 权重 | 权重值 | `0.6-0.85` |
|
|
|
-| 合并嵌入组 | concat / average | `concat`(冲突感)或 `norm average`(柔和) |
|
|
|
-| 权重类型 | style transfer | 风格迁移模式 |
|
|
|
-
|
|
|
-### 工作流连接
|
|
|
-
|
|
|
-```
|
|
|
-风格参考图 → IPAdapter Encode → IPAdapter Apply → KSampler
|
|
|
-合成图 → VAE Encode ↗
|
|
|
-```
|
|
|
-
|
|
|
-### 多风格融合
|
|
|
-
|
|
|
-```
|
|
|
-风格图 A → IPAdapter Encode (权重 1.20) ┐
|
|
|
-风格图 B → IPAdapter Encode (权重 1.00) → 合并嵌入组 (concat) → Apply
|
|
|
-```
|
|
|
-
|
|
|
-### 关键参数推荐
|
|
|
-
|
|
|
-| 场景 | IPAdapter 权重 | 合并方式 | 权重类型 |
|
|
|
-|------|---------------|----------|----------|
|
|
|
-| 轻微风格渗透 | 0.4-0.6 | average | style transfer |
|
|
|
-| 平衡融合 | 0.65-0.75 | norm average | style transfer |
|
|
|
-| 强烈风格化 | 0.8-0.85 | concat | style transfer |
|
|
|
-| 多风格融合 | 1.0-1.2 (主) + 0.8 (辅) | concat | style transfer |
|
|
|
-
|
|
|
-### 避坑指南
|
|
|
-
|
|
|
-⚠️ **权重过高** (> 0.85) 易导致画面紊乱
|
|
|
-✅ **解决方案**: 使用 `fade` 类型 + 噪波强度 0.6 + 模糊 2
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 阶段 4:细节优化
|
|
|
-
|
|
|
-### 4.1 ControlNet 微调
|
|
|
-
|
|
|
-**目的**: 在风格化后保持关键结构
|
|
|
-
|
|
|
-| ControlNet 类型 | 权重 | 适用场景 |
|
|
|
-|----------------|------|----------|
|
|
|
-| Canny | 0.4-0.6 | 保持边缘清晰 |
|
|
|
-| Depth | 0.5-0.7 | 保持空间层次 |
|
|
|
-| Tile | 0.6-0.8 | 细节增强/放大 |
|
|
|
-
|
|
|
-**配置技巧**:
|
|
|
-- 使用较低的权重(0.4-0.6)进行微调
|
|
|
-- Starting Step 设为 `0.3-0.5`(后期介入)
|
|
|
-- 避免过度控制导致风格丢失
|
|
|
-
|
|
|
-### 4.2 FaceDetailer / HandDetailer
|
|
|
-
|
|
|
-**目的**: 修复面部/手部细节
|
|
|
-
|
|
|
-| 节点 | 模型 | 参数 |
|
|
|
-|------|------|------|
|
|
|
-| FaceDetailer | `face_yolov8m.pt` | denoise 0.2-0.5 |
|
|
|
-| HandDetailer | `hand_yolov8s.pt` | denoise 0.3-0.6 |
|
|
|
-| SAM | `sam_vit_b_01ec64.pth` | 精准检测 |
|
|
|
-
|
|
|
-**工作流程**:
|
|
|
-```
|
|
|
-风格化图 → 人脸/手部检测 → 局部放大 → 重绘修复 → 合成输出
|
|
|
-```
|
|
|
-
|
|
|
-### 4.3 高清放大(可选)
|
|
|
-
|
|
|
-| 节点 | 模型 | 用途 |
|
|
|
-|------|------|------|
|
|
|
-| Ultimate SD Upscale | `4x-UltraSharp.pth` | 4 倍高清放大 |
|
|
|
-| Tile ControlNet | `control_v11f1e_sd15_tile` | 放大时保持细节 |
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 完整参数汇总表
|
|
|
-
|
|
|
-### 阶段 1:背景生成
|
|
|
-| 参数 | 推荐值 |
|
|
|
-|------|--------|
|
|
|
-| 模型 | SDXL / Flux |
|
|
|
-| ControlNet 权重 | 0.6-0.75 |
|
|
|
-| Steps | 20-25 |
|
|
|
-| CFG | 7-8 |
|
|
|
-| 分辨率 | 1024x1024 |
|
|
|
-
|
|
|
-### 阶段 2:Inpainting
|
|
|
-| 参数 | 推荐值 |
|
|
|
-|------|--------|
|
|
|
-| denoise | 0.65-0.75 |
|
|
|
-| mask_expand | 15-25 |
|
|
|
-| Steps | 25-30 |
|
|
|
-| CFG | 7-8 |
|
|
|
-
|
|
|
-### 阶段 3:IP-Adapter
|
|
|
-| 参数 | 推荐值 |
|
|
|
-|------|--------|
|
|
|
-| 权重 | 0.65-0.80 |
|
|
|
-| 预设 | PLUS(high strength) |
|
|
|
-| CLIP Vision | CLIP-ViT-H-14 |
|
|
|
-| 合并方式 | norm average |
|
|
|
-
|
|
|
-### 阶段 4:细节优化
|
|
|
-| 参数 | 推荐值 |
|
|
|
-|------|--------|
|
|
|
-| ControlNet 微调权重 | 0.4-0.6 |
|
|
|
-| FaceDetailer denoise | 0.2-0.5 |
|
|
|
-| Upscale 倍数 | 2x-4x |
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 必备自定义节点清单
|
|
|
-
|
|
|
-通过 **ComfyUI Manager** 安装:
|
|
|
-
|
|
|
-```bash
|
|
|
-# ControlNet 相关
|
|
|
-- ComfyUI's ControlNet Auxiliary Preprocessors
|
|
|
-- ComfyUI-Advanced-ControlNet
|
|
|
-
|
|
|
-# IPAdapter 相关
|
|
|
-- IPAdapter Plus (comfyui_ipadapter_plus)
|
|
|
-
|
|
|
-# 简化节点
|
|
|
-- KJ Nodes (comfyui-kjnodes)
|
|
|
-- Efficiency Nodes
|
|
|
-
|
|
|
-# 细节修复
|
|
|
-- Impact Pack (comfyui_essentials)
|
|
|
-- FaceDetailer
|
|
|
-
|
|
|
-# 智能分割
|
|
|
-- SAM 3 (Segment Anything)
|
|
|
-- Grounding DINO
|
|
|
-
|
|
|
-# 其他工具
|
|
|
-- CR Seamless Checker(无缝检查)
|
|
|
-- TextureViewer(3D 预览)
|
|
|
-```
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 实战案例:客厅挂画生成
|
|
|
-
|
|
|
-### 完整提示词
|
|
|
-
|
|
|
-**阶段 1 - 背景**:
|
|
|
-```
|
|
|
-A modern living room with a large empty wooden frame on the wall,
|
|
|
-warm afternoon sunlight, minimalist interior design,
|
|
|
-soft shadows, cozy atmosphere, interior photography, 8k --ar 16:9
|
|
|
-```
|
|
|
-
|
|
|
-**阶段 2 - 画中画**:
|
|
|
-```
|
|
|
-A serene mountain lake landscape at golden hour,
|
|
|
-reflection in water, dramatic sky, oil painting style,
|
|
|
-visible brushstrokes, impasto technique, masterpiece
|
|
|
-```
|
|
|
-
|
|
|
-**阶段 3 - 风格参考**:
|
|
|
-- 上传 1-2 张目标风格的油画作品作为 IP-Adapter 参考
|
|
|
-
|
|
|
-### 工作流执行顺序
|
|
|
-
|
|
|
-1. **生成背景**: 使用 Canny ControlNet 控制房间结构
|
|
|
-2. **绘制蒙版**: 在空画框区域绘制蒙版(或使用 SAM 3 自动识别)
|
|
|
-3. **局部重绘**: denoise 0.7,生成画中画内容
|
|
|
-4. **风格注入**: IP-Adapter 权重 0.75,融合油画风格
|
|
|
-5. **细节修复**: FaceDetailer 修复可能的人物(如有)
|
|
|
-6. **高清输出**: Ultimate SD Upscale 放大至 4K
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 常见问题与解决方案
|
|
|
-
|
|
|
-| 问题 | 原因 | 解决方案 |
|
|
|
-|------|------|----------|
|
|
|
-| 画中画边缘不融合 | 蒙版扩展不足 | 增加 `mask_expand` 至 20-30 |
|
|
|
-| 风格与背景不协调 | IP-Adapter 权重过高 | 降至 0.6-0.7,使用 `norm average` |
|
|
|
-| 画中画结构崩坏 | 缺少 ControlNet 控制 | 添加 Canny/Depth ControlNet(权重 0.5) |
|
|
|
-| 面部/手部畸形 | 细节质量不足 | 添加 FaceDetailer/HandDetailer |
|
|
|
-| 整体风格不统一 | 分阶段风格差异大 | 阶段 1 也使用相同 IP-Adapter 参考 |
|
|
|
-| 生成速度慢 | 多阶段串行执行 | 使用批处理,低分辨率测试后再高清生成 |
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 进阶技巧
|
|
|
-
|
|
|
-### 1. 多画中画嵌套
|
|
|
-```
|
|
|
-背景 → 画中画 A → 画中画 B(嵌套在 A 内)
|
|
|
-```
|
|
|
-- 使用多个 Inpainting 节点串联
|
|
|
-- 每个阶段使用独立蒙版
|
|
|
-- IP-Adapter 可分别控制不同区域风格
|
|
|
-
|
|
|
-### 2. 动态蒙版生成
|
|
|
-```
|
|
|
-Grounding DINO + SAM 3 → 自动蒙版 → Inpainting
|
|
|
-```
|
|
|
-- 文本指令:`"the frame on the wall"`
|
|
|
-- 全自动识别和重绘
|
|
|
-
|
|
|
-### 3. 风格渐变融合
|
|
|
-```
|
|
|
-IPAdapter A (权重 0.8) + IPAdapter B (权重 0.4) → 渐变融合
|
|
|
-```
|
|
|
-- 使用 `average` 合并方式
|
|
|
-- 调整权重比例控制风格倾向
|
|
|
-
|
|
|
-### 4. 批量生成变体
|
|
|
-```
|
|
|
-同一背景 + 不同画中画提示词 → 批量输出
|
|
|
-```
|
|
|
-- 使用 `Batch Prompt Schedule` 节点
|
|
|
-- 一次生成多个画中画变体
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 关联知识
|
|
|
-
|
|
|
-- **Midjourney v7 厚涂风格**: 可使用 MJ 生成风格参考图,再通过本工作流在 ComfyUI 中精确复现
|
|
|
-- **Nano Banana 多图融合**: 可将多图融合结果作为本工作流的输入
|
|
|
-- **ControlNet+IPAdapter 双控架构**: 本工作流的核心技术基础
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## 更新日志
|
|
|
-
|
|
|
-- 2026-04-11: 初始入库,包含 4 阶段完整工作流、3 种 Inpainting 方案对比、实战案例
|