免费下载
夸克:https://pan.quark.cn/s/6610cda0ec67
迅雷:https://pan.xunlei.com/s/VNxc4xcmu6z87vPZEUEIOeMaA1?pwd=h7yf#
一款ComfyUI中快速换脸的节点,来源github作者:Gourieff
存放路径:ComfyUI_windows_portable\ComfyUI\custom_nodes
如果您没有“face_yolov8m.pt”Ultralytics 模型 - 您可以从Assets下载它(需要魔法)
并将其放入“ComfyUI\models\ultralytics\bbox”目录,以及“sam_vit_b_01ec64.pth”模型 - 下载(需要魔法)
并将其放入“ComfyUI\models\sams”目录中;
使用此节点可以获得换脸过程的最佳结果:
- ReActorImageDublicator 节点 - 对于创建视频的人来说相当有用,它有助于将一张图像复制到多个帧以将它们与 VAE 编码器一起使用(例如实时头像):
- ReActorFaceSwapOpt(主节点的简化版本)+ ReActorOptions 节点用于设置一些附加选项,例如(新)“输入/源面单独顺序”。是的!您现在可以按照您想要的方式设置索引中面孔的顺序(默认情况下为“从大到小”)!
- 分析目标图像时速度提升很小(不幸的是,与交换和恢复相比,它仍然相当慢......)
(如遇失效,请加v:xkd2310拉你)
安装
ComfyUI(Windows)
适用于 Windows 的独立的ComfyUI
- 请执行下列操作:
- 安装Visual Studio 2022(社区版本 - 构建 Insightface 需要此步骤)
- 或者仅使用 VS C++ 构建工具并在“工作负载 -> 桌面和移动”下选择“使用 C++ 进行桌面开发”
- 或者,如果您不想安装 VS 或 VS C++ BT - 请按照故障排查安装
- 进入
ComfyUI\custom_nodes
目录 - 打开控制台并运行
git clone https://github.com/Gourieff/comfyui-reactor-node
- 运行
install.bat
- (从0.3.0版本开始)从下面的链接下载额外的facerestorers模型并将它们放入目录
ComfyUI\models\facerestore_models
:
https://huggingface.co/datasets/Gourieff/ReActor/tree/main/models/facerestore_models(需要魔法) - 运行 ComfyUI 并在菜单中
ReActor
或使用搜索找到 ReActor 节点
使用
您可以在菜单中ReActor
或使用搜索找到 ReActor 节点(只需在搜索字段中输入“ReActor”)
节点列表:
- ReActorFaceSwap(主节点)
- ReActorLoadFaceModel(加载人脸模型)
- ReActorSaveFaceModel(保存人脸模型)
连接所有必需的插槽并运行查询。
主节点输入
input_image
- 是要处理的图像(目标图像,SD WebUI 扩展中的“目标图像”的模拟);- 支持的节点:“加载图像”、“加载视频”或任何其他提供图像作为输出的节点;
source_image
- 是一张或多张要交换的面孔的图像input_image
(源图像,SD WebUI 扩展中的“源图像”的模拟);- 支持的节点:“加载图像”;
face_model
- 是“加载面部模型”节点或另一个 ReActor 节点的输入,用于提供您之前通过“保存面部模型”节点创建的面部模型文件(面部嵌入);- 支持的节点:“加载面模型”;
主节点输出
IMAGE
- 是带有结果图像的输出;- 支持的节点:任何以图像作为输入的节点;
FACE_MODEL
- 是提供在交换过程中构建的源面模型的输出;- 支持的节点:“保存人脸模型”、“ReActor”;
面部修复
从 0.3.0 版本开始,ReActor Node 具有内置的面部恢复功能。
只需下载您想要的模型,并选择其中之一即可在换脸过程中恢复生成的脸部。它将增强面部细节并使您的结果更加准确。
面指数
ReActor 按照以下顺序检测图像中的人脸:
左->右,上->下
如果需要指定人脸,可以为源图像和输入图像设置索引。
第一个检测到的人脸索引为0。
您可以按照您需要的顺序设置索引。
例如:0,1,2(对于源); 1,0,2(对于输入)。
这意味着:第二个输入面(索引 = 1)将被第一个源面(索引 = 0)交换,依此类推。
性别
您可以指定要在图像中检测的性别。
仅当满足给定条件时,ReActor 才会交换面。
脸部模型
从版本 0.4.0 开始,您可以将面部模型保存为“safetensors”文件(存储在ComfyUI\models\reactor\faces
)并将其加载到 ReActor 中,实现不同的场景并保留您使用的面部的超轻量级面部模型。
要使新模型出现在“加载脸部模型”节点的列表中 - 只需刷新 ComfyUI Web 应用程序的页面即可。
(我建议你使用 ComfyUI Manager - 否则,如果您之前没有保存,刷新页面后您的工作流程可能会丢失)。
故障排除
一、(对于 Windows 用户)如果由于某些原因您仍然无法构建 Insightface 或者只是不想安装 Visual Studio 或 VS C++ 构建工具 - 请执行以下操作:
- (ComfyUI Portable) 从根文件夹检查 Python 版本:
运行 CMD 并键入python_embeded\python.exe -V
- 下载适用于 Python 3.10或Python 3.11(如果在上一步中看到 3.11)或Python 3.12(如果在上一步中看到 3.12)的预构建 Insightface 包,并将其放入 stable-diffusion-webui(A1111 或 SD.Next) )根文件夹(其中有“webui-user.bat”文件)或进入 ComfyUI 根文件夹(如果您使用 ComfyUI Portable)
- 从根文件夹运行:
- (ComfyUI Portable)运行CMD
- 然后更新您的 PIP:
python_embeded\python.exe -m pip install -U pip
然后安装Insightface:
python_embeded\python.exe -m pip install insightface-0.7.3-cp310-cp310-win_amd64.whl
(适用于 3.10) 或python_embeded\python.exe -m pip install insightface-0.7.3-cp311-cp311-win_amd64.whl
(适用于 3.11) 或python_embeded\python.exe -m pip install insightface-0.7.3-cp312-cp312-win_amd64.whl
(适用于 3.12)
二. “AttributeError:‘NoneType’对象没有属性‘get’”
如果模型文件有问题,可能会出现此错误inswapper_128.onnx
尝试从这里手动下载它 并将其ComfyUI\models\insightface
替换现有的
三. “reactor.execute() 得到了意外的关键字参数‘reference_image’”
这意味着输入点已随最新更新而更改,从工作流程中删除当前的 ReActor 节点并再次添加
四.与 ReActor 节点一起使用时出现 ControlNet Aux 节点导入失败错误
- 如果 ComfyUI 运行,请关闭它
- 转到 ComfyUI 根文件夹,打开 CMD 并运行:
python_embeded\python.exe -m pip uninstall -y opencv-python opencv-contrib-python opencv-python-headless
python_embeded\python.exe -m pip install opencv-python==4.7.0.72
五. future-0.18.3 安装期间出现“ModuleNotFoundError: No module named 'basicsr'”或“subprocess-exited-with-error”
-
下载https://github.com/Gourieff/Assets/raw/main/comfyui-reactor-node/future-0.18.3-py3-none-any.whl
-
将其放入 ComfyUI root 并运行:
python_embeded\python.exe -m pip install future-0.18.3-py3-none-any.whl
- 然后:
python_embeded\python.exe -m pip install basicsr
六.当您尝试访问git clone
存储库时,“致命:fetch-pack:无效的索引包输出”
尝试克隆--depth=1
(仅限最后一次提交):
git clone --depth=1 https://github.com/Gourieff/comfyui-reactor-node
然后检索其余部分(如果需要):
git fetch --unshallow
更新
只需将此Repo中的 .bat 或 .sh 脚本放入该ComfyUI\custom_nodes
目录,并在需要检查更新时运行它
免责声明
该软件旨在为快速发展的人工智能生成媒体行业做出富有成效的贡献。它将帮助艺术家完成诸如动画自定义角色或使用角色作为服装模型等任务。
该软件的开发人员意识到其可能的不道德应用,并致力于对其采取预防措施。我们将在遵守法律和道德的同时,继续朝积极的方向发展该项目。
本软件的用户应负责任地使用本软件,同时遵守当地法律。如果使用真人面孔,建议用户在网上发布内容时征得相关人员的同意,并明确指出这是深度伪造的。该软件的开发者和贡献者不对最终用户的行为负责。
通过使用此扩展,您同意不创建任何以下内容:
- 违反任何法律;
- 对一个人或多个人造成任何伤害;
- 传播(传播)任何可能造成伤害的信息(公共或个人)或图像(公共或个人);
- 传播错误信息;
- 针对弱势群体。
该软件利用InsightFace提供的预训练模型buffalo_l
和。这些模型包含在以下条件下:inswapper_128.onnx
来自 insighface 许可证:InsightFace 的预训练模型仅可用于非商业研究目的。这包括自动下载模型和手动下载模型。
本软件的用户必须严格遵守这些使用条件。该软件的开发人员和维护人员不对 InsightFace 预训练模型的任何滥用负责。
请注意,如果您打算将此软件用于任何商业目的,您将需要训练自己的模型或寻找可以商业使用的模型。