前言:

学习ComfyUI是一场持久战,而Comfyroll 是一款功能强大的自定义节点集合,专为 ComfyUI 用户打造,旨在提供更加丰富和专业的图像生成与编辑工具。借助这些节点,用户可以在静态图像的精细调整和动态动画的复杂构建方面进行深入探索。Comfyroll 的节点设计简洁易用,功能强大,是每个希望提升 ComfyUI 使用体验的用户的必备选择。祝大家学习顺利,早日成为ComfyUI的高手!

目录

一、安装方法

二、CR Text List节点

三、CR Prompt List节点

四、CR Simple List节点

五、CR Float Range List节点

六、CR Integer Range List节点

七、CR Binary To Bit List节点

八、CR Value Cycler/CR Text Cycler 节点

九、“人物一致性控制”示例工作流

一、安装方法

在ComfyUI主目录里面输入CMD回车。

在弹出的CMD命令行输入git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git,即可开始下载。

二、CR Text List节点

该节点用于创建和管理一个包含文本元素的列表,主要功能是接受多个文本输入并将它们组织成一个列表,以便在工作流中进行进一步处理。

输入:

文本框 → 输入多行文本 不需要符号隔开,用回车隔开即好

参数:

start_index → 表示开始位置的索引 从0开始计数

max_rows → 表示选取最大行数

输出:

STRING → 输出的文本信息 多行单次输出

Eg:如下图所示我们可以利用该特性建造如下"人物一致性工作流",通过控制种子不变,提示词输入大体提示词,然后通过CR Text List节点去控制我们对提示词进行微调,比如仅控制动作,姿势,脸部表情等信息,去生成不同但是相似的人物。

使用场景

· 批量文本处理: 当你有多个文本段落或句子需要处理时,可以使用这个节点将它们组织成一个列表,以便批量处理。

· 数据管理: 在数据管理任务中,将多个文本数据整合到一个列表中,便于后续的分析或操作。

· 自动化工作流: 在自动化文本生成或处理工作流中,用于批量管理和传递文本数据。

通过 CR Text List 节点,可以轻松地创建和管理文本列表,从而在 ComfyUI 中实现高效的文本数据处理和管理。

三、CR Prompt List节点

该节点用于创建和管理提示词列表,通常用于生成图像或其他需要批量提示词的任务,主要功能是接受多个提示词输入并将它们组织成一个列表,以便在工作流中进行进一步处理,例如用于图像生成、文本生成等任务。

输入:

prepend_text → 加在每一行文本前的文字

文本框 → 输入多行文本,用回车隔开

参数:

append_text → 加在每一行文本后的文字

start_index → 开始的行数索引,从0开始

max_rows → 最长选取的行数

输出:

prompt → 带有前缀和后缀的列表行

body_text → 原始列表行

如下图所示我们可以通过该提示词输入框进行批量文本输入,产生不同类型的图像。

使用场景

· 图像生成: 当你需要批量生成图像时,可以使用这个节点将多个提示词组织成一个列表,以便生成对应的图像。

· 文本生成: 在需要批量生成文本内容时,将多个提示词组织成一个列表,以便生成对应的文本。

· 自动化工作流: 在自动化内容生成工作流中,用于批量管理和传递提示词数据。

通过 CR Prompt List 节点,可以轻松地创建和管理提示词列表,从而在 ComfyUI 中实现高效的批量内容生成和管理。

四、CR Simple List节点

该节点用于创建和管理一个简单的数据列表,可以包含任意类型的元素,主要功能是接受多个输入元素并将它们组织成一个列表,以便在工作流中进行进一步处理。这些元素可以是任意类型的数据,如文本、数值、图像路径等。

输入:

文本输入框 → 输入多行文本,用回车隔开

输出:

LIST → 输出文本列表

注意:如下图所示我们文本输出是一个列表的形式,即按行进行单行的输出。

使用场景

· 数据整合: 将多种类型的数据整合到一个列表中,便于后续统一处理。

· 批量处理: 在需要批量处理不同类型的数据时,使用该节点创建一个包含所有数据的列表。

· 自动化工作流: 在自动化工作流中,用于批量管理和传递多种类型的数据。

通过 CR Simple List 节点,可以轻松地创建和管理包含多种类型数据的列表,从而在 ComfyUI 中实现高效的数据整合和批量处理。

五、CR Float Range List节点

该节点用于生成一个指定范围内的浮点数列表,主要功能是根据用户定义的起始值、结束值和步长,生成一个浮点数的列表。这对于需要处理一系列连续或离散浮点数的任务非常有用。

参数:

start → 范围的起始值

end → 范围的结束值

step → 步长,用于确定相邻两个值之间的间隔

operation → 要应用于列表值的数学运算,可以是 "none"、"sin"、"cos" 或 "tan"

decimal_places → 结果中的小数位数

ignore_first_value → 是否忽略生成范围的第一个值

max_values_per_loop → 每次循环生成的最大值数

loops → 要执行的循环次数

ping_pong → 是否应用“乒乓”模式,即在偶数次循环中反向生成范围

输出:

FLOAT → 生成的浮点数范围列表

如下图所示我们设置起点为0.00,终点为10.00,按照步长为1.00进行循环,不忽略起始值,并且设置循环2次,使用ping_pong模式,最终生成的图像从数值0到10为第一行,因为开启ping_pong所以在第二行为10到0.

使用场景

· 数值分析: 生成一个浮点数范围,用于数值分析或模拟。

· 参数扫描: 在机器学习或优化任务中,生成一组参数值用于扫描和测试。

· 数据生成: 在数据生成任务中,创建一系列连续或离散的浮点数数据。

通过 CR Float Range List 节点,可以轻松生成一个指定范围和步长的浮点数列表,从而在 ComfyUI 中实现高效的数值处理和分析。

六、CR Integer Range List节点

该节点用于生成一个指定范围内的整数列表,主要功能是根据用户定义的起始值、结束值和步长,生成一个整数的列表。这对于需要处理一系列连续或离散整数的任务非常有用。

参数:

start → 范围的起始值

end → 范围的结束值

step → 步长,用于确定相邻两个值之间的间隔

loops → 要执行的循环次数

ping_pong → 是否应用“乒乓”模式,即在偶数次循环中反向生成范围

输出:

INT → 生成的整数范围列表

Eg1:如下图所示,我们设置其实值为0到200,步长为5,循环一次,输出控制图像的x坐标值,从而使得我们最终生成的五角星图案从左边移动到右边。

Eg2:如下图所示,基于此节点我们可以改进"人物一致性控制工作流",不仅在种子上设置固定去控制我们的人物相似,在传入噪声图时,我们使用该节点去生成类似并且变化幅度很小的图像去做为地图,供Ksampler去扩散,最终生成我们人物几乎相似,但是表情不同,方位不同的图像。

使用场景

· 数值分析: 生成一个整数范围,用于数值分析或模拟。

· 参数扫描: 在机器学习或优化任务中,生成一组参数值用于扫描和测试。

· 数据生成: 在数据生成任务中,创建一系列连续或离散的整数数据。

通过 CR Integer Range List 节点,可以轻松生成一个指定范围和步长的整数列表,从而在 ComfyUI 中实现高效的数值处理和分析。

七、CR Binary To Bit List节点

该节点主要功能是用于将一个二进制数转换为一个比特(bi列表,这个列表由 0 和 1 组成,表示输入二进制数的每一位。

输入:

文本框输入 → 包含二进制字符串的字符串

输出:

STRING → 生成的位列表,其中每个元素表示输入字符串中的一个字符。

如下图所示,我们在输入框输入0000 0011 0000 0000,生成的图像为4*4的网格,每个网格为单独的一张图像,在数字为"1"的地方,我们生成的颜色与数字为"0"的地方生成的图像颜色不一样。

使用场景

· 数字信号处理: 在处理二进制数据或信号时,将二进制数转换为比特列表以便逐位处理。

· 二进制操作: 在需要对二进制数进行比特级别操作时,将其转换为比特列表进行处理。

· 数据分析: 将二进制数据转换为比特列表,以便进行数据分析或模式识别。

通过 CR Binary To Bit List 节点,可以将二进制数转换为比特列表,从而在 ComfyUI 中实现比特级别的数据处理和分析。

八、CR Value Cycler/CR Text Cycler 节点

CR Value Cycler 节点用于循环处理一组数值。每次运行时,该节点会按顺序输出列表中的下一个数值,当到达列表末尾时,将从头开始。CR Text Cycler 节点用于循环处理文本元素,每次运行时,该节点会按顺序输出列表中的下一个文本,当到达列表末尾时,将从头开始。

输入:

文本输入框 → 包含要循环的值,可以是多行

参数:

repeats → 每个值在结果中重复出现的次数,默认为 1。最小值为 1,最大值为 99999。

loops → 循环生成值的次数,默认为 1。最小值为 1,最大值为 99999。

输出:

FLOAT → 以浮点数输出值

INT → 以整数型输出值

STRING → 以字符串输出值

注意:repeats和loops实际产生的情况是一样的,就是重复多少遍,只是说repeats指示文字出现的次数,loops代表所有行的循环次数。

使用场景

①CR Value Cycler节点

· 参数循环: 在参数优化或测试中,依次循环使用一组参数值。

· 任务调度: 在自动化任务中,依次分配任务参数。

· 数据采样: 在数据处理流程中,依次输出数据样本进行处理。

②CR Text Cycler节点

· 提示词循环: 在生成任务中,依次使用一组提示词。

· 文本轮询: 在文本处理流程中,依次输出文本片段进行处理。

· 内容生成: 在内容生成工作流中,依次使用不同的文本模板或内容片段。

通过 CR Value Cycler 和 CR Text Cycler 节点,可以在 ComfyUI 中实现数值和文本的循环处理,从而在参数优化、任务调度和内容生成等场景中发挥重要作用。

九、“人物一致性控制”示例工作流

熟练使用以上节点,你就可以搭建“人物一致性控制”的工作流了。

这里使用SDXL的大模型,并且加载对应的LCM-lora用来控制图像的生成速度。ComfyUI的工作流,其主要核心还是思路,每个人的思路都是不一样的,希望大家在学习ComfyUI的时候不要被固定的套路困住阵脚,多发散。最后如果你有好的工作流搭建方向可以在评论区留言哦。

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

ComfyUI进阶:Comfyroll插件 (三)的更多相关文章

  1. {Django基础十之Form和ModelForm组件}一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 ModelForm

    Django基础十之Form和ModelForm组件 本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 Model ...

  2. [.net 面向对象程序设计进阶] (4) 正则表达式 (三) 表达式助手

    [.net 面向对象程序设计进阶] (2) 正则表达式(三) 表达式助手 上面两节对正则表达式的使用及.NET下使用正则表达式作了详细说明,本节主要搜集整理了常用的正则表达式提供参考. 此外为了使用方 ...

  3. javascript进阶课程--第三章--匿名函数和闭包

    javascript进阶课程--第三章--匿名函数和闭包 一.总结 二.学习要点 掌握匿名函数和闭包的应用 三.匿名函数和闭包 匿名函数 没有函数名字的函数 单独的匿名函数是无法运行和调用的 可以把匿 ...

  4. javascript进阶教程第三章--匿名和闭包--案例实战

    javascript进阶教程第三章--匿名和闭包--案例实战 一.学习任务 通过几个小练习回顾学过的知识点 二.实例 练习1: 实例描述:打开页面后规定时间内弹出一个新窗口,新窗口指定时间后自动关闭. ...

  5. 开发工具:Mybatis.Plus.插件三种方式的逆向工程

    本文源码:GitHub·点这里 || GitEE·点这里 一.逆向工程简介 在Java开发中,持久层最常用的框架就是mybatis,该框架需要编写sql语句,mybatis官方提供逆向工程,可以把数据 ...

  6. webpack进阶之插件篇

    一.插件篇 1. 自动补全css3前缀 autoprefixer 官方是这样说的:Parse CSS and add vendor prefixes to CSS rules using values ...

  7. vs2010开发activex(MFC)控件/ie插件(三),js调用ocx控件的接口函数

    原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/50802280   js调用ocx控件的接口函数,先看demo效果:      简单测试过程 ...

  8. Go - 如何编写 ProtoBuf 插件 (三) ?

    目录 前言 演示代码 小结 推荐阅读 前言 上篇文章<Go - 如何编写 ProtoBuf 插件 (二) >,分享了基于 自定义选项 定义了 interceptor 插件,然后在 hell ...

  9. iOS开发——UI进阶篇(三)自定义不等高cell,如何拿到cell的行高,自动计算cell高度,(有配图,无配图)微博案例

    一.纯代码自定义不等高cell 废话不多说,直接来看下面这个例子先来看下微博的最终效果 首先创建一个继承UITableViewController的控制器@interface ViewControll ...

  10. C++进阶 面向对象基础(三)

    类的的定义: 初始化一般建议使用构造函数初始化列表形式: Person(const string nm, const string addr):name(nm), address(addr){} th ...

随机推荐

  1. SSL/TSL 总结

    参考:https://blog.csdn.net/qq153471503/article/details/109524764 (一)生成CA证书 1.创建CA证书私钥openssl genrsa -a ...

  2. asp.net core api 3.1 dynamic 入参转json对象

    比如接口 public object GetList(dynamic obj){ //var jElement=(JsonElement)obj;//使用system.text.json处理 var ...

  3. WPF开发快速入门【4】自定义控件与用户控件

    概述 本文描述WPF的自定义控件和用户控件. 自定义控件 前面文章介绍了WPF的ControlTemplate,当我们对系统控件自带的样式不太满意时,我们可以通过控件模板自定义用户的样式,以Butto ...

  4. .net core C# DataTable 和List之间相互转换的方法

    一.List<T>/IEnumerable转换到DataTable/DataView 方法一: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 ...

  5. 003. git标签

    git标签 标签用于记录详细修改内容,为后续使用提供帮助. 也方便快速的回滚. 每一次提交[commit]都可以打一个tag标签. 测试阶段标签规则: 以 0.01 0.02版本为主 正式上线标签规则 ...

  6. 设定cookie 获取cookie数据的转换

    1,cookie必须是键值对形式的               键名=数值               而且必须是 字符串格式               document.cookie = 'nam ...

  7. Java第二次Blog

    7-4~6题目集 前言 这些题目主要用到对象与类的处理继承与多态的使用: 继承和多态是面向对象编程中相互关联的两个概念.继承为多态提供了基础,而多态则通过继承实现了代码的灵活性和可扩展性. 1.字符串 ...

  8. DoNet Core的启动过程-WebApplicationBuilder

    1.前言 在NET6开始做ASP.NETCore的开发,我们首先要看的是启动过程,而WebApplication和WebApplicationBuilder 类是启动过程好不开的类,WebApplic ...

  9. 安装sql 2012 时遇到“需要更新的以前的 Visual Studio 2010 实例。”规则失败。

    "需要更新的以前的 Visual Studio 2010 实例."规则失败.此计算机安装了需要 Service Pack 1 更新的 Visual Studio 2010,必须安装 ...

  10. FlashDuty Changelog 2023-10-30 | 告警路由与 Slack 应用

    FlashDuty:一站式告警响应平台,前往此地址免费体验! 告警路由 什么是告警路由? FlashDuty已经与Zabbix.Prometheus等监控系统实现无缝集成,通过一个简单的webhook ...