ComfyUI进阶篇:ComfyUI核心节点(二)

news/2024/10/6 3:41:01/文章来源:https://www.cnblogs.com/LIU-QiuXue/p/18287579

ComfyUI核心节点(二)

前言:

学习ComfyUI是一场持久战。当你掌握了ComfyUI的安装和运行之后,会发现大量五花八门的节点。面对各种各样的工作流和复杂的节点种类,可能会让人感到不知所措。在这篇文章中,我们将用通俗易懂的语言对ComfyUI的核心节点进行系统梳理,并详细解释每个参数。希望大家在学习过程中培养自我思考的能力,真正掌握和理解各个节点的用法与功能。在实践中不断提升自己的技术水平。只有通过不断的探索和总结,才能在面对复杂的工作流时游刃有余。祝大家学习顺利,早日成为ComfyUI的高手!

目录:

一、VAE Decode(Tiled)节点

二、Invert Image节点

三、Load Image节点

四、Pad lmage for Outpainting节点

五、VAE Encoder(for inpainting)节点

六、Preview image节点

七、Upscale image节点

八、图生图示例工作流

  1. VAE Decode(Tiled)节点

该节点用于对变分自编码器(VAE)进行解码操作,以将潜在空间(latent space)中的表示转换回图像。

1

输入:

Samples -> 接收KSampler采样器处理后的潜空间图像

vae -> 接收对潜空间图像解码使用的vae模型

输出:

IMAGE -> 输出经过vae解码后可直接查看的图像

参数:

tile_size -> 用来设定"块"的大小,进行多块处理

Tips:这个节点特别适合处理高分辨率图像,因为将图像分成小块进行处理,然后在处理完所有块后将它们组合成完整图像,可以避免内存溢出,并且提高处理效率。

例如,1024*1024的图像可以通过设置1024,来分成2块进行解码,也可以设置成512,分成4块进行解码。

1

  1. Invert Image节点

该节点用于反转图像的颜色。具体来说,它将图像中的每个像素的颜色值转换为其补色。

2

输入:

image -> 加载想要处理的图片

输出:

IMAGE -> 输出反转图像

反转图像颜色在图像处理和特效制作中有多种应用,包括但不限于以下几种:

·视觉效果:反转图像颜色可以产生独特的视觉效果,增加图像的艺术感。

·增强对比度:在某些情况下,反转图像颜色可以帮助突出某些细节或对比。

·创建掩膜:反转图像颜色可以用于创建和处理掩膜(masks),以便在进一步的图像处理步骤中使用。

  1. Load Image节点

该节点的主要功能是从你的计算机或其他存储设备中加载图像文件,并将其引入到ComfyUI的工作流程中。

4

输入:

upload -> 点击该按钮,去选择想要加载的图像

输出:

IMAGE -> 加载的图像可以作为输入提供给其他节点,以进行进一步的图像处理或操作

MASK -> 如果图像中带有Alpha通道信息,则会通过该节点进行输出

5

右键点击节点,会有一个功能栏,许多的功能可以在搭建工作流时会有不错的效果:

·图像编辑: 加载图像进行剪裁、调整颜色、添加滤镜等操作。

·图像分析: 使用加载的图像进行特征提取、模式识别等分析任务。

·图像生成: 在生成新图像时,将现有图像作为参考或素材进行处理。

  1. Pad lmage for Outpainting节点

该节点的主要目的是预处理输入图像,以便于后续的绘制或者生成任务。

6

输入:

image -> 接收加载的图像信息

参数:

left -> 设定图像左侧扩展的像素宽度

top -> 设定图像顶部扩展的像素宽度

right -> 设定图像右侧扩展的像素宽度

bottom -> 设定图像底部扩展的像素宽度

feathering -> 控制边框的柔化程度,使得填充的边缘与原始图像更自然地过渡

输出:

IMAGE -> 输出扩展后的图像信息

MASK -> 输出扩展部分对应的蒙版,并且结合feathering参数进行柔化处理。

7

如图所示,可以将MASK输出为图像预览羽化效果。

这个节点的作用是调整输入图像的大小或者填充以适应模型的输入要求。具体来说,它可能会执行以下操作之一:

·调整大小:将输入图像的尺寸调整为模型所需的输入尺寸。这可以是放大、缩小或者裁剪图像。

·填充:如果输入图像的尺寸不足以填满模型所需的输入尺寸,节点可能会在图像周围添加填充。填充通常使用像素值相同的颜色或者根据算法进行填充,以确保输入图像与模型的输入尺寸匹配。

  1. VAE Encoder(for inpainting)节点

该节点可以有效地对指定VAE模型对图像进行编码解码,从而为后续提供高质量的输入数据。

10

输入:

pixels -> 接收输入的图像信息

vae -> 接收输入的vae模型,使用该模型进行图片编码

mask -> 接收蒙版信息,用来确定扩散的区域

参数:

grow_mask_by -> 控制蒙版的羽化区域,和Pad lmage for Outpainting节点的feathering参数相似

输出:

LATENT -> 编码后的潜空间图像信息

11

如图所示,在熟悉从节点之后,便可创建一个简单的扩图工作流实现图片的扩展,上图所展示的便是对图片边缘扩展生成一张带边框的图像。

  1. Preview image节点

该节点用来预览image图像。

8

如果觉得图像说想要的效果,也可以右键节点选择“Save Image”进行图像保存,或者也可以建立一个“Save Image”节点,直接保存,保存地址附上。

9

  1. Upscale image节点

该节点用于放大图像的尺寸,同时尽可能保持图像的细节和质量。

12

输入:

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

参数:

upscale_method -> 选择放大图像的算法,“nearest-exact”表示使用最近邻插值算法。

width -> 调整后的图像宽度

height -> 调整后的图像高度

crop -> 设置是否对放大后的图像进行裁剪 “disabled表示不裁剪,center表示从中心对图片裁剪”

输出:

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

f48cba3a65f80d062e7a4c4b665ded2

注意:比例需根据自身需求调整,上图的比例设置只为更好的展示节点效果

  1. 图生图示例工作流

熟练使用以上节点,你就可以搭建第一个“图生图”工作流了

14

可以看到,在整个图生图工作流中,这里使用了SDXL的大模型,上传一张原始底图,经过VAE Encoder节点对底图编码,后续通过提示词引导使用KSampler采样器进行去噪,最终出图如下:

ComfyUI_temp_vfzjy_00014_

孜孜以求,方能超越自我。坚持不懈,乃是成功关键。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/739447.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

题目集7~8

由于个人原因,最后两次题目集未提交,对自己的放纵感到愧疚,后期的补练我也会抽出时间完成这两道题 经过分析,题目集7,是在前面的基础上加上了一个新概念:互斥开关,以及模拟一种受控窗帘, 在我的想法,互斥开关便可当作两个普通开关去完成电路,窗帘则是新增一个用电器。…

EtherCAT转Profinet网关配置说明第一讲:配置软件安装及介绍

网关XD-ECPNS20为EtherCAT转Profinet协议网关,使EtherCAT协议和Profinet协议两种工业实时以太网网络之间双向传输 IO 数据。适用于具有EtherCAT协议网络与Profinet协议网络跨越网络界限进行数据交换的解决方案。 网关XD-ECPNS20为EtherCAT转Profinet协议网关,使EtherCAT协议…

4、flask-项目拆分

项目的拆分其实就是将app.py中的工作拆分开来、类似Django一样、每个项目都把路由模板和试图函数分开写 app.py # 路由 + 视图函数from flask import Blueprint from models import *#蓝图 # 创建蓝图对象 # 第一个参数:蓝图的名字 # 第二个参数:蓝图的包名 blue = Blueprin…

2-SAT 问题

2-SAT 问题 模型有 \(n\) 个布尔类型的变量 \(x_1, x_2, \ldots, x_n\),有 \(m\) 条限制形如 \(x_i \space [\operatorname{or}/\operatorname{and}]\space x_j=[1/0]\). 求一组符合要求的解。核心问题只需要考虑有没有解。 对于每个变量都只有两种取值:\(0/1\),那么把每…

坚果云与floccus实现Chrome书签国内跨设备、跨平台同步

本文介绍基于floccus插件与坚果云协同使用的方法,对浏览器的书签进行实时在线同步的操作~本文介绍基于floccus插件与坚果云协同使用的方法,对浏览器的书签进行实时在线同步的操作。在工作与学习中,我们时常希望在不同浏览器之间实现书签的同步;而一些传统的浏览器书签同步方…

性能监控调优

1.命令行工具 1.1 jps 查看系统JVM进程 jps [options] [hostid]optionhostid:省略则本机,监控远程需要安装jstatd1.2 jstat 查看JVM统计信息 jstat -[-t] [-h] [[]]option-t:加程序运行时间 [-h]:输出设定行数加表头信息 :查询间隔时间 count:查询总次数 结果:当ou上涨趋…

【第7个渗透靶机项目】 DerpNStink

Hack it 信息搜集 发现主机 nmap 192.168.0.17 -sS -sV -A -T5 全面扫描一下,有点有用信息访问一下但是没有用。 访问一下http服务查看源代码,发现有文件泄露下面还有个flag查看info.txt。<-- @stinky,确保使用本地 dns 更新您的主机文件,以便可以在新的 derpnstink 博客…

Linux运维工程师推荐学习的开发语言

前言:会开发的运维和不会开发的运维可以说是两个世界的运维。 个人推荐python和go,前者可以做自动化运维,后者可以深挖k8s;最近就不先演示运维服务技术的部署和架构搭建了,在深挖自动化运维,为了让现在的工作更加高效和便捷。如果有需要了解的运维服务技术,可以评论说出…

2、flask-run启动参数详解

app.py 这里 app.run(True, port=5001, host=0.0.0.0) from flask import Flask#创建flask应用对象 app = Flask(__name__)@app.route(/) # 路由 def hello_world(): # 视图函数return Hello World! # 响应给前端#添加路由和视图函数 @app.route(/index/) def index():…

从零学习的JAVAday1~day7

作为一个刚要迈入大二的预备程序员,已经学习过了c语言和c++的部分知识,在暑假期间满怀期待的开始Java的学习,希望一个暑假可以对Java的了解加深一些。 学习Java首先要学习windows电脑的cmd命令: 同时点击键盘上面的win+r键输入cmd即可进入默认的cmd面版,然后我们就可以输入…

面试官:Java线程可以无限创建吗?

哈喽,大家好🎉,我是世杰。 ⏩本次给大家介绍一下操作系统线程和Java的线程以及二者的关联1. 面试连环callJava线程可以无限创建吗? Java线程和操作系统线程有什么关联? 操作系统为什么要区分内核态和用户态?⏩要想解答这些问题,我们要先从操作系统线程开始说起,让我们…

标准IO与系统IO

C平台的标准IO(可跨系统)Linux 系统IO (Linux系统平台才能使用)Linux系统的IO(输入输出)特点主要包括以下几个方面 1)文件视为一切:在Linux中,几乎所有的设备和资源都被视为文件。这意味着无论是硬件设备(如磁盘、网络接口)还是系统资源(如进程、内存),它们都可以通…