前言:

ComfyUI的学习是一场持久战,当你掌握ComfyUI的安装和运行之后,会出现琳琅满目的节点,当各种各样的工作流映入眼帘,往往难以接受纷繁复杂的节点种类,__本篇文章将以通俗易懂的语言,对ComfyUI的各种核心节点进行系统的梳理和参数的详解,__祝愿大家在学习的过程中掌握自我思考的能力,并且切实的掌握和理解各个节点的用法与功能。

__ComfyUI核心节点(一): __https://articles.zsxq.com/comfyui/1.html

__ComfyUI核心节点(二): __https://articles.zsxq.com/comfyui/2.html

__ComfyUI核心节点(四): __https://articles.zsxq.com/comfyui/4.html

目录:

一、Apply ControlNet节点

二、ConditioningAverage节点

三、Conditioning(Combine)节点

四、Conditioning(Set Area)节点

五、ImageBlend节点

六、lmageBlur节点

七、lmageQuantize节点

八、lmageSharpen节点

区域控制示例工作流

一、Apply ControlNet节点

节点功能:该节点用来将ControlNet模型加载,从而控制图片去噪过程。image

输入:

conditioning -> 接收传入的条件信息 **比如通过CLIP Text Encode (Prompt)后的信息**

control_net -> 加载ControlNet模型 **SD模型和SDXL模型对应的ControlNet模型不同**

image -> 加载预处理图片 **此处的图片是经过预处理的图像,并非原图**

注意:加入我们使用depth的ControlNet,那么我们传入的image是原始图片的深度图!

参数:

strength -> 权重程度,数值越高图片约束越强,反之越弱

输出:

CONDITIONING -> 输出混入ControlNet信息的条件信息流

注意:ContrloNet还会有专门一期讲解,重点会放在图像预处理阶段,这是一个独立的插件项目。

二、ConditioningAverage节点

节点功能:该节点根据强度因子对两个文本的条件信息进行插值混合。image

输入:

conditioning_to -> 需要进行插值混合的条件信息之一

conditioning_from -> 需要进行插值混合的条件信息之一

注意:当conditioning_to_strngth为1时,扩散将只受conditioning_to的影响,当conditioning_to_strngth为0时,图像扩散将只受conditioning_from的影响。

image

image

参数:

conditioning_to_strngth -> 设置混合插值的强度

输出:

CONDITIONING -> 输出插值混合之后的条件信息

注意:当conditioning_to_strngth为0.5时,似乎会扩散出包含两个条件的图像,但是1girl,和1boy的竞争,只会有一个胜者,下图为0.5权重下,在dark和white之间的抉择结果。

image

image

三、Conditioning(Combine)节点

节点功能:该节点对两个条件信息进行插值混合。image

输入:

conditioning_1 -> 需要进行插值混合的条件信息之一

conditioning_2 -> 需要进行插值混合的条件信息之一

注意:!!!此为个人推测理解,请谨慎吸收!!!Conditioning(Combine)节点和ConditioningAverage节点的区别在于ConditioningAverage是在文本通过CLIP模型之前进行向量混合,而Conditioning(Combine)结点是将通过CLIP模型之后的条件信息进行混合。

下图为控制参数不变的情况下,两个结点输出图片对比。

image

image

输出:

CONDITIONING -> 输出插值混合之后的条件信息

四、Conditioning(Set Area)节点

节点功能:该节点用来将条件的影响区域设置在图像的固定范围内,与Conditioning(Combine)节点合作使用。

image

输入:

conditioning -> 接收传来的条件信息

参数:

width -> 表示控制区域的宽度

height -> 表示控制区域的高度

x -> 表示控制区域原点的x坐标

y -> 表示控制区域原点的y坐标

strength -> 表示条件信息的强度

注意:在ComfyUI 中坐标系的原点位于左上角。

输出:

CONDITIONING -> 进行条件限制之后输出的条件信息

注意:如图所示,设置1024*512的图像可以将其左边分配给1girl提示词,将右边分配给1boy提示词,从而生成一张两个区域都满足条件的图像。

image

五、ImageBlend节点

节点功能:该节点通过透明度设置将两张图片进行混合。image

输入:

image_a -> 需要混合的原始图片之一

image_b -> 需要混合的原始图片之一

参数:

blend_percentage -> 图片混合的透明度选项

输出:

image -> 混合后的图像输出

image

image

注意:如图所示当blend_percentage为0时image_a(鞭子女孩)为不透明,如图所示当blend_percentage为0时image_a为透明,并且图片混合是从左上角的原点开始。

六、lmageBlur节点

节点功能:该节点将输入图像加上模糊效果。image

输入:

images -> 接收输入的图像

参数:

blur_radius -> 输入模糊的高斯半径

sigma -> 该值越小,模糊的像素越接近中心

输出:

IMAGE -> 输出模糊后的图像

image

七、lmageQuantize节点

节点功能:该节点用于对图像的原始像素范围进行量化调整。image

输入:

image -> 接收需要调整的图像

参数:

colors -> 表示量化后图像包含的颜色数量

dither -> 表示添加抖动使图像量化后更加平滑

image

image

注意:上图当colors设置为1是,图像只有单色,下图当开启抖动时,图像量化后更加平滑。

输出:

IMAGE -> 输出调整之后的图像

八、lmageSharpen节点

节点功能:该节点对原始图像增加锐化。image

输入:

image -> 需要进行锐化的原始图像

参数:

sharpen_radius -> 表示锐化的半径

sigma -> 该值越小,锐化的像素越接近中心像素

alpha -> 锐化的强度

输出:

IMAGE -> 输出锐化后的图像

image

区域控制示例工作流:

学习完以上节点,您就可以搭建“区域控制”工作流了image

这里使用SDXL的大模型,通过Conditioning(Set Area)节点控制图片生成区域,然后通过Conditioning(Combine)节点进行条件合并,然后使用三个正向提示词来控制不同区域,最终出图如下所示:image

孜孜不倦,方能登峰造极。坚持不懈,乃是成功关键。

__ComfyUI核心节点(一): __https://articles.zsxq.com/comfyui/1.html

__ComfyUI核心节点(二): __https://articles.zsxq.com/comfyui/2.html

__ComfyUI核心节点(四): __https://articles.zsxq.com/comfyui/4.html