ComfyUI_Stable_Makeup 插件完全指南
1. 插件简介
插件原地址: https://github.com/smthemex/ComfyUI_Stable_Makeup
这个插件就像是给ComfyUI装了一个"AI化妆师"。你知道那些美颜相机能给人脸自动化妆吗?这个插件就是专门做这种事情的,但比普通美颜软件强大一万倍!
它能给我们带来什么效果:
- 可以把任何化妆风格"复制"到你想要的人脸上,就像给化妆师一张参考照片
- 支持各种化妆风格:口红、眼影、腮红、眉毛等等,应有尽有
- 能够保持人物的原始面部特征,只改变化妆效果
- 可以控制化妆的浓淡程度,从淡妆到浓妆都可以
- 支持多种人脸检测方式,适应不同的照片质量
- 可以处理各种角度和表情的人脸照片
简单来说,这个插件让你的AI变成了一个"专业化妆师",能够根据参考图片给任何人化出同样风格的妆容。
2. 如何安装
方法一:使用Git安装(推荐)
- 打开命令行,进入ComfyUI的
custom_nodes目录 - 运行:
git clone https://github.com/smthemex/ComfyUI_Stable_Makeup.git - 进入插件目录:
cd ComfyUI_Stable_Makeup - 安装依赖:
pip install -r requirements.txt - 重启ComfyUI
方法二:手动下载安装
- 打开浏览器,访问:https://github.com/smthemex/ComfyUI_Stable_Makeup
- 点击绿色的"Code"按钮,选择"Download ZIP"
- 解压下载的文件
- 把解压后的文件夹复制到你的ComfyUI安装目录下的
custom_nodes文件夹里 - 安装依赖:
pip install -r requirements.txt - 重启ComfyUI
重要的模型文件下载
必须下载以下模型文件并放到 ComfyUI/models/stable_makeup 文件夹下:
-
spiga_300wpublic.pt - 人脸关键点检测模型
-
pytorch_model.bin, pytorch_model_1.bin, pytorch_model_2.bin - 化妆转换模型
-
人脸检测模型(选择其中一个):
- mobilenet0.25_Final.pth - 轻量级模型(推荐)
- resnet50.pth - 高精度模型
文件夹结构应该是这样的:
ComfyUI/models/stable_makeup/
├── mobilenet0.25_Final.pth
├── pytorch_model.bin
├── pytorch_model_1.bin
├── pytorch_model_2.bin
├── spiga_300wpublic.pt
└── resnet50.pth (可选)
3. 节点详细解析
3.1 StableMakeup_LoadModel 节点 - 化妆模型加载器
这个节点就像一个"化妆工具箱管理员",它负责准备所有化妆需要用到的工具和材料,包括各种画笔、颜料、镜子等等。
简单理解: 就像化妆师开始工作前要先准备好所有化妆品和工具一样,这个节点准备好所有AI化妆需要的"设备"。
3.1.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| ckpt_name | ckpt_name | 下拉选择列表 | 任何SD1.5模型 | 选择基础的AI画图模型,就像选择画布的底色 | Stable Diffusion 1.5检查点模型选择 | 选择"v1-5-pruned.ckpt"或其他SD1.5模型 |
| clip | clip | 下拉选择列表 | clip_l.safetensors | 选择文字理解器,让AI能理解你的描述 | CLIP模型用于文本编码 | 通常选择"clip_l.safetensors" |
| lora | lora | 下拉选择列表 | "none"或选择LoRA | 选择特殊风格增强器,可以让化妆效果更好 | LoRA模型选择,用于风格增强 | 可以选择"none"不使用,或选择化妆相关的LoRA |
| lora_scale | lora_scale | 0.0-1.0浮点数 | 1.0 | LoRA的影响强度,就像调节化妆品的浓度 | LoRA模型的权重缩放系数 | 1.0是完全使用,0.5是一半强度 |
| lora_trigger_words | lora_trigger_words | 文本字符串 | "best" | LoRA的触发词,就像化妆师的口令 | LoRA模型的激活关键词 | 通常保持默认"best"即可 |
| scheduler | scheduler | 下拉选择列表 | "DDIM" | 选择画图的步骤控制器,就像选择化妆的手法 | 采样器调度算法选择 | "DDIM"适合化妆,"DPM++ 2M"也不错 |
3.2 StableMakeup_Sampler 节点 - 化妆效果生成器
这个节点就像一个"专业化妆师",它拿着参考照片和化妆工具,给指定的人脸化出同样风格的妆容。
简单理解: 就像你给化妆师两张照片:一张是要化妆的人,一张是化妆参考样本,然后化妆师就能给第一个人化出第二张照片的妆容。
3.2.1 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| id_image | id_image | 连接线输入 | 连接人脸照片 | 要化妆的人脸照片,就像化妆师的"客户" | 输入的身份图像,需要进行化妆的目标人脸 | 连接一张清晰的人脸正面照片 |
| makeup_image | makeup_image | 连接线输入 | 连接化妆参考照片 | 化妆参考照片,告诉AI要化什么样的妆 | 化妆参考图像,提供化妆风格样本 | 连接一张你喜欢的化妆风格照片 |
| model | model | 连接线输入 | 从LoadModel节点连接 | 连接化妆工具箱,获得所有化妆需要的工具 | 从模型加载器节点获取的模型对象 | 从"StableMakeup_LoadModel"节点连接 |
| facedetector | facedetector | 下拉选择 | "mobilenet" | 选择人脸检测方式:mobilenet轻快,resnet精确 | 人脸检测模型选择 | "mobilenet"速度快,"resnet"精度高 |
| dataname | dataname | 下拉选择 | "300wpublic" | 选择人脸关键点检测的精度级别 | 人脸关键点检测数据集选择 | "300wpublic"适合一般使用 |
| cfg | cfg | 0.0-30.0浮点数 | 1.6 | 化妆效果的"听话程度",数字越大越按参考图化妆 | 分类器自由引导强度 | 1.6比较自然,3.0-5.0效果更明显 |
| steps | steps | 1-10000整数 | 30 | 化妆的"精细程度",数字越大化得越仔细但越慢 | 推理步数,影响生成质量和时间 | 20步快速预览,30-50步高质量 |
| width | width | 256-768整数(64倍数) | 512 | 输出图片的宽度,就像选择照片的尺寸 | 生成图像的宽度像素 | 512适合大多数情况 |
| height | height | 256-768整数(64倍数) | 512 | 输出图片的高度,就像选择照片的尺寸 | 生成图像的高度像素 | 512适合大多数情况 |
3.2.2 数据集选项说明
| 数据集名称 | 通俗解释 | 专业解释 | 适用场景 |
|---|---|---|---|
| 300wpublic | 标准精度,适合大多数情况 | 300-W公开数据集,68个关键点 | 一般人脸照片,推荐使用 |
| 300wprivate | 高精度,处理效果更好 | 300-W私有数据集,更高精度 | 重要照片或专业用途 |
| merlrav | 特殊优化,适合某些特定人脸 | MERLRAV数据集,特定优化 | 当其他选项效果不好时尝试 |
| wflw | 最高精度,但速度较慢 | WFLW数据集,98个关键点 | 需要最高质量时使用 |
4. 使用技巧和建议
4.1 基础使用流程
完整的化妆工作流程:
- 准备照片 - 选择一张清晰的人脸照片作为要化妆的对象
- 选择化妆参考 - 找一张你喜欢的化妆风格照片
- 加载模型 - 使用StableMakeup_LoadModel节点加载所有必要的模型
- 设置参数 - 在StableMakeup_Sampler节点中调整各种参数
- 生成结果 - 运行工作流获得化妆后的照片
4.2 参数调优建议
人脸检测器选择:
- mobilenet: 速度快,适合批量处理或预览
- resnet: 精度高,适合重要照片或最终输出
CFG值调整:
- 1.0-2.0: 自然淡妆效果
- 2.0-4.0: 明显化妆效果
- 4.0以上: 浓妆效果,但可能过度
步数设置:
- 20步: 快速预览,质量一般
- 30步: 平衡质量和速度,推荐
- 50步: 高质量输出,但较慢
4.3 照片质量要求
输入照片建议:
- 人脸清晰可见,正面或接近正面角度
- 光线均匀,避免强烈阴影
- 分辨率不要太低,至少300x300像素
- 避免过度模糊或失焦的照片
化妆参考照片建议:
- 化妆效果明显且清晰
- 人脸角度与目标照片相似
- 光线条件良好
- 化妆风格突出
4.4 常见化妆效果类型
口红效果:
- 选择嘴唇颜色鲜艳的参考照片
- CFG设置在2.0-3.0之间
- 使用mobilenet检测器即可
眼妆效果:
- 选择眼影、眼线明显的参考照片
- CFG可以设置稍高,3.0-4.0
- 建议使用resnet检测器获得更好效果
整体妆容:
- 选择整体化妆效果好的参考照片
- CFG设置在1.6-2.5之间
- 步数可以增加到40-50步
5. 常见问题解答
Q1: 为什么生成的图片没有化妆效果?
A: 可能的原因和解决方法:
- CFG值太低:尝试提高到2.0-4.0
- 参考照片化妆不明显:选择化妆效果更明显的参考照片
- 人脸检测失败:检查输入照片是否清晰,人脸是否正面
- 模型文件缺失:确保所有必需的模型文件都已下载
Q2: 生成的图片看起来很奇怪或失真?
A: 调整建议:
- 降低CFG值:从高值降到1.6-2.5
- 检查照片质量:确保输入照片清晰且人脸角度合适
- 尝试不同的数据集:从300wpublic换到其他选项
- 调整步数:增加到30-40步获得更好质量
Q3: 处理速度很慢怎么办?
A: 优化建议:
- 使用mobilenet检测器:比resnet快很多
- 降低分辨率:从512降到256或384
- 减少步数:从50降到20-30
- 选择简单的数据集:使用300wpublic而不是wflw
Q4: 某些人脸检测不到怎么办?
A: 解决方法:
- 尝试不同的检测器:mobilenet和resnet都试试
- 调整照片角度:尽量使用正面或接近正面的照片
- 提高照片质量:使用更清晰、光线更好的照片
- 尝试不同的数据集:有些数据集对特定人脸类型效果更好
Q5: 化妆效果不够自然?
A: 改善方法:
- 降低CFG值:使用1.2-2.0的较低值
- 选择自然的参考照片:避免过于浓艳的化妆参考
- 增加步数:使用40-50步获得更自然的过渡
- 尝试不同的调度器:从DDIM换到DPM++ 2M
6. 高级应用技巧
6.1 批量化妆处理
- 准备多张要化妆的人脸照片
- 选择一个统一的化妆风格参考
- 使用相同的参数设置进行批量处理
- 可以创建不同强度的版本(调整CFG值)
6.2 化妆风格对比
- 使用同一张人脸照片
- 准备多种不同的化妆参考照片
- 分别生成不同风格的化妆效果
- 对比选择最满意的风格
6.3 渐进式化妆效果
- 使用同样的照片和参考
- 设置不同的CFG值:1.0, 2.0, 3.0, 4.0
- 生成从淡妆到浓妆的渐进效果
- 选择最合适的浓度
6.4 特定部位化妆
虽然插件是整体化妆,但可以通过选择特定部位突出的参考照片来实现:
- 只化眼妆:选择只有眼部化妆明显的参考照片
- 只涂口红:选择只有嘴唇颜色突出的参考照片
- 只画眉毛:选择眉形明显的参考照片
7. 与其他插件的配合使用
7.1 与人脸修复插件配合
- 先使用化妆插件生成化妆效果
- 再使用人脸修复插件提升面部细节
- 最后使用放大插件提升整体质量
7.2 与风格转换插件配合
- 使用化妆插件添加化妆效果
- 使用风格转换插件改变整体艺术风格
- 创造出独特的艺术化妆效果
7.3 与ControlNet配合
- 使用ControlNet控制人物姿势
- 使用化妆插件添加化妆效果
- 实现特定姿势下的化妆人物生成
8. 总结
ComfyUI_Stable_Makeup插件是一个功能强大的AI化妆工具,它将复杂的化妆转换技术包装成易用的节点。无论是简单的美颜效果还是复杂的化妆风格转换,都能轻松实现。
插件优点:
- 化妆效果自然真实,保持人物特征
- 支持多种化妆风格和强度调节
- 提供多种人脸检测和关键点检测选项
- 处理速度相对较快,实用性强
- 支持LoRA增强,效果可定制
适用人群:
- 需要人像美化功能的用户
- 想要尝试不同化妆风格的创作者
- 从事美容美妆相关工作的专业人士
- 对AI人脸处理技术感兴趣的爱好者
学习建议:
- 先准备好所有必需的模型文件
- 从简单的淡妆效果开始练习
- 逐步尝试不同的参数组合
- 多实验不同类型的参考照片
- 结合其他插件创造更丰富的效果
记住,这个插件就像一个"AI化妆师",它能够理解化妆参考图片的风格特征,然后巧妙地应用到目标人脸上。虽然参数不多,但每个参数都有重要作用,多练习就能熟练掌握!