【ComfyUI插件】ComfyUI核心节点(三)
前言:
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模型加载,从而控制图片去噪过程。
输入:
conditioning -> 接收传入的条件信息 **比如通过CLIP Text Encode (Prompt)后的信息**
control_net -> 加载ControlNet模型 **SD模型和SDXL模型对应的ControlNet模型不同**
image -> 加载预处理图片 **此处的图片是经过预处理的图像,并非原图**
注意:加入我们使用depth的ControlNet,那么我们传入的image是原始图片的深度图!
参数:
strength -> 权重程度,数值越高图片约束越强,反之越弱
输出:
CONDITIONING -> 输出混入ControlNet信息的条件信息流
注意:ContrloNet还会有专门一期讲解,重点会放在图像预处理阶段,这是一个独立的插件项目。
二、ConditioningAverage节点
节点功能:该节点根据强度因子对两个文本的条件信息进行插值混合。
输入:
conditioning_to -> 需要进行插值混合的条件信息之一
conditioning_from -> 需要进行插值混合的条件信息之一
注意:当conditioning_to_strngth为1时,扩散将只受conditioning_to的影响,当conditioning_to_strngth为0时,图像扩散将只受conditioning_from的影响。
参数:
conditioning_to_strngth -> 设置混合插值的强度
输出:
CONDITIONING -> 输出插值混合之后的条件信息
注意:当conditioning_to_strngth为0.5时,似乎会扩散出包含两个条件的图像,但是1girl,和1boy的竞争,只会有一个胜者,下图为0.5权重下,在dark和white之间的抉择结果。
三、Conditioning(Combine)节点
节点功能:该节点对两个条件信息进行插值混合。
输入:
conditioning_1 -> 需要进行插值混合的条件信息之一
conditioning_2 -> 需要进行插值混合的条件信息之一
注意:!!!此为个人推测理解,请谨慎吸收!!!Conditioning(Combine)节点和ConditioningAverage节点的区别在于ConditioningAverage是在文本通过CLIP模型之前进行向量混合,而Conditioning(Combine)结点是将通过CLIP模型之后的条件信息进行混合。
下图为控制参数不变的情况下,两个结点输出图片对比。
输出:
CONDITIONING -> 输出插值混合之后的条件信息
四、Conditioning(Set Area)节点
节点功能:该节点用来将条件的影响区域设置在图像的固定范围内,与Conditioning(Combine)节点合作使用。
输入:
conditioning -> 接收传来的条件信息
参数:
width -> 表示控制区域的宽度
height -> 表示控制区域的高度
x -> 表示控制区域原点的x坐标
y -> 表示控制区域原点的y坐标
strength -> 表示条件信息的强度
注意:在ComfyUI 中坐标系的原点位于左上角。
输出:
CONDITIONING -> 进行条件限制之后输出的条件信息
注意:如图所示,设置1024*512的图像可以将其左边分配给1girl提示词,将右边分配给1boy提示词,从而生成一张两个区域都满足条件的图像。
五、ImageBlend节点
节点功能:该节点通过透明度设置将两张图片进行混合。
输入:
image_a -> 需要混合的原始图片之一
image_b -> 需要混合的原始图片之一
参数:
blend_percentage -> 图片混合的透明度选项
输出:
image -> 混合后的图像输出
注意:如图所示当blend_percentage为0时image_a(鞭子女孩)为不透明,如图所示当blend_percentage为0时image_a为透明,并且图片混合是从左上角的原点开始。
六、lmageBlur节点
节点功能:该节点将输入图像加上模糊效果。
输入:
images -> 接收输入的图像
参数:
blur_radius -> 输入模糊的高斯半径
sigma -> 该值越小,模糊的像素越接近中心
输出:
IMAGE -> 输出模糊后的图像
七、lmageQuantize节点
节点功能:该节点用于对图像的原始像素范围进行量化调整。
输入:
image -> 接收需要调整的图像
参数:
colors -> 表示量化后图像包含的颜色数量
dither -> 表示添加抖动使图像量化后更加平滑
注意:上图当colors设置为1是,图像只有单色,下图当开启抖动时,图像量化后更加平滑。
输出:
IMAGE -> 输出调整之后的图像
八、lmageSharpen节点
节点功能:该节点对原始图像增加锐化。
输入:
image -> 需要进行锐化的原始图像
参数:
sharpen_radius -> 表示锐化的半径
sigma -> 该值越小,锐化的像素越接近中心像素
alpha -> 锐化的强度
输出:
IMAGE -> 输出锐化后的图像
区域控制示例工作流:
学习完以上节点,您就可以搭建“区域控制”工作流了
这里使用SDXL的大模型,通过Conditioning(Set Area)节点控制图片生成区域,然后通过Conditioning(Combine)节点进行条件合并,然后使用三个正向提示词来控制不同区域,最终出图如下所示:
孜孜不倦,方能登峰造极。坚持不懈,乃是成功关键。
__ComfyUI核心节点(一): __https://articles.zsxq.com/comfyui/1.html
__ComfyUI核心节点(二): __https://articles.zsxq.com/comfyui/2.html
__ComfyUI核心节点(四): __https://articles.zsxq.com/comfyui/4.html