【ComfyUI插件】ComfyUI Easy Use插件(一)
前言:
EasyUse 是 ComfyUI 图像生成和处理框架中的一个模块,旨在通过简化的界面和易于配置的节点来提供用户友好的操作体验,特别适合希望快速开始图像生成、修复、增强等任务的用户。
__ComfyUI Easy Use插件(二): __https://articles.zsxq.com/easyuse/2.html
__ComfyUI Easy Use插件(三): __https://articles.zsxq.com/easyuse/3.html
__ComfyUI Easy Use插件(四): __https://articles.zsxq.com/easyuse/4.html
__ComfyUI Easy Use插件(五): __https://articles.zsxq.com/easyuse/5.html
__ComfyUI Easy Use插件(六): __https://articles.zsxq.com/easyuse/6.html
__ComfyUI Easy Use插件(七): __https://articles.zsxq.com/easyuse/7.html
__ComfyUI Easy Use插件(八): __https://articles.zsxq.com/easyuse/8.html
本期使用的示例工作流在网盘:小黄瓜知识星球资料分享/插件节点讲解视频/ComfyUI_EasyUse/第一期文件夹中
目录
先行:安装方法
一、EasyLoader (Comfy)节点
二、PreSampling节点
三、EasyKSampler节点
四、Pipe Out和Pipe In节点
五、Pipe Edit节点
六、EasyLoraStack节点
七、Wildcards节点
八、EasyControlnet/EasyControlnet (Advanced)节点
九、ImageSize/ImageSize (Side)/ImageSize (LongerSide)节点
十、ImagePixelPerfect节点
十一、HiresFix节点
十二、PreDetailerFix/UltralyticsDetector (Pipe)/SAMLoader (Pipe)/DetailerFix节点
十三、Get/Set/EasyGlobalSeed节点
安装方法
1、在manager管理器里面搜索Easy Use进行安装
2、通过git clone进行安装,即在ComfyUI/custom_nodes目录下输入cmd按回车进入终端
__然后在终端输入git clone __https://github.com/yolain/ComfyUI-Easy-Use?tab=readme-ov-file
一、EasyLoader (Comfy)节点
节点功能:该节点了简化和加速加载模型或资源的过程。
可选输入:
optional_lora_stack: 用于将多个 Lora 模型叠加在一起使用
optional_controlnet_stack: 在图像生成中使用多个 ControlNet 模型
参数:
ckpt_name: 选择需要加载的checkpoint大模型
vae_name: 选择要加载的 VAE(变分自编码器)模型
clip_skip: 默认值为 -2,表示跳过特定的 clip 层级
lora_name: 选择是否使用 Lora 模型
lora_model_strength: Lora 模型的强度,控制 Lora 模型的影响力
resolution: 输出图像的分辨率选择
positive 和 negative:分别表示正面和负面提示(prompts),用于图像生成模型的指导。支持多行输入。
输出:
pipe: 返回管道(pipe),所有的流程汇聚成一个管道
model: 返回加载的模型对象
vae: 返回加载的 VAE 模型对象
二、PreSampling节点
节点功能:该节点是一个用于图像生成过程中采样设置的节点,主要功能是为图像生成过程配置预采样的相关参数,包括步数、采样器类型、调度器、CFG 值等。它可以将采样的设置与图像生成管道(pipeline)结合,为用户提供更精细的图像生成控制。
必需输入 (required):
pipe: 一个图像生成管道,包含模型、VAE、CLIP、以及图像数据等
可选输入 (optional):
image_to_latent: 输入图像,可以用于将图像转化为潜在空间表示。
latent: 输入的潜在图像数据,直接使用已经存在的潜在图像作为输入。
参数:
steps: 采样的步数,决定图像生成过程中采样的细致程度。
cfg: 影响生成图像的质量和准确度
sampler_name: 采样器类型,选择图像生成时使用的采样器(如 Euler, DDIM 等)
scheduler: 采样器的调度器类型,控制图像生成过程中采样步长的变化。
denoise: 去噪值,用于控制图像生成过程中的噪声去除程度。
seed: 随机种子,控制随机性的生成。
contorl_after_generate: 控制种子变化方式。
输出:
pipe: 返回更新后的图像生成管道(new_pipe)。该管道包含了最新的采样设置(如步数、采样器、调度器等)
三、EasyKSampler节点
节点功能:该节点是一个简化版本的采样节点。该节点主要用于执行图像生成过程中的采样任务,并提供一些简单的配置选项,用户可以通过此节点指定输出的处理方式和其他采样相关的设置。
必需输入 (required):
pipe: 图像生成管道(pipe),该管道通常包含模型、VAE、CLIP 和采样相关的设置
可选输入(optional):
model: 可选的模型参数,允许用户选择用于图像生成的模型。
参数:
image_output: 指定输出图像的处理方式
- Hide: 隐藏输出
- Preview: 预览输出
- Preview&Choose: 预览输出并选择
- Save: 保存输出
- Hide&Save: 隐藏并保存输出
- Sender: 将输出发送到其他系统或服务
- Sender&Save: 发送并保存输出
- None: 不输出任何图像
该套文生图流程相比于传统文生图流程简化了很多步骤,__EasyLoader (Comfy)节点__集成了,只需要三个节点就可以完成。
如果此时你觉得easyuse的正向提示词和负向提示词框不太方便使用,此时可单独将正向提示词框和负向提示词框例举出来,如下图所示:
四、Pipe Out和Pipe In节点
节点功能:Pipe Out该节点是个用于输出图像生成管道信息的节点,它从传入的管道中提取关键信息并将这些信息作为输出。该节点的作用是对生成管道的各个部分进行汇总,便于后续操作或调试时使用。Pipe In节点则可以接收Pipe Out节点的输入作为下一个生图流程的输入。
如下图,__Pipe In节点__接收__Pipe Out节点__的输出。
当然这里的节点也不需要全部连上,一般只连接pipe就行,如果后续需要改参数就连上相应的参数。
五、Pipe Edit节点
节点功能:该节点点用于编辑和更新图像生成管道中的各种条件设置,例如正负提示词、模型、VAE、CLIP 以及潜在空间数据。通过此节点,用户可以在现有的生成管道基础上进行调整,以便在生成图像时实现更多的控制。
参数:
positive_token_normalization: 正向条件的标准化方法
- none: 无标准化
- mean: 均值标准化
- length: 长度标准化
- length+mean: 长度+均值标准化
positive_weight_interpretation: 正向条件权重的解释方法,决定如何应用正向提示词的权重
negative_token_normalization: 负向条件的标准化方法
negative_weight_interpretation: 负向条件权重的解释方法
a1111_prompt_style: 是否使用 A1111 风格的提示词格式
conditioning_mode: 条件合成的模式,控制如何结合正向和负向条件
如下图,当我们修改了正向提示词,在__Pipe In__节点上连接__positive__参数,生成图发生变化
六、EasyLoraStack节点
节点功能:该节点是将多个 LORA 模型组合在一起,并允许用户通过不同的方式(简单或高级模式)配置 LORA 的强度和其他参数。
参数:
toggle: 启用或禁用 LORA 堆栈。如果禁用,将不会返回 LORA 堆栈。
mode: 选择简单模式(simple)或高级模式(advanced)
num_loras: 指定堆栈中 LORA 模型的数量,最多为 max_lora_num(此处最大为 10)
lora_1_name: LORA 模型1的名称(从文件列表中获取)。
lora_1_strength: LORA模型1 的强度,适用于simple模式。
Easyuse加载lora的方式可以分为3种。
第一种如下图所示:直接在__EasyLoader (Comfy)__节点中加载lora模型,但只能加载一个。
第二种情况是当lora数量较多时,可以通过外接lora stack节点进行lora管理,如下图所示
但要注意的是有些lora可能会相互冲突,有些lora的使用除了加载lora外还需要提示词去激活lora的使用,这个就需要使用者自己去调试了。
七、Wildcards节点
节点功能:该节点主要目的是生成或更新提示词(prompt),支持通过通配符和 LORA 模型动态地修改文本内容。该类可以处理带有 LORA 块权重和通配符的输入文本,并且能够生成与其相关的多种版本(特别是多行文本的处理)。参数:
Select to add LoRA:选择一个 LORA 模型,并将其添加到文本中。这个选择列表是动态的,包含所有当前可用的 LORA 模型。
Select to add Wildcard:选择一个通配符,并将其添加到文本中。这个选择列表是动态的,包含所有可用的通配符。
seed:用于生成随机数的种子。默认值为 0,最大值受 MAX_SEED_NUM 限制。
multiline_mode:如果为 True,表示输入文本是多行的,将分别处理每一行。否则,将处理整个文本。
第三种方法是通过wildcards进行加载lora使用,这个和webui的加载lora比较类似,具体使用如下图所示:
同时wildcards节点除了加载lora外,还有一个重要的功能,可以支持wildcards,这样我们就可以组合出不同类型的图片了,使用方式如下:
比如我们想要在上图的基础上组合出不同头发颜色的女孩,就可以采样加载wildcard的方式实现,具体参考下图
其中__colors__ 代表我们想要加载头发颜色的组合,这里可以看出我们加载了文件中的粉色的头发,而这个颜色是来自于下面wildcards的文件里
下图是加载的wildcards文件的位置所在,如果你有想要使用的wildcards文件或者自己编写的文件都可以放在这个位置
文件里的内容是这种格式:
通过使用wildcards的方式就不必我们每次手动输入各式各样的提示词类型组合,而是通过wildcards组合的方式选出我们最希望得到的组合方式,提高了工作效率。
八、EasyControlnet和EasyControlnet (Advanced)节点
节点功能:该节点作用是将 ControlNet 应用于现有的图像处理管线,并根据给定的参数生成图像的“正向”条件和“负向”条件。
输入:
pipe: 输入管道对象,包含有关图像生成的上下文信息,例如模型、条件、图像等。
image: 输入图像,通常是原始的图像数据
control_net: 可选的 ControlNet 模型对象。如果没有提供,将使用 control_net_name 中指定的模型。
参数:
control_net_name: ControlNet 模型的名称,从可用的 ControlNet 模型列表中选择。
strength: ControlNet模型控制强度,范围从 0 到 10,默认值为 1.0。较高的强度表示效果更明显。
start_percent: ControlNet开始应用的百分比,范围从 0 到 1,默认值为 0.0。表示从哪个阶段开始应用ControlNet的效果。
end_percent: ControlNet结束的百分比,范围从 0 到 1,默认值为 1.0。表示在哪个阶段停止应用ControlNet的效果。
scale_soft_weights: 控制软权重的比例,默认值为 1.0。调整权重的缩放可以影响效果的平滑程度。
其中,__Easycontrolnet(Advanced)__包含了EasyControlnet,所以我们就以__Easycontrolnet(Advanced)__为例,如下图所示,使用pose给EasyControlnet提供了骨骼图,最后生成出固定姿势的图片。
接下来,在常用的情况下,我们也会需要其它的controlnet模型,这时候我们就需要controlnet的预处理器了,这个通过插件可以通过在manager里面搜索control找到
九、ImageSize和ImageSize (Side)和ImageSize (LongerSide)节点
节点功能:获取图片的分辨率属性。
如下图,其中__ImageSize (Side)__节点有选择Longest和Shortest选项,Longest就和__ImageSize (LongerSide)__节点一样,输出长和宽之间的最大值,Shortest则是输出长和宽之间的最小值。
十、ImagePixelPerfect节点
节点功能:根据给定的图像和调整模式来估算一个“完美”的分辨率。这个节点在处理图像时常常用于动态计算图像的目标分辨率,尤其是在图像缩放或调整时,需要确保输出图像在某些情况下尽可能符合给定的条件。
参数:
resize_mode: 缩放模式,决定如何计算目标“完美像素”
- Just Resize: 常规的缩放方法,目标分辨率等于最大比例的缩放结果。
- Crop and Resize: 计算使图像完全适应一个给定尺寸的最小分辨率。
- Resize and Fill: 计算使图像完全适应外部框架的最大分辨率。
但实际用起来感觉差别不大,“完美像素”都是取的最小值。
这里可以在__EasyLoader(Comfy)__节点中选择自定义分辨率,将计算的分辨率输出转换到__EasyLoader(Comfy)__节点长和宽的输入,这样输出的图像能够更好的适配输入图像的大小。
十一、HiresFix节点
节点功能:该节点的主要目的是对图像进行高清修复和分辨率提升,同时提供灵活的调整选项,确保图像质量和细节得到最大化保留。
参数:
model_name: 使用的超分辨率模型名称
rescale_after_model: 是否在模型处理后进行额外的缩放。默认为 True,即在模型输出后应用缩放。
rescale_method: 后处理的缩放方法
rescale: 确定如何进行缩放。
- by percentage: 按百分比缩放
- to Width/Height: 按指定的宽高进行缩放
- to longer side - maintain aspect: 保持纵横比,以较长边为基础进行缩放
percent: 缩放百分比。用于在 by percentage 缩放模式下控制缩放的比例。
crop: 图像裁剪方式
- disabled: 不裁剪
- center: 居中裁剪
这里选择百分比放大,且放大百分比是百分之50,所以最终结果就是放大到原图的2倍,画质有了提升。
十二、PreDetailerFix节点
节点功能:该节点主要用于图像的预细节修复,通过为图像处理提供更精细的控制选项,改善图像的细节表现。
必需输入(required):
pipe: 当前图像处理管道的相关信息,包括模型、图像、VAE等。
可选输入(optional):
bbox_segm_pipe: 可选的边界框分割管道,用于辅助修复区域的选择。
sam_pipe: 可选的 SAM(Segment Anything Model)管道,用于提供分割信息。
optional_image: 可选的额外图像输入,默认从管道中获取图像。
参数:
guide_size: 引导图像的尺寸。默认为 256,指定了图像修复时的参考尺寸。
guide_size_for: 是否将 guide_size 用于边界框(bbox)或者裁剪区域(crop_region)。默认为 True,即用于边界框。
max_size: 最大图像尺寸,默认为 768,限制图像在修复过程中不超过此尺寸。
feather: 羽化程度,控制修复图像的边缘柔化效果。默认为 5。
noise_mask: 是否启用噪声掩膜,默认为启用(True)。
force_inpaint: 是否强制执行图像重绘,默认为启用(True)。
drop_size: 控制修复时的丢弃大小,影响图像修复区域的选择。
wildcard: 用于动态生成的提示文本,可以在图像修复过程中作为变动输入。
cycle: 图像修复的循环次数,默认为 1。
该节点需要搭配__UltralyticsDetector (Pipe)和__SAMLoader (Pipe)和DetailerFix__节点使用,用于脸部修复。具体参数细节可搭配__ComfyUI Impact 节点(二):FaceDetailer / FaceDetailer(Pipe)节点https://articles.zsxq.com/id_p5i8ma1vw7hn.html使用。
从下图可以看出,人物的脸部细节有所修复。
十三、Get/Set/EasyGlobalSeed节点
具体用例如下:首先上面这套工作流使用了__Set__节点,并为这套流程自定义命名了ss,然后通过__Get__节点获取ss,从而不需要加载模型就能输出,要想上面和下面一样的话最好把种子设成一样并固定。
使用该节点,可以使界面内的工作流的seed值与EasyGlobalSeed设置的值保持一致,避免在多个工作流做对比时,需要一个一个调节seed的问题。
EasyUse使用小tips
1、 Bookmark书签的使用
使用搜索Bookmark,点击第一个即可调用Bookmark节点
该节点的作用是当我们使用书签上设置的快捷键时,使我们跳转到书签所在的位置。这个在长工作流的使用以及由于误触我们找不到我们工作流位置时,使用快捷键跳转到书签位置。
__ComfyUI Easy Use插件(二): __https://articles.zsxq.com/easyuse/2.html
__ComfyUI Easy Use插件(三): __https://articles.zsxq.com/easyuse/3.html
__ComfyUI Easy Use插件(四): __https://articles.zsxq.com/easyuse/4.html
__ComfyUI Easy Use插件(五): __https://articles.zsxq.com/easyuse/5.html
__ComfyUI Easy Use插件(六): __https://articles.zsxq.com/easyuse/6.html
__ComfyUI Easy Use插件(七): __https://articles.zsxq.com/easyuse/7.html
__ComfyUI Easy Use插件(八): __https://articles.zsxq.com/easyuse/8.html