ComfyUI插件:ComfyUI Impact 节点(四)

前言:

学习ComfyUI是一场持久战,而 ComfyUI Impact 是一个庞大的模块节点库,内置许多非常实用且强大的功能节点 ,例如检测器、细节强化器、预览桥、通配符、Hook、图片发送器、图片接收器等等。通过这些节点的组合运用,我们可以实现的工作有很多,例如自动人脸检测和优化修复、区域增强、局部重绘、控制人群、发型设计、更换模特服饰等。在ComfyUI的进阶之路上,ComfyUI Impact是每个人不可绕过的一条大河,所以本篇文章将带领大家理解并学会使用这些节点。祝大家学习顺利,早日成为ComfyUI的高手!

目录

一、安装方式

二、CLIPSegDetectorProvider节点

三、Decompose(SEGS)/ From_SEG_ELT节点

四、PixelKSampleUpscalerProviderPipe节点

五、lterative Upscale (Latent/on Pixel Space)节点

六、Make Tile SEGS节点

七、Picker(SEGS)节点

一、安装方式

方法一:通过ComfyUI Manager安装(推荐)

打开Manager界面

方法二:使用git clone命令安装

在ComfyUI/custom_nodes目录下输入cmd按回车进入电脑终端

在终端输入下面这行代码开始下载

git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack

二、CLIPSegDetectorProvider节点

此节点专注于使用CLIPSeg模型进行图像分割和对象检测。这一节点可以根据输入的图像和文本描述,在图像中分割出符合描述的对象或区域。

参数:

text → 输入要检测部位的名词,例如:手(hand)、脸(face)、翅膀(wing)等

blur → 表示模糊区域,决定每一个检测框检测对一些噪声的保留还是丢弃

threshold → 选择最终遮罩的阈值,检测模型检测时不仅仅只生成一张遮罩,而是有很多个检测框,模型最终会根据阈值从众多遮罩中选择一个最好的

dilation_factor → 膨胀因子,扩展边界使其完全覆盖检测目标

注意:blur参数的选择范围为0-15,超出会报错

输出:

BBOX_DETECTOR → 带有特定提示的边界框检测模型

注意:使用该节点时需要安装 ComfyUI-CLIPSeg 节点扩展,安装方法为:打开manager管理器,点击Install Custom Nodes,在搜索框输入CLIPSeg安装即可。

示例:

注意事项

· 文本描述精度:确保输入的文本描述准确且清晰,以便CLIPSeg模型能够正确理解和处理。

· 模型参数配置:根据具体需求调整CLIPSeg模型的参数,以获得最佳的分割和检测效果。

· 处理性能:图像分割和检测可能需要较高的计算资源,确保系统性能足够支持处理需求。

通过使用CLIPSegDetectorProvider节点,可以在图像处理工作流程中实现基于自然语言描述的图像分割和检测,提升图像处理的智能化和精准度。

三、Decompose(SEGS)/ From_SEG_ELT节点

SEGS包含了很多目标检测后的数据,这两个节点则是方便我们取用其中一个数据。

输入:

segs → segs数据输入

输出:

SEGS_HEADER → segs数据的头部信息,包含诸如数据源、数据版本、数据生成时间等与数据相关的元信息

SEG_ELT → segs分离出头部信息的剩余数据,包含了segs数据的主要内容

cropped_image → 裁剪后的图像

cropped_mask → 裁剪图像的遮罩

crop_region → 原始图像中被裁剪出的区域的描述,指示分割元素在原始图像中的位置和大小信息

bbox → 检测框

control_net_wrapper → control_net数据

confidence → 检测的置信度

label → 检测目标的标签

示例:

注意事项

· 数据格式一致性:确保输入的分割数据和分割元素格式一致,以便各节点能够正确处理和传递数据。

· 提取参数配置:根据具体需求配置From_SEG_ELT节点的提取参数,以获得所需的特征和信息。

· 处理性能:分解和特征提取操作可能需要较高的计算资源,确保系统性能足够支持处理需求。

通过使用Decompose(SEGS)和From_SEG_ELT节点,可以在图像处理工作流程中实现分割数据的细粒度解构和信息提取,提升图像处理和分析的精细度和准确性。

四、PixelKSampleUpscalerProviderPipe节点

此节点专注于使用PixelKSample算法进行图像上采样。通过上采样,图像可以从较低分辨率提升到较高分辨率,同时保持图像的质量和细节。

输入:

basic_pipe → 带有模型和提示词等信息的管道

upscale_model_opt → 放大模型

pk_hook_opt → hook的细节控制

参数:

scale_mothod → 放大的方式,有最近邻插值、双线性插值、Lanczos插值和区域插值

seed → 随机种子

control_after_generate → 控制每次执行后种子的变化

steps → 步数

cfg → 提示词引导系数,即提示词对结果产生影响的大小 **过高会产生负面影响**

sampler_name → 选择采样器

scheduler → 选择调度器

denoise → 去噪幅度 **值越大对图片产生的影响和变化越大**

use_tiled_vae → 选择是否采用分块处理 **分块处理通过将图像分成多个小块,并分别对每个小块进行编码和解码,来生成更高分辨率的图像,有助于处理大尺寸的图像,同时能够保留更多的细节和特征**

tile_size → 图像放大过程中使用的块大小 **当图像尺寸较大时,为了提高计算效率和降低内存消耗,可以将图像分成多个小块处理**

输出:

UPSCALER → 经过放大操作处理后的图像放大数据,可以进一步用于对图像进行后续处理或其他操作

注意事项

· 上采样倍率:根据具体需求选择适当的上采样倍率,以获得最佳的分辨率提升效果。

· 算法参数配置:调整PixelKSample算法的参数,确保上采样效果符合预期。

· 处理性能:上采样处理可能需要较高的计算资源,确保系统性能足够支持处理需求。

· 输入图像质量:上采样的效果依赖于输入图像的质量,确保输入图像清晰度尽可能高。

通过使用PixelKSampleUpscalerProviderPipe节点,可以在图像处理工作流程中实现高效的图像上采样,提升图像的分辨率和细节表现,满足各种图像优化和处理需求。

五、lterative Upscale (Latent/on Pixel Space)节点

此节点通过迭代上采样方法,在图像处理过程中逐步提高图像分辨率。这种方法可以在不同的空间中进行,具体取决于配置参数的设置。

输入:

samples → 潜空间图像

upscaler → 经过放大操作处理后的图像放大数据

参数:

upscale_factor → 放大系数,数字代表放大几倍

steps → 放大操作的重复次数

temp_prefix → 用于设置临时文件名前缀的参数

输出:

latent → 处理完成后的潜空间图像

vae → vae模型

该节点和第三个节点可以组合使用,并且可以多个这种组合连接,实现更好的放大效果。下面给出一个工作流,方便大家理解这两个节点:

注意事项

· 迭代次数:根据具体需求选择适当的迭代次数,迭代次数越多,上采样效果越明显,但计算资源消耗也会增加。

· 处理空间选择:根据具体应用场景选择在潜在空间或像素空间中进行上采样处理。潜在空间处理可能更适合深度学习模型,像素空间处理则适合传统图像处理方法。

· 算法参数配置:调整迭代上采样的参数,确保上采样效果符合预期。

· 处理性能:迭代上采样处理需要较高的计算资源,确保系统性能足够支持处理需求。

· 输入图像质量:上采样的效果依赖于输入图像的质量,确保输入图像清晰度尽可能高。

通过使用Iterative Upscale (Latent/on Pixel Space)节点,可以在图像处理工作流程中实现高效的迭代上采样,逐步提升图像的分辨率和细节表现,满足各种图像优化和处理需求。