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)中的表示转换回图像。

输入:

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

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

输出:

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

参数:

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

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

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

  1. Invert Image节点

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

输入:

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

输出:

IMAGE -> 输出反转图像

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

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

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

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

  1. Load Image节点

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

输入:

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

输出:

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

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

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

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

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

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

  1. Pad lmage for Outpainting节点

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

输入:

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

参数:

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

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

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

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

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

输出:

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

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

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

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

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

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

  1. VAE Encoder(for inpainting)节点

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

输入:

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

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

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

参数:

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

输出:

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

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

  1. Preview image节点

该节点用来预览image图像。

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

  1. Upscale image节点

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

输入:

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

参数:

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

width -> 调整后的图像宽度

height -> 调整后的图像高度

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

输出:

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

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

  1. 图生图示例工作流

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

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

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

ComfyUI进阶篇:ComfyUI核心节点(二)的更多相关文章

  1. Java进阶篇设计模式之十二 ---- 备忘录模式和状态模式

    前言 在上一篇中我们学习了行为型模式的策略模式(Strategy Pattern)和模板模式(Template Pattern).本篇则来学习下行为型模式的两个模式,备忘录模式(Memento Pat ...

  2. 走进Vue时代进阶篇(01):重构电商购物车模块

    前言 从这篇文章开始,我准备给大家分享一些关于Vue.js这门框架的技巧性系列文章,正好我们公司项目中也用到了Vue.所以,教是最好的学.进阶篇比较适合于二三线城市,还在小厂打拼的童鞋们.欢迎你们跟着 ...

  3. Sass进阶之路,之二(进阶篇)

    Sass之二(进阶篇) 1. 数据类型 1.1 Number 数字类型,小数类型,带有像素单位的数字类型,全部都属于Number类型 Number类型详情请点击这里,下面是小例子 1.$n1: 1.2 ...

  4. CocoaPods详解之(二)----进阶篇

    CocoaPods详解之----进阶篇 作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/19178709 转载请注明出处 ...

  5. WPF 4 DataGrid 控件(进阶篇二)

    原文:WPF 4 DataGrid 控件(进阶篇二)      上一篇<WPF 4 DataGrid 控件(进阶篇一)>中我们通过DataGridTemplateColumn 类自定义编辑 ...

  6. 【进阶之路】Redis基础知识两篇就满足(二)

    导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第二篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首 ...

  7. 「进阶篇」Vue Router 核心原理解析

    前言 此篇为进阶篇,希望读者有 Vue.js,Vue Router 的使用经验,并对 Vue.js 核心原理有简单了解: 不会大篇幅手撕源码,会贴最核心的源码,对应的官方仓库源码地址会放到超上,可以配 ...

  8. 如约而至,Java 10 正式发布! Spring+SpringMVC+MyBatis+easyUI整合进阶篇(十四)Redis缓存正确的使用姿势 努力的孩子运气不会太差,跌宕的人生定当更加精彩 优先队列详解(转载)

    如约而至,Java 10 正式发布!   3 月 20 日,Oracle 宣布 Java 10 正式发布. 官方已提供下载:http://www.oracle.com/technetwork/java ...

  9. flink进阶篇

    Flink 面试--进阶篇 1.Flink是如何支持批流一体的? 2.Flink是如何做到高效的数据交换的? 3.Flink是如何做容错的? 4.Flink 分布式快照的原理是什么? 5.Flink ...

  10. Jmeter(三十九) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 - 上篇(详解教程)

    ------------------------------------------------------------------- 转载自:北京-宏哥 https://www.cnblogs.co ...

随机推荐

  1. Docker服务搭建个人音乐播放器Koel(及马里奥游戏)

    Koel简介 Koel是一种简单的基于Web的个人音频流服务,用客户端的Vue和服务器端的Laravel编写.针对Web开发人员,Koel采用了一些更现代的Web技术来完成其工作 搭建步骤 docke ...

  2. lodash已死?Radash库方法介绍及源码解析 —— 异步方法篇

    写在前面 tips:点赞 + 收藏 = 学会! 我们前面已经介绍了 radash 的相关信息和所有 Array 相关方法,详情可前往主页查看. 本篇我们继续介绍radash中异步相关的方法. 所有方法 ...

  3. ASP.NET Core如何禁用模型验证(或者从模型状态中移除某些属性)?

    这是一篇4年前的文章:[经验分享]在ASP.NET Core中,如果禁用某个请求的模型验证? 事隔多年,又有网友问到这个问题.我就来重新整理一下,顺便扩展一下之前的解决办法. ===== 这是一个来自 ...

  4. lvs之DR模式的实操演练

    理论 我是内部服务,代替我访问外部网络,这是正向代理:代替外部网络访问我,这是反向代理 槽位 sh根据源地址.调度到某个节点,dh,根据目标地址,调度到某个节点, 实战演练 默认策略以及修改策略 查看 ...

  5. 关于Nacos身份认证绕过漏洞默认密钥和JWT的研究

    前言 由于本人的一个习惯,每次遇到漏洞并复现后都要编写poc,以便下一次的直接利用与复测使用.研究Nacos默认密钥和JWT的爱恨情仇的过程中遇到了莫名其妙的问题,在此做以记录,方便日后有大佬遇到相同 ...

  6. 记一次Nacos漏洞的复现 --> 身份认证绕过漏洞(QVD-2023-6271)

    前记 端午前两天,遇到公司某客户的站点是Nacos,随后就是网上搜一波漏洞,搜到 QVD-2023-6271,故做以下记录 漏洞复现 漏洞描述 漏洞原理为开源服务管理平台 Nacos在默认配置下未对 ...

  7. Android 13 - Media框架(9)- NuPlayer::Decoder

    关注公众号免费阅读全文,进入音视频开发技术分享群! 这一节我们将了解 NuPlayer::Decoder,学习如何将 MediaCodec wrap 成一个强大的 Decoder.这一节会提前讲到 M ...

  8. 面试必问:MySQL死锁 是什么,如何解决?(史上最全)

    MySQL死锁接触少,但面试又经常被问到怎么办? 最近有小伙伴在面试的时候,被问了MySQL死锁,如何解决? 虽然也回答出来了,但是不够全面体系化, 所以,小北给大家做一下系统化.体系化的梳理,帮助大 ...

  9. 【二分答案】P2390 地标访问

    \(\color{black}\text{P2390 地标访问 (传送门)}\) 学过区间 DP 的,看到这题的第一反应都是:访问的地标一定是一个区间,并且在不断扩大,区间 DP!可看到数据范围,又瞬 ...

  10. ABC342

    E 建反图 + 拓扑排序. 先求出直接与 \(n\) 连接的点的答,就是最后一辆车的发车时间.然后再做拓扑排序. 假如我们知道点 \(u\) 的答案为 \(ans_u\) 并且 \(u,v\) 相连, ...