ComfyUI InfiniteYou 插件保姆级教程
1. 插件简介
插件地址: https://github.com/bytedance/ComfyUI_InfiniteYou
ComfyUI InfiniteYou 是字节跳动开发的一个超级厉害的人脸保持插件!想象一下,你有一张自己的照片,然后你想让这张照片变成各种不同的风格、场景、服装,但是脸部特征要保持不变,就像你本人在不同场景中拍照一样。这个插件就能帮你实现这个神奇的效果!
这个插件能干什么?
- 保持你的脸部特征不变,但改变背景、服装、风格
- 让你的照片出现在任何你想象的场景中
- 生成高质量、高保真的人像图片
- 支持多种艺术风格转换
- 可以控制人脸姿态和表情
能带来什么效果?
- 制作个人写真集(不同风格、不同场景)
- 创建虚拟形象和头像
- 生成社交媒体内容
- 制作创意人像作品
- 实现"换装不换脸"的效果
2. 如何安装
方法一:通过 ComfyUI Manager 安装(推荐)
- 打开 ComfyUI
- 点击右侧的 "Manager" 按钮
- 在搜索框输入 "InfiniteYou"
- 找到 "ComfyUI_InfiniteYou" 点击安装
- 重启 ComfyUI
方法二:手动安装
- 打开终端或命令提示符
- 进入你的 ComfyUI 安装目录下的
custom_nodes文件夹 - 运行以下命令:
git clone https://github.com/bytedance/ComfyUI_InfiniteYou.git
cd ComfyUI_InfiniteYou
pip install -r requirements.txt
- 重启 ComfyUI
注意:
- 这个插件需要大量显存,建议至少24GB显存(FP8精度)或43GB显存(BF16精度)
- 插件会自动下载需要的模型文件,第一次使用时需要等待下载完成
3. 节点详细解析
3.1 ID Embedding Model Loader(身份特征模型加载器)
这个节点就像一个"人脸识别专家",负责加载识别和分析人脸特征的工具。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| image_proj_model_name | image_proj_model_name | 下拉选择 | sim_stage1/image_proj_model.bin | 选择图像投影模型,就像选择不同的"翻译器" | 用于将人脸特征转换为AI可理解格式的模型 | sim_stage1适合一般使用,aes_stage2质量更高 |
| image_proj_num_tokens | image_proj_num_tokens | [8, 16] | 16 | 特征标记数量,数量越多细节越丰富 | 图像特征编码的标记数量 | 16能捕获更多细节,8速度更快 |
| face_analysis_provider | face_analysis_provider | ['CUDA', 'CPU'] | CUDA | 人脸分析运算方式,CUDA用显卡更快 | 人脸检测和分析的计算设备 | 有显卡选CUDA,没有选CPU |
| face_analysis_det_size | face_analysis_det_size | ["AUTO", "640", "320", "160"] | AUTO | 人脸检测尺寸,AUTO自动选择最佳 | 人脸检测时使用的图像尺寸 | AUTO会尝试多种尺寸找到人脸 |
输出接口:
- FACE_DETECTOR:人脸检测器,用于找到图片中的人脸
- ARCFACE_MODEL:人脸特征提取模型,用于分析人脸特征
- IMAGE_PROJ_MODEL:图像投影模型,用于转换特征格式
3.2 Extract ID Embedding(提取身份特征)
这个节点就像一个"人脸指纹提取器",能从照片中提取出独特的人脸特征。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| face_detector | face_detector | MODEL | - | 人脸检测器,用来找到照片中的脸 | 从模型加载器获取的人脸检测模型 | 连接ID Embedding Model Loader的第一个输出 |
| arcface_model | arcface_model | MODEL | - | 人脸特征分析器,分析脸部特征 | ArcFace人脸识别模型 | 连接ID Embedding Model Loader的第二个输出 |
| image_proj_model | image_proj_model | MODEL | - | 特征转换器,把特征转成AI能用的格式 | 图像特征投影模型 | 连接ID Embedding Model Loader的第三个输出 |
| image | image | IMAGE | - | 输入的人脸照片,要提取特征的图片 | 包含目标人脸的输入图像 | 上传一张清晰的正面人脸照片 |
输出接口:
- CONDITIONING:包含人脸特征信息的条件数据,后续生成时会用到
3.3 Extract Face Pose Image(提取人脸姿态图像)
这个节点就像一个"姿态描绘师",能从照片中提取人脸的姿态和关键点信息。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| face_detector | face_detector | MODEL | - | 人脸检测器,找到图片中的人脸 | 用于检测人脸位置的模型 | 连接ID Embedding Model Loader的输出 |
| image | image | IMAGE | - | 输入图像,要提取姿态的照片 | 包含目标姿态的输入图像 | 上传想要模仿姿态的照片 |
| width | width | INT | 864 | 输出图像宽度,就像设置画布宽度 | 输出姿态图像的像素宽度 | 864是推荐尺寸,可根据需要调整 |
| height | height | INT | 1152 | 输出图像高度,就像设置画布高度 | 输出姿态图像的像素高度 | 1152是推荐尺寸,保持比例 |
| mask | mask | MASK | - | 可选的遮罩,只处理指定区域 | 用于限制处理区域的遮罩 | 可以用来只处理人脸部分 |
输出接口:
- IMAGE:包含人脸关键点的姿态图像,显示人脸的结构信息
3.4 Load InfuseNet(加载融合网络)
这个节点就像一个"魔法工具箱加载器",负责加载核心的图像生成控制模型。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| controlnet_name | controlnet_name | 下拉选择 | sim_stage1/infusenet_sim_bf16.safetensors | 选择控制网络模型,不同模型有不同效果 | InfuseNet控制网络的模型文件 | bf16是高精度版本,fp8是节省显存版本 |
输出接口:
- CONTROL_NET:加载好的控制网络,用于控制图像生成过程
3.5 Apply InfuseNet(应用融合网络)
这个节点是整个系统的"指挥中心",把所有信息整合起来控制最终的图像生成。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| positive | positive | CONDITIONING | - | 正面提示词条件,描述想要的效果 | 正向条件引导信息 | 连接CLIP文本编码器的正面输出 |
| id_embedding | id_embedding | CONDITIONING | - | 身份特征信息,保持人脸不变的关键 | 从Extract ID Embedding获取的身份特征 | 连接Extract ID Embedding的输出 |
| control_net | control_net | CONTROL_NET | - | 控制网络,负责精确控制生成过程 | InfuseNet控制网络模型 | 连接Load InfuseNet的输出 |
| image | image | IMAGE | - | 控制图像,通常是姿态图像 | 用于控制生成的参考图像 | 连接Extract Face Pose Image的输出 |
| strength | strength | FLOAT | 1.0 | 控制强度,数值越大控制越强 | 控制网络的影响强度 | 0.8-1.2之间,1.0是标准强度 |
| start_percent | start_percent | FLOAT | 0.0 | 开始百分比,控制何时开始生效 | 控制网络开始生效的时间点 | 0.0表示从一开始就生效 |
| end_percent | end_percent | FLOAT | 1.0 | 结束百分比,控制何时停止生效 | 控制网络停止生效的时间点 | 1.0表示全程生效 |
| negative | negative | CONDITIONING | - | 负面提示词条件,描述不想要的效果 | 负向条件引导信息 | 连接CLIP文本编码器的负面输出 |
| vae | vae | VAE | - | 可选的VAE模型,用于图像编解码 | 变分自编码器模型 | 通常连接FLUX的VAE |
| control_mask | control_mask | MASK | - | 控制遮罩,限制控制的区域 | 用于限制控制网络作用区域的遮罩 | 可以只让某些区域受控制 |
输出接口:
- positive:处理后的正面条件,传给采样器
- negative:处理后的负面条件,传给采样器
4. 使用技巧和建议
4.1 照片选择技巧
- 身份照片选择:选择清晰、正面、光线均匀的照片
- 姿态照片选择:选择你想要的姿态和表情的照片
- 避免遮挡:确保人脸没有被头发、眼镜、帽子等严重遮挡
- 单人照片:每张照片最好只有一个人脸
4.2 参数调节建议
-
模型选择:
- sim_stage1:适合一般使用,速度较快
- aes_stage2:质量更高,但需要更多资源
-
精度选择:
- bf16:最高质量,需要43GB显存
- fp8:节省显存,需要24GB显存
-
控制强度调节:
- 0.8-1.0:自然效果
- 1.0-1.2:更强的控制效果
- 超过1.2:可能出现过度拟合
4.3 工作流程建议
- 准备素材:选择清晰的身份照片和姿态参考照片
- 加载模型:使用ID Embedding Model Loader加载必要模型
- 提取特征:用Extract ID Embedding提取身份特征
- 提取姿态:用Extract Face Pose Image提取姿态信息
- 加载控制器:用Load InfuseNet加载控制网络
- 应用控制:用Apply InfuseNet整合所有信息
- 生成图像:连接到FLUX采样器生成最终图像
4.4 质量优化技巧
- 提示词优化:使用详细、准确的描述
- 负面提示词:添加不想要的元素到负面提示词
- 采样参数:适当调整采样步数和CFG值
- 分辨率设置:使用合适的输出分辨率
5. 常见问题解答
Q1: 为什么提示"No face detected"?
A:
- 检查输入图片是否包含清晰的人脸
- 尝试调整face_analysis_det_size参数
- 确保人脸没有被严重遮挡
- 尝试使用更高分辨率的图片
Q2: 显存不够怎么办?
A:
- 使用fp8精度的模型(需要24GB显存)
- 降低输出图像分辨率
- 关闭其他占用显存的程序
- 考虑使用更高配置的显卡
Q3: 生成的人脸不像原图怎么办?
A:
- 检查身份照片是否清晰正面
- 调整strength参数(尝试1.1-1.2)
- 确保使用了正确的模型版本
- 尝试不同的image_proj_num_tokens设置
Q4: 生成速度很慢怎么办?
A:
- 使用fp8精度模型
- 降低采样步数
- 使用较小的输出分辨率
- 确保使用CUDA而不是CPU
Q5: 如何获得更好的艺术效果?
A:
- 使用aes_stage2模型(美学优化版本)
- 在提示词中添加艺术风格描述
- 调整控制强度找到最佳平衡点
- 尝试不同的姿态参考图
Q6: 可以处理多个人脸吗?
A:
- 基础版本主要针对单人脸优化
- 可以使用遮罩分别处理不同人脸
- 插件提供了多人脸的参考工作流程
- 建议分别处理每个人脸以获得最佳效果
Q7: 模型下载失败怎么办?
A:
- 检查网络连接是否正常
- 尝试使用VPN或代理
- 手动下载模型文件到指定目录
- 检查磁盘空间是否足够
6. 进阶使用技巧
6.1 多风格生成
- 风格混合:在提示词中组合多种艺术风格
- 权重控制:使用括号和数字控制不同元素的权重
- 分层控制:使用遮罩对不同区域应用不同效果
6.2 批量处理
- 批量身份:使用相同设置处理多张照片
- 风格系列:为同一人物生成不同风格的图像
- 姿态变化:使用不同姿态参考生成系列图像
6.3 与其他插件结合
- 后期处理:结合图像增强插件提升质量
- 动画制作:结合视频插件制作动态效果
- 风格转换:结合其他风格转换插件
7. 总结
ComfyUI InfiniteYou 是一个功能强大的人脸保持插件,通过5个核心节点的协作,能够实现高质量的身份保持图像生成。从人脸检测到特征提取,从姿态控制到最终生成,每个环节都经过精心设计。
记住最重要的几点:
- 选择清晰、正面的身份照片
- 确保有足够的显存(至少24GB)
- 合理调整控制强度参数
- 使用详细准确的提示词
- 根据需求选择合适的模型精度
现在就开始你的创意人像之旅吧!用这个强大的插件,让你的照片出现在任何你想象的场景中!