> For the complete documentation index, see [llms.txt](https://docs.seaart.ai/guide-1/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.seaart.ai/guide-1/zhong-wen/3-jin-jie-zhi-nan/33-comfyui-xiang-jie/zhong-hui.md).

# 重绘

学习在 ComfyUI 中重绘和修改图像！本指南涵盖头发、服装、身体等，使用“Segment anything”等节点进行精准修改。

重绘：更换**发色、发型、胸部、腹肌、服饰等**

在开始搭建节点之前可以先确定一个流程，比如想要更换头发颜色，需要这两个步骤：

**第一步：**&#x9700;要先将头发识别出来，可以选择手动涂抹或者自动识别

**第二步：**&#x5C40;部重绘，修改识别到的区域

<figure><img src="https://751506775-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FI1niezbE5y99beoQQ5aL%2Fuploads%2FsxsN73d68mNw1yHexx3a%2Ff3d2ee84-875d-486c-9136-08a641242082.png?alt=media&amp;token=d3353c80-eb9d-4d92-843f-cf4ac44ef50b" alt="" width="510"><figcaption></figcaption></figure>

接下来就根据步骤开始搭建节点：

## **方法一：segment anything节点**

### **第一步：识别头发**

1. 上传图片后添加segment anything节点，拖出节点，加载两个对应的模型，将图片连接在节点上，输入想要识别出的区域

> 新增节点：
>
> **GroundingDinoSAMSegment (segment anything)**：SAMLoader (Impact)、GroundingDinoModelLoader (segment anything)&#x20;
>
> **Parameters:**&#x20;
>
> device\_model: Prefer GPU

2. 为了让蒙版识别的更准确，再加入一个**segment anything**识别出脸部，输入端可以使用与之前segment anything相同的模型，最后使用**mask-mask**将两个蒙版相减：上面的蒙版减去下面的蒙版，得到了精确的头发部分

**新增节点：**

**Bitwise(MASK - MASK)**

<mark style="color:red;">\*当遇见某些地方无法识别的情况，可以使用这种蒙版相减的方法</mark>

3. 得到蒙版后可以对蒙版进行一些处理，比如这里加上了**GrowMask**和**feathered mask**来扩展蒙版以及对蒙版进行羽化，让最后重绘的图更自然

**新增节点：**

**GrowMask**

**FeatheredMask**

4. 最后可以添加一个蒙版预览节点，查看最终的蒙版效果

<figure><img src="https://content.gitbook.com/content/I1niezbE5y99beoQQ5aL/blobs/vT9CzH5PhDo1sm7SzydZ/%E8%92%99%E7%89%88%E9%A2%84%E8%A7%881%E3%80%821.png" alt="ComfyUI Redraw - Segment Anything - Mask Preview Node" width="422"><figcaption></figcaption></figure>

**新增节点：**

**Convert Mask to Image**

**Preview Image**

5. 为了方便观看，我们可以将这一组节点整理在一起

### **第二步：局部重绘**

1. 这里重绘使用之前提到的**Set Latent Noise Mask**，会参考原图进行重绘，将蒙版节点连接起来

<figure><img src="https://content.gitbook.com/content/I1niezbE5y99beoQQ5aL/blobs/DVg9WNd7bfPxxnpTFdss/%E9%87%8D%E7%BB%98%E8%92%99%E7%89%88%E8%BF%9E%E6%8E%A5.png" alt="ComfyUI Redraw - Partial Repaint - Set Latent Noise Mask" width="513"><figcaption></figcaption></figure>

**新增节点：**

**Set Latent Noise Mask**

2. 接下来添加模型组，按照图生图方式，分别添加**模型、提示词、采样器以及最后的解码**，然后将蒙版组与模型组相连接

<mark style="background-color:yellow;">\*图片需要加入编码进入潜空间重绘</mark>

3. 将所有的线都连接完毕，可以根据自己需求输入对应提示词，设置相关参数，重绘幅度最大为1

注意：在对面部进行重绘时，建议加上**FaceDetailer**，起到了修复面部的作用，将输入端连接对应节点

新增节点：

**FaceDetailer：**&#x55;ltralyticsDetectorProvider、SAMLoader (Impact)

<figure><img src="https://content.gitbook.com/content/I1niezbE5y99beoQQ5aL/blobs/94k8jTZyWAJDUKFjAK0g/%E9%9D%A2%E9%83%A8%E4%BF%AE%E5%A4%8D1.png" alt="ComfyUI Redraw - FaceDetailer"><figcaption></figcaption></figure>

另外因为只需对脸部重绘，不需要两个蒙版相减，可以选中对应节点**Ctrl+B**将节点隐藏，再将对应的节点连接上

\*这样的重绘会对整张脸都进行了重新绘制，相当于换了一个人

关于如何实现同一个人更换不同表情，之后会推出更详细的教程&#x20;

最后我们可以将这组工作流保存，方便下次使用

<figure><img src="https://content.gitbook.com/content/I1niezbE5y99beoQQ5aL/blobs/YIjtQ07SOKrbw3xRWyJm/%E4%BF%9D%E5%AD%98%E6%9F%A5%E7%9C%8B.png" alt="ComfyUI Redraw - Save Workflow"><figcaption></figcaption></figure>

通过这种方法我们可以实现很多一键重绘&#x20;

例如一键丰胸、一键健身、一键修改面部、一键更换服饰、发型等

## **方法二：YoloWorld重绘**

YoloWorld能对某个物体单独抠图，速度比较快，识别相对没有segment精确，有些部分（例如肚子）存在无法检测的情况，可以搭配mask-mask使用

1. 首先与segment anything相同的步骤，加入**Yoloworld ESAM**自动检测需要识别重绘的部分，以一键健身为例，这里无法直接识别需要增肌的区域，因此采用**mask-mask**的方式获取重绘区域，然后对蒙版区域进行处理

<figure><img src="https://751506775-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FI1niezbE5y99beoQQ5aL%2Fuploads%2FvVeDmxFtsonCFdOvyX4C%2F01dc04b8-7029-4c9c-9fdd-edae3b7796d6.png?alt=media&amp;token=9782d01a-a3b6-4570-bd4b-0bab8fee97d6" alt=""><figcaption></figcaption></figure>

<mark style="background-color:yellow;">\*可以在开始前对原始图片进行高清修复</mark>

> **重要参数：**
>
> **confidence\_threshold：**&#x8BC6;别的精确度，数值越小，识别越精确
>
> **iou\_threshold：**&#x8FB9;框重叠度，数值越小，识别越精确
>
> **mask\_combined：**&#x662F;否叠加蒙版，“true”则将蒙版叠加在一张图上输出，“false”会将蒙版单独输出

2. 将蒙版接入重绘蒙版节点：**InpaintModelConditioning**，提示词只对蒙版区域有效，按照图生图模式，加入<mark style="background-color:yellow;">模型-提示词-采样器-解码-预览图片</mark>

<figure><img src="https://content.gitbook.com/content/I1niezbE5y99beoQQ5aL/blobs/EJyhXExmdcqwqnMyxoQM/2.png" alt="ComfyUI Redraw - InpaintModelConditioning"><figcaption></figcaption></figure>

3. 调整相关参数，点击“创作”
