ComfyUI-DeepFuze 插件保姆级教程
1. 插件简介
插件地址: https://github.com/SamKhoze/ComfyUI-DeepFuze
这个插件就像是一个神奇的换脸和对嘴型工具箱,专门用来制作各种有趣的视频效果。想象一下,你有一个万能的视频魔法师,能够:
- 换脸功能 - 就像变脸术一样,把一个人的脸换到另一个人身上
- 对嘴型功能 - 就像配音演员一样,让视频中的人说出你想要的话
- 语音合成 - 就像声音克隆器,用别人的声音说你想说的话
- 人脸增强 - 就像美颜相机,让脸部更清晰更好看
- 智能对话 - 就像聊天机器人,能自动生成对话内容
这个插件特别适合用来:
- 制作搞笑的换脸视频
- 创建多语言配音内容
- 制作个性化的虚拟主播
- 生成教学演示视频
- 创作创意短视频内容
2. 如何安装
2.1 自动安装(推荐)
- 安装 ComfyUI Manager 插件
- 在 Manager 中搜索 "DeepFuze"
- 点击安装即可
2.2 手动安装
- 打开你的 ComfyUI 安装目录
- 进入
custom_nodes文件夹 - 下载插件:
git clone https://github.com/SamKhoze/ComfyUI-DeepFuze.git
- 安装依赖:
pip install -r requirements.txt
2.3 特殊依赖安装
这个插件需要额外安装一些特殊的工具:
- FFmpeg(用于视频处理)
- 各种AI模型(会自动下载)
- OpenAI API密钥(如果使用LLM功能)
3. 节点详细解析
3.1 DeepFuzeFaceSwap 节点 - 换脸大师
这个节点就像是一个专业的换脸工作室,能把一个人的脸完美地换到另一个人身上。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| source_images | source_images | IMAGE | 必需 | 要换上去的脸,就像模板脸 | 源人脸图像数据 | 上传一张明星的照片作为要换的脸 |
| target_images | target_images | IMAGE | 必需 | 要被换脸的视频,就像画布 | 目标视频帧序列 | 上传一个人说话的视频 |
| enhancer | enhancer | 选择列表 | None | 脸部美化器,就像美颜滤镜 | 人脸增强模型选择 | 选择gfpgan_1.4让换脸后更清晰 |
| faceswap_model | faceswap_model | 选择列表 | blendswap_256 | 换脸算法,就像不同的换脸技术 | 人脸交换模型类型 | 用inswapper_128速度快效果好 |
| frame_enhancer | frame_enhancer | 选择列表 | None | 整体画面增强器,就像视频滤镜 | 帧增强模型选择 | 选择real_esrgan_x4提升视频清晰度 |
| face_detector_model | face_detector_model | 选择列表 | yoloface | 人脸识别器,就像人脸扫描仪 | 人脸检测算法类型 | 用yoloface检测准确度高 |
| reference_face_index | reference_face_index | 0-5 | 0 | 选择第几张脸,就像选择目标 | 参考人脸的索引位置 | 设置为1选择视频中第二个人的脸 |
| face_mask_padding_left | face_mask_padding_left | 0-30 | 0 | 脸部左边扩展范围 | 人脸遮罩左侧填充像素 | 设置为5让换脸区域向左扩展5像素 |
| face_mask_padding_right | face_mask_padding_right | 0-30 | 0 | 脸部右边扩展范围 | 人脸遮罩右侧填充像素 | 设置为5让换脸区域向右扩展5像素 |
| face_mask_padding_bottom | face_mask_padding_bottom | 0-30 | 0 | 脸部下方扩展范围 | 人脸遮罩底部填充像素 | 设置为10包含更多下巴区域 |
| face_mask_padding_top | face_mask_padding_top | 0-30 | 0 | 脸部上方扩展范围 | 人脸遮罩顶部填充像素 | 设置为10包含更多额头区域 |
| device | device | 选择列表 | cpu | 计算设备,就像选择处理器 | 运算设备类型 | 选择cuda用显卡加速处理 |
| frame_rate | frame_rate | 1+ | 25 | 视频播放速度,就像快慢调节 | 输出视频的帧率 | 设置为30让视频更流畅 |
| audio | audio | AUDIO | 可选 | 音频轨道,就像背景音乐 | 音频数据流 | 连接音频节点添加声音 |
| loop_count | loop_count | 0-100 | 0 | 循环播放次数 | 视频循环次数设置 | 设置为3让视频重复播放3次 |
| filename_prefix | filename_prefix | STRING | deepfuze | 文件名前缀,就像文件标签 | 输出文件名的前缀 | 设置为"my_faceswap"方便识别 |
| pingpong | pingpong | BOOLEAN | False | 来回播放,就像摆钟效果 | 正向反向循环播放 | 设置为True让视频来回播放 |
| save_output | save_output | BOOLEAN | True | 是否保存文件 | 控制是否保存输出文件 | 设置为False只预览不保存 |
3.2 DeepFuzeAdavance 节点 - 高级对嘴型大师
这个节点就像是一个专业的配音工作室,能让视频中的人完美地对上任何音频的嘴型。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| images | images | IMAGE | 必需 | 要对嘴型的视频,就像演员 | 目标视频帧序列 | 上传一个人说话的视频 |
| audio | audio | AUDIO | 必需 | 要对应的音频,就像台词 | 音频数据流 | 连接语音合成的音频输出 |
| enhancer | enhancer | 选择列表 | None | 脸部美化器 | 人脸增强模型选择 | 选择codeformer让嘴部更自然 |
| frame_enhancer | frame_enhancer | 选择列表 | None | 画面增强器 | 帧增强模型选择 | 选择ultra_sharp_x4提升清晰度 |
| face_mask_padding_left | face_mask_padding_left | 0-30 | 0 | 嘴部左边扩展范围 | 嘴部遮罩左侧填充 | 设置为3包含更多嘴角区域 |
| face_mask_padding_right | face_mask_padding_right | 0-30 | 0 | 嘴部右边扩展范围 | 嘴部遮罩右侧填充 | 设置为3包含更多嘴角区域 |
| face_mask_padding_bottom | face_mask_padding_bottom | 0-30 | 0 | 嘴部下方扩展范围 | 嘴部遮罩底部填充 | 设置为5包含下唇和下巴 |
| face_mask_padding_top | face_mask_padding_top | 0-30 | 0 | 嘴部上方扩展范围 | 嘴部遮罩顶部填充 | 设置为5包含上唇和鼻子下方 |
| trim_frame_start | trim_frame_start | 0-2000 | 0 | 开始修剪帧数,就像剪辑起点 | 视频开始修剪的帧数 | 设置为30跳过前30帧 |
| trim_frame_end | trim_frame_end | 0-2000 | 0 | 结束修剪帧数,就像剪辑终点 | 视频结束修剪的帧数 | 设置为50去掉最后50帧 |
| device | device | 选择列表 | cpu | 计算设备选择 | 运算设备类型 | 选择cuda用显卡加速 |
| frame_rate | frame_rate | 1+ | 25 | 视频帧率 | 输出视频的帧率 | 设置为24匹配电影标准 |
| loop_count | loop_count | 0-100 | 0 | 循环播放次数 | 视频循环次数设置 | 设置为1播放两遍 |
| filename_prefix | filename_prefix | STRING | deepfuze | 文件名前缀 | 输出文件名的前缀 | 设置为"lipsync_video" |
| pingpong | pingpong | BOOLEAN | False | 来回播放效果 | 正向反向循环播放 | 设置为True创造摆钟效果 |
| save_output | save_output | BOOLEAN | True | 是否保存输出 | 控制是否保存输出文件 | 设置为True保存到硬盘 |
3.3 TTS_generation 节点 - 语音合成大师
这个节点就像是一个万能的配音演员,能用任何人的声音说出你想要的话。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| audio | audio | AUDIO | 必需 | 声音样本,就像声音模板 | 参考音频数据 | 上传想要模仿的人的声音 |
| llm_response | llm_response | NEW_STRING | 可选 | AI生成的文本,就像剧本 | 大语言模型的输出文本 | 连接LLM节点的输出 |
| text | text | STRING | 可选 | 要说的话,就像台词 | 需要合成语音的文本 | 输入"Hello, how are you?" |
| device | device | 选择列表 | cpu | 计算设备 | 运算设备类型 | 选择cuda加速语音合成 |
| supported_language | supported_language | 选择列表 | English | 语言选择,就像方言设置 | 支持的语言类型 | 选择Chinese (zh-cn)生成中文语音 |
3.4 LLM_node 节点 - 智能对话大师
这个节点就像是一个聪明的聊天机器人,能根据你的要求生成各种对话内容。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| system_prompt | system_prompt | STRING | 空 | 系统指令,就像给AI的工作说明书 | 系统级提示词设置 | 输入"你是一个幽默的主持人" |
| user_query | user_query | STRING | 空 | 用户问题,就像你想问的话 | 用户输入的查询内容 | 输入"请介绍一下今天的天气" |
| model_name | model_name | 选择列表 | gpt-3.5-turbo | AI模型选择,就像选择不同的大脑 | 使用的语言模型类型 | 选择gpt-4o获得更好效果 |
| api_key | api_key | STRING | 空 | API密钥,就像门禁卡 | OpenAI API访问密钥 | 输入你的OpenAI API密钥 |
| max_tokens | max_tokens | 10-2000 | 250 | 最大回复长度,就像字数限制 | 生成文本的最大令牌数 | 设置为500获得更详细回复 |
| temperature | temperature | 0-1 | 0 | 创意程度,就像想象力调节 | 生成文本的随机性程度 | 设置为0.7让回复更有创意 |
| timeout | timeout | 1-200 | 10 | 超时时间,就像等待时限 | API请求超时时间(秒) | 设置为30给复杂问题更多时间 |
3.5 PlayBackAudio 节点 - 音频播放器
这个节点就像是一个简单的音响,能直接播放音频让你听到效果。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| audio | audio | AUDIO | 必需 | 要播放的音频,就像音乐文件 | 音频数据流输入 | 连接TTS节点的音频输出 |
3.6 SaveAudio 节点 - 音频保存器
这个节点就像是一个录音机,能把音频保存成文件并可以截取片段。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| audio | audio | AUDIO | 必需 | 要保存的音频 | 音频数据流输入 | 连接任何音频节点的输出 |
| start_time | start_time | 0-9999 | 0 | 开始时间,就像剪辑起点 | 音频截取的开始时间点 | 设置为5从第5秒开始保存 |
| end_time | end_time | 0-9999 | 0 | 结束时间,就像剪辑终点 | 音频截取的结束时间点 | 设置为30到第30秒结束 |
3.7 DeepfuzePreview 节点 - 人脸预览器
这个节点就像是一个人脸检测器的显示屏,能显示检测到的人脸区域和调整范围。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| images | images | IMAGE | 必需 | 要检测的图片,就像待扫描的照片 | 输入图像数据 | 上传包含人脸的图片 |
| face_mask_padding_left | face_mask_padding_left | 0-30 | 0 | 人脸左边扩展范围 | 人脸遮罩左侧填充像素 | 设置为5扩展左侧检测区域 |
| face_mask_padding_right | face_mask_padding_right | 0-30 | 0 | 人脸右边扩展范围 | 人脸遮罩右侧填充像素 | 设置为5扩展右侧检测区域 |
| face_mask_padding_bottom | face_mask_padding_bottom | 0-30 | 0 | 人脸下方扩展范围 | 人脸遮罩底部填充像素 | 设置为8包含更多下巴区域 |
| face_mask_padding_top | face_mask_padding_top | 0-30 | 0 | 人脸上方扩展范围 | 人脸遮罩顶部填充像素 | 设置为8包含更多额头区域 |
4. 使用技巧和建议
4.1 换脸效果优化
- 选择合适的源图片:使用清晰、正面、光线良好的照片效果最佳
- 调整遮罩范围:适当增加padding值可以让换脸更自然
- 使用增强器:gfpgan系列对亚洲面孔效果较好
4.2 对嘴型效果优化
- 音频质量很重要:使用清晰、无噪音的音频文件
- 调整修剪参数:去掉视频开头和结尾的无用帧
- 合理设置遮罩:嘴部padding不要设置太大,避免不自然
4.3 语音合成技巧
- 选择合适的参考音频:至少10秒以上的清晰语音
- 文本长度适中:太长的文本可能影响质量
- 语言匹配:确保参考音频和目标语言一致
4.4 设备选择建议
- CPU模式:适合测试和小规模处理
- CUDA模式:推荐用于批量处理,速度快
- MPS模式:Mac用户的最佳选择
5. 常见问题解答
5.1 安装问题
Q: 安装后节点不显示怎么办?
A: 检查是否正确安装了所有依赖,特别是ffmpeg和相关Python包。
Q: 模型下载失败?
A: 检查网络连接,某些模型可能需要科学上网才能下载。
5.2 使用问题
Q: 换脸效果不好?
A: 尝试调整face_mask_padding参数,或者使用不同的faceswap_model。
Q: 对嘴型不准确?
A: 确保音频清晰,调整trim_frame参数去掉多余帧。
Q: 语音合成声音不像?
A: 使用更长更清晰的参考音频,确保语言设置正确。
5.3 性能问题
Q: 处理速度太慢?
A: 使用CUDA加速,减少不必要的增强器使用。
Q: 内存不足?
A: 降低视频分辨率,分段处理长视频。
6. 工作流程示例
6.1 基础换脸流程
- 准备源人脸图片 → 加载到source_images
- 准备目标视频 → 加载到target_images
- 设置DeepFuzeFaceSwap节点参数
- 运行获得换脸视频
6.2 完整对嘴型流程
- 准备文本内容 → 输入到LLM_node或直接输入TTS_generation
- 准备参考音频 → 连接到TTS_generation
- 生成语音 → 连接到DeepFuzeAdavance的audio输入
- 准备目标视频 → 连接到DeepFuzeAdavance的images输入
- 运行获得对嘴型视频
6.3 高级组合流程
- 使用LLM_node生成对话内容
- 用TTS_generation合成语音
- 用DeepFuzeAdavance制作对嘴型
- 用DeepFuzeFaceSwap进行换脸
- 最终获得完整的AI生成视频
7. 注意事项
7.1 法律和伦理
- 请勿用于制作虚假信息或欺骗他人
- 尊重他人肖像权和隐私权
- 仅用于合法的创作和娱乐目的
7.2 技术限制
- 处理时间较长,需要耐心等待
- 对硬件要求较高,建议使用独立显卡
- 某些极端角度或光线条件下效果可能不佳
7.3 文件管理
- 定期清理临时文件释放存储空间
- 备份重要的输出文件
- 注意文件命名规范便于管理
这个插件为创作者提供了强大的AI视频制作能力,通过合理使用可以创造出令人惊艳的视频内容。记住要负责任地使用这些技术,创造积极正面的内容!