Stable Diffusion面部修复!ADetailer超详细简易技巧教学

这个面部修复扩展可以使图像从这样

变成这样

在低分辨率绘制全身图像时,面部和手部一直是一个难以处理的问题。

这个面部修复的扩展可以完美修复面部,但手部就会用到其他插件。

今天我们主要介绍stable diffusion 的ADetailer extension脸部的修复面部!

第一部分:安装ADetailer

复制链接(https://github.com/Bing-su/adetailer.git),点击安装链接,打开下拉菜单,点击复制链接按钮,然后回到稳定扩散,点击扩展,选择从URL安装,将刚刚复制的安装链接粘贴在此处,点击安装按钮。

出现此界面表示安装完成。

接着点击设置,将屏幕向下滑动,在最左边找到After Detailer,点击进入。然后将屏幕向上滑动,你可以在这里设置要有多少个After Detailer模型。原本是两个,我设为了三个试试看。

这个选项是问你是否要保存遮罩的预览图。是否要保存Adetailer处理后的图像

在点击应用设置之前,再特别说明一下这个选项。这个选项用于设置这边的数量,现在是两个,我们刚刚设为了三个。

点击应用设置以保存配置并点击重新启动UI按钮,这边的数量就变成了三个。

第二部分:脸部修复原理简介

通过 Detailer 脸部修复,您无需手动涂抹局部重绘的遮罩,而是自动化地利用 stable diffusion img2img(图像生成器)中的 inpaint(修复)功能。

我想大家对局部重绘这个概念都很熟悉,所以我不会浪费大家的时间进行详细介绍。

脸部修复的原理大致如下:首先,有一张需要进行脸部修复的原始图像。程序会定位原始图像中脸部的中心,并确定脸部的遮罩范围。然后,在遮罩范围内增加一些噪点,并将其输入 stable diffusion inpaint(局部重绘)模块,重新绘制脸部的遮罩范围。

也就是说,脸部修复涉及到脸部检测、遮罩生成以及局部重绘这三个步骤。

第三部分ADetailer 脸部修复的简易技巧

在安装完扩展程序后,Detailer 会在文生图和图生图中出现。

让我们先来到文生图这边,运行一张需要修复的脸部破损图像。要运行脸部破损图像非常简单,只需将宽度调小一点,并选择全身图像,这样脸部破损的几率几乎是 8~9 成。让我们看看是否存在破损。

嗯…破损非常严重。这是因为我们将宽度调小,并选择了全身图像,导致脸部的噪点减少,从而引发了脸部破损。

让我们试试刚刚安装的ADetailer扩展来修复一下。

点击打开,在这里将画面拉到这个位置。这个是侦测功能,这个是mask遮罩前置处理,这个是inpaint局部重绘。

同时这三个是我们在第二部分出现在设置中的的那三个。

然后将画面向上拉,启用Adetailier来启用这个功能。如果需要,勾选它。

在这个位置可以放置一个以上的标签,不同的标签可以对不同的遮罩进行处理。这个下拉菜单是ADetailer辨识模组,在第一次使用时会自动下载。

它有脸部、手部和全身这几个模组。我们先设定脸部来试试看。

这个是局部重绘的提示。实际上,它的预设值已经适用于大多数情况。

只要勾选这边的启用,就可以处理大部分的图像。来试试看吧。

对于以文生图来说,stable diffusion会先处理一张图像,处理完后再交给!After Detailer处理。

现在是stable diffusion在处理图像。

处理完后,ADetailer将进行脸部定位、侦测以及遮罩与重绘修复。

大家可以先看看这个位置与范围,这个位置与范围是可以手动调整的。处理完后,来看看效果。

脸部修复的效果还是相当不错的。打开图像放大来看看。

这个是修复前的图像

这个是修复后的图像

以这么低的分辨率能够达到这样的效果真的不容易。

让我们讨论一下这三个设置。

首先是检测,其中一个是检测模型置信度阈值,这个滑块控制检测率。数值越高表示检测效果越差,有脸也检测不出来;数值越低表示检测能力超强,不是脸有时也会被检测成脸。

通常情况下,单个人可以设定为0.3左右,如果要检测多个人的脸,需要提高数值。

正常情况下,Stable Diffusion完成后,如果ADetailer检测到脸部,则会显示出需要进行遮罩的范围。

这里没有表示ADetailer没有检测到脸部,所以也没有进行脸部修复的过程。

如果大家遇到这种情况,可以调整刚才那个地方,将该数值设为0.3,试试看。

好了,脸部修复完成后,我们再来看一下遮罩的最小面积比率和最大面积比率。

当遮罩面积太大时,会修改到非脸部的部分。如果遇到这种情况,可以调整最小和最大的拉动条。一般建议使用预设值即可。检测的部分大概就是这样。

接下来是遮罩前置处理。点击这里,这三个选项的控制就是刚才稳定扩散完成后,图像会有一个放大图,就是这个。

你可以手动控制这个范围。让我们试试看。第一个是控制X轴,中间的是控制Y轴,最下面的是控制范围的大小。

手动调整范围可以让您得到更多细节的遮罩处理,不过在低分辨率下差别不大。

接下来是X轴和Y轴,这个很容易理解,就是那个框。如果不在正确位置,可以手动移动它。让我们将X轴设为+90,就是向上移动90个单位。这样大家应该可以理解这三个参数的作用了。

来看看效果吧。

知道为什么没有修复吗?因为框往上拉太多了,脸不在框里面,所以没有办法做遮罩。

接下来是下面这三个,应该与上面是否有新增遮罩标签有关。看文字内容就应该可以理解它的功能。这边就不浪费大家的时间多做解释了。第一个检测的讲完了,第二个遮罩前置处理也讲完了,第三个inpainting局部重绘就跟稳定扩散的inpaint局部重绘一样。

它的设置就是下面这些。

此外还增加了ControlNet,

这个想必大家都很熟悉了,这边也不浪费时间多做解释了。

想要SD安装包和相关插件的小伙伴扫码可免费领取哦~

AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。

感兴趣的小伙伴,赠送全套AIGC学习资料,包含AI绘画、AI人工智能等前沿科技教程和软件工具,具体看这里。

在这里插入图片描述

在这里插入图片描述

一、AIGC所有方向的学习路线

AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

工具都帮大家整理好了,安装就可直接上手!
在这里插入图片描述

三、最新AIGC学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述
在这里插入图片描述

四、AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

在这里插入图片描述

若有侵权,请联系删除

<think>好的,我现在需要帮助用户了解Stable Diffusion的工作原理和操作方法,特别是他们提到的图解教程和零基础入门。首先,我需要整理Stable Diffusion的三个主要组成部分:变分自编码器(VAE)、U-Net和文本编码器。用户可能对每个部分的作用不太清楚,所以我要逐一解释。 接下来,用户可能需要知道扩散过程的具体步骤,包括前向扩散和反向去噪。这里需要区分像素空间和潜在空间,解释为什么潜在空间更高效。同时,结合引用中的信息,比如潜在扩散模型(LDM)的优势是降低计算需求,这点很重要,需要强调。 然后,操作方法部分,用户可能想知道如何使用现有的工具或代码来运行Stable Diffusion。需要提到文本编码器如何处理输入提示,以及负面关键词的应用,引用中的通用负面关键词可以作为例子,但也要提醒用户可以自行添加。 关于图解教程,虽然不能直接提供图片,但可以描述结构图的大致内容,比如VAE的编码和解码过程,U-Net的残差连接结构。可能还需要解释扩散模型的插值任务,如引用2提到的,但用户的问题主要集中在原理和操作,这部分可能次要。 需要确保回答符合系统指令:使用正确的中文,数学公式用$...$,独立公式用$$...$$,并且生成相关问题。同时,引用要自然添加在段落末尾。检查是否有遗漏的部分,比如VAE如何压缩图像,U-Net如何逐步去噪,文本编码器的作用等。最后,确保生成的相关问题与用户的问题相关,比如优化方法、应用场景、安装步骤等。</think>### Stable Diffusion 工作原理详解 Stable Diffusion 是**潜在扩散模型(Latent Diffusion Model, LDM)**的典型应用,其核心流程可分为以下三个阶段: --- #### 一、核心组件与作用 1. **变分自编码器(VAE)** - 作用:将高维像素空间(如$512 \times 512$图像)压缩到低维潜在空间(如$64 \times 64$),降低计算复杂度[^3]。 - 数学表达: $$ z = \text{VAE}_\text{encoder}(x),\quad x' = \text{VAE}_\text{decoder}(z) $$ - 优势:潜在空间维度远低于像素空间,训练效率提升约**45%**。 2. **U-Net** - 结构特点:包含残差连接(ResNet)与注意力机制,逐步去除潜在空间中的噪声。 - 扩散过程:通过反向扩散从$z_T$(纯噪声)逐步生成$z_0$(清晰潜在表示)。 3. **文本编码器(CLIP)** - 将文本提示(如"星空下的城堡")转换为条件向量,通过交叉注意力机制指导图像生成。 --- #### 二、扩散过程图解(文字描述) 1. **前向扩散(加噪)** - 对潜在表示$z_0$逐步添加高斯噪声,经过$T$步后得到$z_T \sim \mathcal{N}(0, I)$。 - 每步噪声强度由调度算法(如DDPM、DDIM)控制。 2. **反向去噪(生成)** - U-Net预测当前步的噪声$\epsilon_\theta(z_t, t, \text{text})$,通过迭代更新: $$ z_{t-1} = \frac{1}{\sqrt{\alpha_t}} \left( z_t - \frac{1-\alpha_t}{\sqrt{1-\bar{\alpha}_t}} \epsilon_\theta \right) + \sigma_t \epsilon $$ - 最终将$z_0$通过VAE解码器还原为像素空间图像。 --- #### 三、操作步骤(零基础入门) 1. **输入配置** - 正向提示:描述目标内容(如"A cat wearing sunglasses, cyberpunk style") - 负面提示:排除不需要的元素(如引用[4]提供的"low quality, blurry") 2. **参数调节** - 采样步数:20-50步(步数↑→质量↑,速度↓) - 引导强度(CFG Scale):7-12(值↑→文本对齐↑,多样性↓) - 随机种子:固定种子可复现结果 3. **生成流程** ```python # 伪代码示例 prompt = "星空下的城堡,4K高清" negative_prompt = "低质量,模糊" latent = torch.randn((1,4,64,64)) # 初始化噪声 for t in timesteps: noise_pred = unet(latent, t, text_embeddings) latent = scheduler.step(noise_pred, t, latent) image = vae.decode(latent) ``` ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值