介绍

bilibili

可用于

  • txt2img
  • img2img
  • batch processing (batch count / batch size)
  • img2img Batch

下载地址

https://github.com/ototadana/sd-face-editor

安装

  1. 打开“扩展”选项卡,然后打开“从URL安装”选项卡。
  2. 在“扩展的 git 存储库的 URL”字段中输入 https://github.com/ototadana/sd-face-editor.git
  3. 单击“安装”按钮并等待“安装到/home/ototadana/stable-diffusion-webui/extensions/sd-face-editor。使用“已安装”选项卡重新启动“消息以显示
  4. 转到“已安装”选项卡,然后单击“应用并重新启动UI”

用法

  1. 单击“面部编辑器”并选中“已启用”。Face Editor - 面部修复脚本 - 图1
  2. 然后像往常一样输入提示,然后单击“生成”按钮以修改生成的图像中的人脸。Face Editor - 面部修复脚本 - 图2
  3. 如果您对结果不满意,请调整参数并重新运行。请参阅提示

技巧

推荐设置

请先尝试以下设置:
  • “掩码大小”设置为 。0
  • 选中“仅在面膜内涂抹”
  • “整个图像的降噪强度”设置为 。0

Face Editor - 面部修复脚本 - 图3

轮廓不适

如果您对面部轮廓感到不舒服,请尝试增加“面罩尺寸”值。当面部不正视前方时,通常会发生这种不适。

Face Editor - 面部修复脚本 - 图4

改变面部表情

如果要更改面部表情,请使用“提示面部”选项。

Face Editor - 面部修复脚本 - 图5

修复已存在的图像

如果要修改现有图像的表面,而不是创建新图像,请执行以下步骤:
  1. 在img2img选项卡中打开要编辑的图像 建议您使用与原始图像相同的设置(提示、采样步骤和方法、种子等)。 因此,最好从“PNG信息”选项卡开始。 1. 单击“PNG 信息”选项卡。 2. 上传要编辑的图像。 3. 单击发送到 img2img 按钮。
  2. 禁用人脸编辑器扩展 在这里,使用脚本而不是扩展
    。 因此,请关闭人脸编辑器扩展中的“已启用”复选框。
  3. 打开人脸编辑器脚本并生成 1. 在 img2img 选项卡中,选择人脸编辑器脚本。Face Editor - 面部修复脚本 - 图6 2. 单击生成按钮。

使用控制网进行人脸控制

您可以通过启用“将脚本应用于面部”来控制 ControlNet 的面部表情。通常,在人脸图像生成期间不会执行其他脚本,但通过启用此选项,它们将执行。 但是,使用此选项时必须小心:ControlNet 输入图像只能在 img2img 中指定,并且必须在 ControlNet 面板中指定任何内容。在“控制网”面板中指定它将完全折叠图像。 欲了解更多信息,请参阅:这里

工作原理

此脚本执行以下步骤:

步骤 0

首先,根据提示和其他设置照常生成图像。此脚本充当这些图像的后处理器。

步骤 1

检测图像上的人脸。Face Editor - 面部修复脚本 - 图7 ### 步骤 2 裁剪检测到的人脸图像并将其大小调整为 512x512。Face Editor - 面部修复脚本 - 图8 ### 步骤 3 使用图像运行 img2img 以创建新的人脸图像。Face Editor - 面部修复脚本 - 图9 ### 步骤 4 调整新人脸图像的大小并将其粘贴到原始图像位置。Face Editor - 面部修复脚本 - 图10 ### 步骤 5 要删除粘贴图像时生成的边框,请遮罩除面部以外的所有边框并运行上色Face Editor - 面部修复脚本 - 图11 ### 完成 Face Editor - 面部修复脚本 - 图12 ## 参数 ### 要检测的最大人脸数 (1-20) 如果要减少要检测的人脸数,请使用此参数。 如果找到的人脸数多于此处设置的数量,则将忽略较小的人脸。 这是步骤 1 的参数。

人脸检测置信度 (0.7-1.0)

人脸检测的置信度阈值。如果要检测更多人脸,请设置较低的值。 这是步骤 1 的参数。

面边距 (1.0-2.0)

通过放大指定面部裁剪的边距大小。 如果其他参数完全相同,但此值不同,则创建的新面孔的氛围将不同。

Face Editor - 面部修复脚本 - 图13

这是步骤 2 的参数。

提示人脸

提示生成新人脸。 如果未指定此参数,则使用在屏幕顶部输入的提示。 这是步骤 3 的参数。

人脸图像的降噪强度 (0.1-0.8)

降噪强度,焕然一新。 如果值太小,则无法校正面部塌陷,但如果太大,则很难与整个图像融合。

强度:0.4 Face Editor - 面部修复脚本 - 图14

strength: 0.6 Face Editor - 面部修复脚本 - 图15

strength: 0.8 Face Editor - 面部修复脚本 - 图16

This is the parameter for step-3.

Mask size (0-64)

Size of the mask area when inpainting to blend the new face with the whole image.

size: 0 Face Editor - 面部修复脚本 - 图17

size: 10 Face Editor - 面部修复脚本 - 图18

尺寸: 20 Face Editor - 面部修复脚本 - 图19

这是步骤 5 的参数。

蒙版模糊 (0-64)

修复时模糊区域的大小,以将新面孔与整个图像混合。 这是步骤 5 的参数。

整个图像的去噪强度 (0.0-1.0)

修复时的去噪强度,使新面孔与整个图像融为一体。 如果边界线太突出,请增加此值。 这是步骤 5 的参数。

仅在面膜内涂抹

粘贴以面部形状剪切的图像,而不是方形图像。 这是步骤 4 的参数。 欲了解更多信息,请参阅:这里

保存原始图像

指定修改前是否保存图像。 欲了解更多信息,请参阅:这里

显示中间步骤

指定是否显示检测到的人脸和蒙版的图像。

将脚本应用于人脸

通常,在人脸图像生成期间不会执行其他脚本,但通过启用此选项,它们将执行。 欲了解更多信息,请参阅:这里

应用程序接口

如果要将此脚本用作 API 中的扩展 (alwayson_scripts),请将“face editor ex”指定为脚本名称,如下所示:
  1. "alwayson_scripts": {
  2. "face editor ex": {
  3. "args": [{"prompt_for_face": "smile"}]
  4. },
  • 如上所述,通过将对象指定为 args 的第一个参数,可以通过关键字指定参数。
  • 有关可用关键字,请参阅源代码
欲了解更多信息,请参阅:这里