Project Icon

sd-webui-reactor

Stable Diffusion AI换脸扩展 支持多人脸替换与性别识别

ReActor是Stable Diffusion生态系统中的AI换脸扩展。它支持多人脸替换、性别识别、面部优化和图像超分辨率等功能。通过API和ComfyUI集成实现灵活调用。兼容主流SD WebUI版本,对硬件要求低。可应用于AI艺术创作、影视后期制作等多个领域。

logo

版本

在Boosty上支持我
支持本项目

提交活动 最后提交 未解决问题 已解决问题 许可证

中文 | Русский

Stable Diffusion的ReActor

快速简单的人脸替换扩展,具有多项改进,没有NSFW过滤(未经审查,使用时请自行承担责任


最新更新 | 安装 | 功能 | 使用方法 | API | 故障排除 | 更新 | ComfyUI | 免责声明

示例

最新更新内容

点击展开

0.7.0 BETA2

  • X/Y/Z功能得到改进!新增一个参数:现在可以选择多个人脸模型来创建多种替换效果,以选择最佳效果!
0.7.0-新特性-05

要使用"人脸模型"轴,你需要启用ReActor并选择任意人脸模型作为源:
0.7.0-新特性-070.7.0-新特性-06

完整尺寸演示图:xyz_demo_2.png

0.7.0 BETA1

  • 支持X/Y/Z脚本(最多3个轴:CodeFormer权重、修复器可见度、人脸蒙版校正)
0.7.0-新特性-03 0.7.0-新特性-04

完整尺寸演示图:xyz_demo.png

别忘了启用ReActor并设置任意源(以防止"无源"错误)

0.7.0 ALPHA1

  • 现在可以混合人脸来构建混合人脸模型("工具->人脸模型->混合")- 应广大用户要求

0.7.0-新特性-010.7.0-新特性-02

  • 安装脚本中支持CUDA 12(用于1.17.0 ORT-GPU库)
  • 新增"检测"选项卡,包含"阈值"和"最大人脸数"参数

0.6.1 BETA3

  • "放大"选项卡中新增"强制放大"选项:即使未检测到人脸,ReActor也会运行放大器(FR https://github.com/Gourieff/sd-webui-reactor/issues/116)
  • 当选择多图像模式或文件夹模式(包括随机模式)时,ReActor会在处理过程中显示源图像的文件名

0.6.1 BETA2

  • 选择"多图像"或"源文件夹"时,"保存原图"选项现在可以正常工作
  • "源文件夹"的随机模式
0.6.1-新特性-01

0.6.0

  • 新标志
  • 适配 A1111 1.7.0 版本(适当的 GFPGAN 加载器)
  • 主模型文件的新 URL
  • 用户界面重新设计
  • 现在可以加载多个源图像(带有参考面孔)或设置包含面部图像的文件夹路径
0.6.0-whatsnew-01 0.6.0-whatsnew-02

0.5.1

  • 您可以将面部模型保存为 "safetensors" 文件(存储在 <sd-web-ui-folder>\models\reactor\faces 中)并将它们加载到 ReActor 中,保留您使用的面孔的超轻量级面部模型;
  • "面部遮罩校正"选项 - 如果您在面部轮廓周围遇到一些像素化问题,此选项将会很有用;
0.5.0-whatsnew-01

安装

A1111 WebUI / WebUI-Forge | SD.Next | Google Colab SD WebUI

如果您使用 AUTOMATIC1111 SD WebUISD WebUI Forge

  1. (对于 Windows 用户):
  1. 在 web-ui 中,转到"扩展"选项卡,加载"可用"扩展,在搜索字段中输入"ReActor",或在"从 URL 安装"选项卡中使用此 URL https://github.com/Gourieff/sd-webui-reactor - 然后点击"安装"
  2. 请等待几分钟,直到安装过程完成(请耐心等待,不要中断过程)
  3. 检查 SD-WebUI 控制台中的最后一条消息:
  • 如果您看到消息"--- 请重新启动服务器!---"- 请执行此操作,停止服务器(CTRL+C 或 CMD+C)并重新启动 - 或者只需转到"已安装"选项卡,点击"应用并重新启动 UI"
  • 如果您看到消息"完成!",只需重新加载 UI 即可
  1. 尽情使用吧!

如果您使用 SD.Next

  1. 如果正在运行,请关闭(停止)您的 SD WebUI 服务器
  2. (对于 Windows 用户)请参阅 Automatic1111 的第 1 步(如果您按照这些步骤(第 VIII 节)进行操作,请转到第 5 步)
  3. 转到 (Windows)automatic\venv\Scripts 或 (MacOS/Linux)automatic/venv/bin,为该文件夹运行终端或控制台 (cmd) 并输入 activate
  4. 运行 pip install insightface==0.7.3
  5. 运行 SD.Next,转到"扩展"选项卡,在"从 URL 安装"选项卡中使用此 URL https://github.com/Gourieff/sd-webui-reactor,然后点击"安装"
  6. 请等待几分钟,直到安装过程完成(请耐心等待,不要中断过程)
  7. 检查 SD.Next 控制台中的最后一条消息:
  • 如果您看到消息"--- 请重新启动服务器!---" - 停止服务器(CTRL+C 或 CMD+C)或只需关闭您的控制台
  1. 转到 automatic\extensions\sd-webui-reactor 目录 - 如果您在那里看到 models\insightface 文件夹,其中包含文件 inswapper_128.onnx,只需将该文件移动到 automatic\models\insightface 文件夹
  2. 运行您的 SD.Next WebUI 并尽情使用吧!

如果您使用 Cagliostro Colab UI

  1. 在活动的 WebUI 中,转到"扩展"选项卡,加载"可用"扩展,在搜索字段中输入"ReActor",或在"从 URL 安装"选项卡中使用此 URL https://github.com/Gourieff/sd-webui-reactor - 然后点击"安装"
  2. 请等待几分钟,直到安装过程完成(请耐心等待,不要中断过程)
  3. 当您看到消息"--- 请重新启动服务器!---"(在 Colab Notebook 的"启动 Cagliostro Colab UI"部分)时 - 只需转到"已安装"选项卡并点击"应用并重新启动 UI"
  4. 尽情使用吧!

特性

  • 非常快速和准确的图像面部替换(换脸)
  • 支持多个面部
  • 性别检测
  • 能够保存原始图像(在替换之前制作)
  • 替换面部的面部修复
  • 放大结果图像
  • 保存和加载 Safetensors 面部模型
  • 面部遮罩校正以避免面部轮廓周围的任何像素化
  • 能够设置后处理顺序
  • 与不同的 SD WebUI 完全兼容:Automatic1111、SD.Next、Cagliostro Colab UI
  • 即使使用 CPU 也能快速运行,SD WebUI 的 ReActor 对您的 GPU 性能完全不挑剔
  • 自 0.5.0 版本起支持 CUDA 加速
  • API 支持:SD WebUI 内置和外部(通过 POST/GET 请求)
  • ComfyUI 支持
  • Mac M1/M2 支持
  • 控制台日志级别控制
  • 无 NSFW 过滤器(此扩展面向高度发展的知识分子,而非变态者;我们的社会必须在其发展道路上朝着最高标准而非最低标准发展 - 这是发展和进化的本质;因此,我的立场是 - 成熟思想的人足够聪明,能够自己理解什么是好什么是坏,并为个人行为承担全部责任;对于其他人 - 在他们理解宇宙如何运作之前,没有"过滤器"能够帮助)

使用方法

使用此软件即表示您同意免责声明

  1. 在"ReActor"下拉菜单中,导入包含面部的图像;
  2. 打开"启用"复选框;
  3. 就是这样,现在生成的结果将具有您选择的面部。

人脸索引

ReActor 按以下顺序检测图像中的人脸: 从左到右,从上到下

如果需要指定人脸,可以为源图像和输入图像设置索引。

检测到的第一个人脸索引为 0。

您可以按需要的顺序设置索引。 例如:0,1,2(源图像);1,0,2(输入图像)。 这意味着:第二个输入人脸(索引=1)将被第一个源人脸(索引=0)替换,依此类推。

性别

您可以指定要在图像中检测的性别。 ReActor 只会替换符合给定条件的人脸。

结果人脸模糊

使用"恢复人脸"选项。您也可以尝试"放大器"选项,或者使用"附加功能"选项卡中的放大器进行更精细的控制。 您还可以设置后期处理顺序(从 0.1.0 版开始):

旧的逻辑是相反的(先放大->然后恢复),导致放大后人脸质量较差(并且纹理差异很大)。

结果中有多个人脸

使用"逗号分隔的人脸编号"选项为交换源和结果图像选择要交换的人脸编号。您可以使用不同的索引顺序。

结果完全是黑色的

这意味着 NSFW 过滤器检测到您的图像是 NSFW。

图像到图像

您可以选择在源图像或生成的图像上激活交换,或使用复选框在两者上都激活。在源图像上激活允许您从给定的基础开始并对其应用扩散过程。

ReActor 可以与修复绘制一起使用 - 但只有蒙版部分会被交换。如果启用了"放大器",请将"修复绘制区域"设为"仅蒙版"选项。否则,请通过附加功能选项卡或通过脚本加载器(屏幕下方)使用"SD 放大"或"Ultimate SD 放大"选项进行放大。

附加功能选项卡

从 0.5.0 版本开始,您可以通过附加功能选项卡使用 ReActor。它提供了超快的性能,并能够避免 SD 管道导致原始图像细节模糊的情况下进行人脸到图像的交换

API

您可以使用内置的 Webui API 或通过外部 API 使用 ReActor。

请按照**此页面**的详细说明进行操作。

故障排除

I. "models 目录中至少应该有一个模型"

请检查存储"inswapper_128.onnx"模型的路径。它必须位于 stable-diffusion-webui\models\insightface 文件夹内。如果它存储在其他目录中,请将其移动到那里。

II. 安装 Insightface 或其他依赖项的任何问题

(适用于 Mac M1/M2 用户)如果在尝试安装 Insightface 时遇到错误 - 请阅读 https://github.com/Gourieff/sd-webui-reactor/issues/42

(适用于 Windows 用户)如果您已安装 VS C++ Build Tools 或 MS VS 2022 但仍然遇到问题,请尝试下一步:

  1. 关闭(停止)您的 SD WebUI 服务器并重新启动它

(适用于任何操作系统用户)如果问题仍然存在,请执行以下操作:

  1. 如果正在运行,请关闭(停止)您的 SD WebUI 服务器
  2. 转到(Windows)venv\Lib\site-packages文件夹或(MacOS/Linux)venv/lib/python3.10/site-packages
  3. 如果您看到任何以~开头的文件夹名称(例如"~rotobuf") - 删除它们
  4. 转到(Windows)venv\Scripts或(MacOS/Linux)venv/bin
  5. 为该文件夹运行终端或控制台(cmd),并输入activate
  6. 首先更新您的 pip:pip install -U pip
  7. 然后逐个执行:
    • pip install insightface==0.7.3
    • pip install onnx
    • pip install "onnxruntime-gpu>=1.16.1"
    • pip install opencv-python
    • pip install tqdm
  8. 输入deactivate,您可以关闭终端或控制台并启动 SD WebUI,ReActor 应该正常启动 - 如果没有,欢迎来到问题部分。

III. "TypeError: UpscaleOptions.init() got an unexpected keyword argument 'do_restore_first'"

首先 - 您需要禁用任何其他基于 Roop 的扩展:

  • 转到"扩展 -> 已安装"选项卡,取消选中除此之外的任何基于 Roop 的扩展
  • 点击"应用并重启 UI"

替代解决方案:

IV. "AttributeError: 'FaceSwapScript' object has no attribute 'enable'"

可能需要禁用"SD-CN-Animation"扩展(或可能是导致冲突的其他扩展)

V. "INVALID_PROTOBUF : Load model from <...>\models\insightface\inswapper_128.onnx failed:Protobuf parsing failed" 或 "AttributeError: 'NoneType' object has no attribute 'get'" 或 "AttributeError: 'FaceSwapScript' object has no attribute 'save_original'"

如果模型文件inswapper_128.onnx有问题,可能会出现此错误

尝试从这里手动下载, 并将其放入stable-diffusion-webui\models\insightface目录,替换现有文件

六、"ValueError: 此 ORT 构建启用了 ['TensorrtExecutionProvider', 'CUDAExecutionProvider', 'CPUExecutionProvider']" 或 "ValueError: 此 ORT 构建启用了 ['AzureExecutionProvider', 'CPUExecutionProvider']"

  1. 如果您的 SD WebUI 服务器正在运行,请关闭(停止)它
  2. 进入 (Windows)venv\Lib\site-packages 或 (MacOS/Linux)venv/lib/python3.10/site-packages,查看是否有以"~"开头的文件夹名称(例如"~rotobuf"),删除它们
  3. 进入 (Windows)venv\Scripts 或 (MacOS/Linux)venv/bin,在那里运行终端或控制台 (cmd),然后输入 activate
  4. 接着执行:
  • python -m pip install -U pip
  • pip uninstall -y onnxruntime onnxruntime-gpu onnxruntime-silicon onnxruntime-extensions
  • pip install "onnxruntime-gpu>=1.16.1"

如果这没有帮助 - 似乎您有另一个扩展在 SD WebUI 检查要求时重新安装了 onnxruntime。请查看您的扩展列表。某些扩展可能会导致每次 SD WebUI 运行时将 onnxruntime-gpu 重新安装为 onnxruntime<1.16.1
ORT 1.16.0 存在一个错误 https://github.com/microsoft/onnxruntime/issues/17631 - 请勿安装它!

七、"ImportError: 无法从 'google.protobuf.internal' 导入名称 'builder'"

  1. 如果您的 SD WebUI 服务器正在运行,请关闭(停止)它
  2. 进入 (Windows)venv\Lib\site-packages 或 (MacOS/Linux)venv/lib/python3.10/site-packages,查看是否有以"~"开头的文件夹名称(例如"~rotobuf"),删除它们
  3. 进入"google"文件夹(在"site-packages"内),删除那里任何以"~"开头的文件夹
  4. 进入 (Windows)venv\Scripts 或 (MacOS/Linux)venv/bin,在那里运行终端或控制台 (cmd),然后输入 activate
  5. 接着执行:
  • python -m pip install -U pip
  • pip uninstall protobuf
  • pip install "protobuf>=3.20.3"

如果此方法不起作用 - 可能有其他扩展依赖于错误版本的 protobuf,SD WebUI 在启动时的要求检查中安装了它

八、(针对 Windows 用户)如果您仍然无法构建 Insightface,或者只是不想安装 Visual Studio 或 VS C++ 构建工具 - 请执行以下操作:

  1. 如果您的 SD WebUI 服务器正在运行,请关闭(停止)它
  2. 下载并将预构建的 Insightface 包放入 stable-diffusion-webui(或 SD.Next)根文件夹,即您有"webui-user.bat"文件或(A1111 便携版)"run.bat"的位置
  3. 从 stable-diffusion-webui(或 SD.Next)根文件夹运行 CMD 并执行 .\venv\Scripts\activate
    或者
    (A1111 便携版)运行 CMD
  4. 然后更新您的 PIP:python -m pip install -U pip
    或者
    (A1111 便携版)system\python\python.exe -m pip install -U pip
  5. 然后安装 Insightface:pip install insightface-0.7.3-cp310-cp310-win_amd64.whl
    或者
    (A1111 便携版)system\python\python.exe -m pip install insightface-0.7.3-cp310-cp310-win_amd64.whl
  6. 尽情使用吧!

九、2023年8月7日更新问题

如果在执行 git pull 后您看到消息:Merge made by the 'recursive' strategy,然后当您检查 git status 时看到 Your branch is ahead of 'origin/main' by

请执行以下操作:

extensions\sd-webui-reactor 文件夹内运行终端或控制台 (cmd),然后:

  • git reset f48bdf1 --hard
  • git pull

或者

只需删除 extensions 目录内的 sd-webui-reactor 文件夹,然后运行终端或控制台 (cmd) 并输入 git clone https://github.com/Gourieff/sd-webui-reactor

十、StabilityMatrix 问题

如果您在 StabilityMatrix 包管理器中安装此扩展时遇到任何问题 - 请阅读此处了解如何解决:https://github.com/Gourieff/sd-webui-reactor/issues/129#issuecomment-1768210875

更新

检查扩展更新的一个好方法是:https://github.com/Gourieff/sd-webui-extensions-updater

ComfyUI

您可以在 ComfyUI 中使用 ReActor。
安装说明请参阅 ReActor Node 仓库

免责声明

本软件旨在为快速发展的 AI 生成媒体行业做出富有成效的贡献。它将帮助艺术家完成诸如制作自定义角色动画或将角色用作服装模特等任务。

本软件的开发者意识到其可能存在的非道德应用,并致力于采取预防措施来防止这些行为。我们将继续在遵守法律和道德的同时,朝着积极的方向发展这个项目。

本软件的用户应当在遵守当地法律的同时负责任地使用本软件。如果使用了真实人物的面部,建议获得相关人员的同意,并在在线发布内容时明确说明这是深度伪造。开发者和贡献者不对最终用户的行为负责。

使用此扩展即表示您同意不创建任何:

  • 违反任何法律的内容;
  • 对他人造成伤害的内容;
  • 传播(散布)任何可能造成伤害的信息(无论公开或个人)或图像(无论公开或个人);
  • 传播错误信息;
  • 针对弱势群体的内容。

本软件使用了由 InsightFace 提供的预训练模型 buffalo_linswapper_128.onnx。这些模型在以下条件下包含:

来自 insightface 许可证:InsightFace 的预训练模型仅可用于非商业研究目的。这包括自动下载的模型和手动下载的模型。

本软件的用户必须严格遵守这些使用条件。本软件的开发者和维护者对 InsightFace 预训练模型的任何滥用不承担责任。

请注意,如果您打算将本软件用于任何商业目的,您需要训练自己的模型或找到可以商业使用的模型。

模型哈希值

安全使用的模型具有以下哈希值:

inswapper_128.onnx

MD5:a3a155b90354160350efd66fed6b3d80
SHA256:e4a3f08c753cb72d04e10aa0f7dbe3deebbf39567d4ead6dce08e98aa49e16af

1k3d68.onnx

MD5:6fb94fcdb0055e3638bf9158e6a108f4
SHA256:df5c06b8a0c12e422b2ed8947b8869faa4105387f199c477af038aa01f9a45cc

2d106det.onnx

MD5:a3613ef9eb3662b4ef88eb90db1fcf26
SHA256:f001b856447c413801ef5c42091ed0cd516fcd21f2d6b79635b1e733a7109dbf

det_10g.onnx

MD5:4c10eef5c9e168357a16fdd580fa8371
SHA256:5838f7fe053675b1c7a08b633df49e7af5495cee0493c7dcf6697200b85b5b91

genderage.onnx

MD5:81c77ba87ab38163b0dec6b26f8e2af2
SHA256:4fde69b1c810857b88c64a335084f1c3fe8f01246c9a191b48c7bb756d6652fb

w600k_r50.onnx

MD5:80248d427976241cbd1343889ed132b3
SHA256:4c06341c33c2ca1f86781dab0e829f88ad5b64be9fba56e56bc9ebdefc619e43

如果您从未经验证(或不受信任)的来源下载这些模型,请检查哈希值

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号