Stable Diffusion 与 ComfyUI 基础
Stable Diffusion 是现在很常见的开源文生图模型,优势不只是'能生成图',更在于它把扩散式生成这套流程做得比较成熟,图像质量、提示词理解和资源利用率都还不错。ComfyUI 则把这一套过程拆成节点,复杂任务像重绘、视频生成、服装替换,放到它里面会更容易复用,也更容易查问题。
这篇内容只看换装工作流:从原理到落地,顺着把工作流怎么找、怎么装、怎么跑讲清楚。
一、技术架构概述
Stable Diffusion 本质上是扩散模型:先给图像加噪声,再学习怎么把噪声一步步去掉,最后从随机噪声里还原出图像。ComfyUI 做的事情,是把这条链路拆开给你看:
- 每个节点对应一个处理模块,比如提示词解析、VAE 解码、ControlNet 控制
- 节点之间的连线定义数据流,传的是图像、蒙版、参数这些东西
- 工作流文件用 JSON 保存,设计好之后可以反复用,不用每次重新搭一遍
换装这类任务的关键也很明确,基本离不开三件事:
- 语义分割:把衣服区域抠出来,蒙版要尽量准
- 姿态控制:让人物动作保持住,不然换完衣服人也变形了
- 局部重绘:只在指定区域里生成新服装,背景尽量别动
二、工作流获取与部署
途径 1:工作流社区
现在有不少 ComfyUI 工作流分享平台,里面能找到已经跑通的流程,涵盖文生图、图生图、换装这些场景。实际用起来,最省事的还是先找现成的流程,再按自己的模型和节点环境补齐。
- 打开官方或第三方工作流平台
- 搜索关键词,比如'cloth change'或者'garment replacement'
- 下载对应的 JSON 工作流文件
途径 2:ComfyUI Manager
如果工作流里带了自定义节点,ComfyUI Manager 基本是必备的,它至少能帮你少踩一半依赖坑。
- 在 ComfyUI 界面里点
Manager - 选择
Install Missing Custom Nodes,把缺失节点装上 - 用
Import Workflow导入下载好的 JSON 文件
三、换装工作流详解
一个典型的换装流程,大致是这样的:
输入模特图 → 用 SAM 分割上衣或下衣蒙版 → 用 ControlNet 提取姿态骨架 → 对目标区域做局部重绘,输入新上衣提示词和上衣蒙版 → 再对下衣做一次局部重绘 → 输出最终换装图
关键节点说明
SAM Mask 分割
- 用语义标签指定衣物类型
- 蒙版越准,边缘融合越自然;这里偷懒,最后通常都会体现在领口、袖口或者裤脚
ControlNet 姿态控制
- 可以选 LineArt 或 OpenPose 节点来固定人物动作
- 目的是避免换装后手臂、腿部位置跑掉,尤其是全身图
重绘模块
- KS 采样器的降噪参数一般可以放在 0.6–0.8
- 提示词要写得具体一点,比如
blue suit, professional texture,比空泛地写'好看西装'更稳
模型准备清单
| 模型类型 | 推荐选择 | 作用 |
|---|---|---|
| 大模型(Checkpoint) | ChilloutMix/RealisticVision | 写实风格生成 |
| ControlNet 模型 | lineart_v7/openpose_v2 | 维持姿态与线条一致性 |

