WAS Node Suite - ComfyUI

详情

下载文件

模型描述

WAS Node Suite - ComfyUI - WAS#0263

ComfyUI 是一个基于节点的高级UI,利用 Stable Diffusion。它允许你创建自定义工作流,如图像后期处理或格式转换。

最新版本下载

专为 ComfyUI 设计的节点套件,包含许多新节点,如图像处理、文本处理等。

分享工作流 至工作流维基。建议嵌入包含工作流的PNG图片,但JSON文件也可以。你可以使用此工具轻松地将工作流添加到PNG文件中

重要更新

  • [更新于 5/29/2023] ASCII 已被弃用。文本节点输出的新首选方法是 STRING。这一更改从 ASCII 更改为 STRING,以便更清晰地显示所传递的数据。

    • was_suite_config.json 将自动将 use_legacy_ascii_text 设置为 false
  • 视频节点 - 新增两个视频节点:写入视频通过路径创建视频。这些是实验性节点。

当前节点:

  • BLIP 图像分析:从图像中获取文本描述,或通过提问询问图像。

    • 模型将自动从默认URL下载,但你可以在 was_suite_config 中指定另一个位置/描述模型。

    • 模型将存储在 ComfyUI/models/blip/checkpoints/ 目录中。

  • SAM 模型加载器:加载 SAM 分割模型。

  • SAM 参数:定义图像分割的 SAM 参数。

  • SAM 参数合并:合并 SAM 参数。

  • SAM 图像遮罩:对图像进行 SAM 遮罩。

  • 图像边界:对图像设置边界。

  • 图像边界内嵌:对图像边界进行内嵌。

  • 边界图像混合:混合边界图像。

  • 带遮罩的边界图像混合:通过遮罩混合边界图像。

  • 边界图像裁剪:裁剪边界图像。

  • 带遮罩的边界图像裁剪:通过遮罩裁剪边界图像。

  • 缓存节点:将潜变量、张量批处理(图像)和条件缓存到磁盘,以供以后使用。

  • CLIPTextEncode (NSP):从 NSP 食材柜中解析面食汤,或从包含 A1111 风格通配符的目录中解析通配符。

    • 通配符格式为 __filename__,也包括子目录,例如 __appearance/haircolour__(如果设置了 noodle_key 为 __)。

    • 你可以在 was_suite_config.json 文件中通过以下键设置自定义通配符路径:

      • "wildcards_path": "E:\\python\\automatic\\webui3\\stable-diffusion-webui\\extensions\\sd-dynamic-prompts\\wildcards"

      • 如果未设置路径,则通配符目录位于 WAS Node Suite 的根目录下,路径为 /wildcards

  • 条件输入切换:在两个条件输入间切换。

  • 恒定数字

  • 创建图像网格:从目标位置的图像创建图像网格,支持自定义通配符模式。可选边框大小和颜色。

  • 创建形态图像:通过两张图像创建 GIF/APNG 动画,实现图像间的渐变过渡。

  • 通过路径创建形态图像:通过指向包含图像的目录的路径创建 GIF/APNG 动画,支持可选模式。

  • 通过路径创建视频:从指定路径中的图像创建视频。

  • CLIPSeg 遮罩:使用 CLIPSeg 对图像进行遮罩,并返回原始遮罩。

  • CLIPSeg 遮罩批次:使用 CLIPSeg 创建图像批次(从图像输入)及批次遮罩。

  • 字典转控制台:将字典输入打印至控制台。

  • 图像分析

    • 黑白等级

    • RGB 等级

      • 依赖 matplotlib,首次运行时会尝试自动安装。
  • Diffusers Hub 下载器:从 HuggingFace Hub 下载 diffusers 模型并加载。

  • 图像批次:将多个批次张量合并为一个批次。

  • 图像空白:创建任意颜色的空白图像。

  • 通过遮罩混合图像:通过遮罩混合两张图像。

  • 图像混合:通过不透明度混合两张图像。

  • 图像混合模式:通过多种混合模式混合两张图像。

  • 图像光晕滤镜:应用基于高通的光晕滤镜。

  • 图像 Canny 滤镜:对图像应用 Canny 滤镜。

  • 图像色差:对图像应用像科幻电影、电影院和电子游戏中的色差镜头效果。

  • 图像色彩调色板

    • 基于输入图像生成色彩调色板。

      • 依赖 scikit-learn,首次运行时会尝试自动安装。
    • 支持 8 到 256 种颜色范围。

    • 优先使用 ./res/ 目录中的字体,若不可用则使用内置的“大致可用”字体。

  • 图像裁剪人脸:从图像中裁剪出人脸。

    • 限制:

      • 在生成质量差的图像或拍摄角度不好的情况下,有时无法检测到人脸。

      • 有时人脸裁剪为黑色,这是由于填充太大,与图像边缘相交所致。请使用更小的填充大小。

      • face_recognition 模式有时会错误识别非人脸物体为脸部。此功能还需要 [CUDA] GPU。

      • 仅检测一个人脸。这是为了简化使用而做出的设计选择。

    • 注意:

      • 检测按顺序运行。如果选定的检测级联未能检测到任何内容,它将尝试下一个可用的级联文件。
  • 图像固定位置裁剪:根据图像的 X 和 Y 坐标系中的像素尺寸,裁剪指定的顶部、左侧、右侧和底部位置。

  • 图像正方形位置裁剪:以 X/Y 中心点裁剪,生成围绕该点的正方形裁剪区域。

  • 图像位移扭曲:通过给定的幅度对图像进行变换,使用位移映射图像。

  • 图像德拉甘摄影滤镜:为图像应用安德烈·德拉甘风格的摄影效果。

  • 图像边缘检测滤镜:检测图像中的边缘。

  • 图像胶片颗粒:为图像添加胶片颗粒。

  • 图像滤镜调整:对图像应用各种调整。

  • 图像翻转:水平或垂直翻转图像。

  • 图像渐变映射:为图像应用渐变映射。

  • 图像生成渐变:生成具有指定停靠点和颜色的渐变映射。

  • 图像高通滤镜:对图像应用高频通滤波,返回细节。

  • 图像历史加载器:根据 Load Image Batch 节点从历史记录中加载图像。可在配置文件中定义最大历史记录。(目前需要重启才能显示上一会话的文件)

  • 图像输入切换:在两个图像输入之间切换。

  • 图像等级调整:调整图像的等级。

  • 图像加载:从系统中的任意路径或以 http 开头的 URL 加载 图像

  • 图像中值滤镜:对图像应用中值滤镜,如平滑表面的细节。

  • 图像混合 RGB 通道:将 RGB 通道混合成一张图像。

  • 图像监视器效果滤镜:为图像应用各种显示器效果:

    • 数字失真

      • 一种数字崩坏失真效果。
    • 信号失真

      • 类似 CRT 显示器的垂直条带中的模拟信号失真效果。
    • 电视失真

      • 电视扫描线和溢出失真效果。
  • 图像新星滤镜:一种使用正弦频率将图像分解为 RGB 频率的滤镜。

  • 图像 Perlin 噪声:生成 Perlin 噪声。

  • 图像 Perlin 功率分形:生成 Perlin 功率分形。

  • 图像粘贴人脸裁剪:将人脸裁剪物重新粘贴回原位置和尺寸。

    • 具有比 GFPGAN/CodeFormer 更好的混合函数,因此不应有可见接缝,并与扩散结果结合后效果优于 GFPGAN/CodeFormer。
  • 图像粘贴裁剪:利用 crop_data 节点输入,将裁剪(例如来自 Image Crop Location)粘贴到原始位置和尺寸。它使用与 Image Paste Face Crop 不同的混合算法,某些情况下可能更理想。

  • 图像功率噪声:生成幂律噪声。

    • 频率:频率参数控制噪声在不同频率上的分布。在傅里叶分析中,较高频率表示细小细节或高频成分,而较低频率表示粗糙细节或低频成分。调整频率参数可以产生不同的纹理和细节水平。具体范围和意义可能因噪声类型而异。

    • 衰减:衰减参数决定噪声的强度或强度。它控制噪声值偏离均值或中心值的程度。较高的衰减值导致更显著的变化和更强的噪声存在,而较低的值导致更平滑且不那么明显的噪声。具体范围和解释可能因噪声类型而异。

    • 噪声类型:要生成的幂律噪声类型(白色、灰色、粉色、绿色、蓝色)

  • 按位置粘贴图像裁剪:将裁剪粘贴到自定义位置。它使用与 Image Paste Crop 相同的混合算法。

  • 图像像素化:将图像转化为像素艺术!定义最大颜色数、像素化模式、随机状态、最大迭代次数,让这些角色闪耀。

  • 图像移除背景(Alpha):通过阈值和容差从图像中移除背景。

  • 图像移除颜色:从图像中移除一种颜色并用另一种颜色替换。

  • 图像缩放

  • 图像旋转:旋转图像

  • 图像保存:支持格式和路径的图像保存节点。(Bug:不显示图像)

  • 图像无缝纹理:将图像创建为可无缝拼接的纹理,支持可选平铺。

  • 图像选择通道:选择 RGB 图像中的单个通道。

  • 图像选择颜色:仅在黑色画布上返回选定的图像。

  • 图像阴影与高光:调整图像的阴影和高光。

  • 图像尺寸转数字:获取输入图像的 widthheight,以便与 Number 节点一起使用。

  • 图像拼接:在不同边拼接图像,可选在它们之间进行羽化混合。

  • 图像风格滤镜:使用 Pilgram 类似 Instagram 的滤镜为图像添加风格。

    • 依赖 pilgram 模块
  • 图像阈值:返回所需的图像阈值范围。

  • 图像平铺:将图像分割为多个图像批次的砖块。可与 Tensor Batch to Image 配合使用,从批次中选择单个砖块。

  • 图像转置

  • 图像伪景深滤镜:为图像应用虚假景深效果。

  • 图像转潜变量遮罩:将图像转换为潜变量遮罩。

  • 图像转噪声:将图像转换为噪声,对初始化混合作或初始输入给扩散模型很有用。

  • 图像转种子:将图像转换为可重复的种子。

  • 图像 Voronoi 噪声滤镜

    • 自定义实现的 Worley Voronoi 噪声图。
  • 输入切换(在 * 通配符修复前禁用)

  • KSampler (WAS):接受种子作为节点输入的采样器。

  • 加载缓存:加载已缓存的潜变量、张量批处理(图像)和条件文件。

  • 加载文本文件

    • 现在支持输出以文件命名的字典,或自定义输入。

    • 字典包含文件中的所有行列表。

  • 加载批处理图像

    • 递增文件夹中的图像,或从批处理中取出单张图像。

    • 如果路径或模式更改,它将重置其位置。

    • 模式是支持诸如 **/* 以获取目录和子目录中的所有文件,或 *.jpg 以仅选择指定目录中的 JPEG 图像的 glob。

  • 遮罩转图像:将 MASK 转换为 IMAGE

  • 遮罩批次转遮罩:从多个遮罩中返回一个单一遮罩。

  • 遮罩翻转:翻转遮罩。

  • 遮罩相加:将遮罩相加。

  • 遮罩相减:从一个遮罩中减去另一个遮罩。

  • 遮罩主区域:返回遮罩中的主要区域(最大面积)。

  • 遮罩少数区域:返回遮罩中的最小区域(最小面积)。

  • 遮罩任意区域:返回最接近指定大小的区域(大小不是像素的直接表示,而是近似值)。

  • 遮罩平滑区域:平滑遮罩的边界。

  • 遮罩腐蚀区域:腐蚀遮罩的边界。

  • 遮罩膨胀区域:膨胀遮罩的边界。

  • 遮罩填充区域:填充遮罩区域内的空洞。

  • 遮罩上限区域:仅返回在偏移范围内的白色像素。

  • 遮罩下限区域:返回最下方的像素值为白色(255)。

  • 遮罩阈值区域:在黑色值和白色值之间应用阈值图像。

  • 遮罩高斯区域:对遮罩应用高斯模糊。

  • 遮罩合并遮罩:将两个或多个遮罩合并为一个遮罩。

  • 遮罩合并批次:将多个遮罩批次合并为一个遮罩。

  • ComfyUI 载入器:一组 ComfyUI 载入器,还能输出包含正在加载的模型名称的字符串。

  • 潜变量噪声注入:将潜变量噪声注入潜变量图像。

  • 潜变量尺寸转数字:张量宽度/高度的潜变量尺寸。

  • 潜变量按因子放大:按因子放大潜变量图像。

  • 潜变量输入切换:在两个潜变量输入之间切换。

  • 逻辑布尔值:简单的 10 输出,用于逻辑。

  • MiDaS 深度近似:对单个图像输入生成深度近似。

  • MiDaS 遮罩图像:使用 MiDaS 对输入图像进行遮罩,并使用指定颜色。

  • 数字操作

  • 数字转种子

  • 数字转浮点数

  • 数字输入切换:在两个数字输入之间切换。

  • 数字输入条件:在两个输入之间进行比较或与 A 输入进行比较。

  • 数字转整数

  • 数字转字符串

  • 数字转文本

  • 随机数字

  • 保存文本文件:将文本字符串保存到文件中。

  • 种子:返回一个种子

  • 张量批处理转图像:从潜变量批次中选择单个图像,用于后续滤镜处理。

  • 文本添加标记:向文件名或其他文本中添加自定义标记。

  • 通过输入添加标记:通过输入添加自定义标记,表示单个 单行 名称和值。

  • 文本比较:比较两个字符串。返回是否相同(布尔值)、相似性得分,以及相似或差异文本。

  • 文本拼接:合并两个字符串。

  • 文本字典更新:合并两个字典。

  • 文本文件历史:显示之前打开的文本文件 (目前需要重启才能显示上一会话的文件)

  • 文本查找与替换:在字符串中查找并替换子字符串。

  • 通过字典查找与替换:将 ASCII 文本输入中的子字符串替换为字典。

    • 字典键用作替换键,它包含的行列表根据种子随机选择。
  • 文本输入切换:在两个文本输入之间切换。

  • 文本列表:创建文本字符串列表。

  • 文本拼接:合并字符串列表。

  • 文本多行:编写多行文本字符串。

  • 文本解析 A1111 嵌入:根据 /ComfyUI/models/embeddings/ 文件,将提示中的嵌入文件名转换为 embedding:[filename]] 格式。

  • 文本解析 Noodle Soup 提示:解析文本输入中的 NSP。

  • 文本解析标记:解析文本中的自定义标记。

  • 文本随机行:从文本输入字符串中选择随机行。

  • 文本字符串:编写单行文本字符串值。

  • 文本转条件:将文本字符串转换为条件。

  • 真正的随机.org 数字生成器:通过 Random.org 从大气噪声中在线生成真正的随机数。

  • 写入形态 GIF:将新帧写入现有 GIF(或创建新 GIF),帧之间进行插值。

  • 写入视频:在生成过程中将帧写入视频(最好使用 FFV1 用于无损图像)

额外节点

  • CLIPTextEncode (BlenderNeko 高级 + NSP):仅在您拥有 BlenderNeko 的 Advanced CLIP Text Encode 时可用。允许使用其高级 CLIPTextEncode 进行 NSP 和通配符使用。

视频节点

编解码器

你可以通过在 was_suite_config.json 中添加其四个字符 ID(一个字符串)和适当的容器扩展名来使用你的 ffmpeg 二进制文件中的编解码器。

示例 H264 编解码器(默认)

    "ffmpeg_extra_codecs": {
        "avc1": ".mp4",
        "h264": ".mkv"
    }

注意事项

  • 目前我只支持 Windows 安装的视频节点。

    • 我没有 Mac 或独立 Linux 发行版的访问权限。如果你成功使它们工作并希望 PR 一份补丁/指引,随时可以。
  • 视频节点需要 FFMPEG。你应该为你的系统下载适当的 FFMPEG 二进制文件,并在配置文件中设置 FFMPEG 路径。

  • 此外,如果你想使用 H264 编解码器,请 下载 OpenH264 1.8.0 并将其放置在 ComfyUI 的根目录下(示例:C:\ComfyUI_windows_portable)。

  • FFV1 会报告无效容器。你可以忽略此问题。生成的 MKV 文件是可读的。我尚未找出问题所在。文档告诉我应使用 MKV,但它却说不支持。

    • 如果你知道如何解决,请分享 PR
  • 写入视频 节点应使用无损视频编解码器,或者当它复制帧并重新应用压缩时,最初的帧会因每轮运行而开始指数级损坏。

文本标记

文本标记可用于 Save Text File 和 Save Image 节点。你还可以使用 Text Add Tokens 节点添加自己的自定义标记。

标记名称可以是任何不包含 : 字符的内容,以定义你的标记。它也可以是简单的正则表达式。

内置标记

  • [time]

    • 当前系统微秒时间
  • [time(format_code)]

    • 以人类可读格式的当前系统时间。使用 datetime 格式化

    • 示例:[hostname]_[time]__[time(%Y-%m-%d__%I-%M%p)] 将输出: SKYNET-MASTER_1680897261__2023-04-07__07-54PM

  • [hostname]

    • 执行 ComfyUI 的系统的主机名
  • [user]

    • 执行 ComfyUI 的用户

其他功能

导入 AUTOMATIC1111 WebUI 风格

当使用 WAS Node Suite 的最新版本时,将自动生成一个 was_suite_config.json 文件(如果它不存在)。你可以在该文件中设置 A1111 风格导入。

  • 运行 ComfyUI 以生成新的 /custom-nodes/was-node-suite-comfyui/was_Suite_config.json 文件。

  • 用文本编辑器打开 was_suite_config.json 文件。

  • webui_styles 值从 None 替换为名为 styles.csv 的 A1111 风格文件的路径。请确保 Windows 路径使用双反斜杠。

    • 示例 C:\\python\\stable-diffusion-webui\\styles.csv
  • 重启 ComfyUI

  • 使用 Prompt Styles Node 选择一个风格。

    • 第一个 ASCII 输出是你的正面提示,第二个 ASCII 输出是你的负面提示。

你可以将 webui_styles_persistent_update 设置为 true,以便每次启动 ComfyUI 时从 WebUI 更新 WAS Node Suite 风格。

推荐安装:

如果你在 Linux 上运行,或者在 Windows 上使用非管理员账户,确保 /ComfyUI/custom_nodeswas-node-suite-comfyuiWAS_Node_Suite.py 具有写权限。

  • 导航到你的 /ComfyUI/custom_nodes/ 文件夹。

  • 运行 git clone https://github.com/WASasquatch/was-node-suite-comfyui/

  • 导航到你的 was-node-suite-comfyui 文件夹。

    • 可移植/虚拟环境:

      • 运行 path/to/ComfUI/python_embeded/python.exe -m pip install -r requirements.txt
    • 使用系统 Python

      • 运行 pip install -r requirements.txt
  • 启动 ComfyUI

    • WAS 套件应自动为你卸载旧版节点。

    • 工具位于 WAS 套件菜单中。

替代安装:

如果你在 Linux 上运行,或者在 Windows 上使用非管理员账户,确保 /ComfyUI/custom_nodesWAS_Node_Suite.py 具有写权限。

  • 下载 WAS_Node_Suite.py

  • 将文件移动到你的 /ComfyUI/custom_nodes/ 文件夹。

  • WAS Node 套件将尝试自行安装依赖项,但你可能需要手动安装。所需的依赖项在本仓库的 requirements.txt 中。参见上述安装步骤。

  • 启动或重启 ComfyUI

    • WAS 套件应自动为你卸载旧版节点。

    • 工具位于 WAS 套件菜单中。

此方法不会安装 Image Crop Face 节点所需资源,你需自行下载 ./res/ 文件夹。

在 Colab 上安装

创建一个新单元格并添加以下代码,然后运行该单元格。你可能需要编辑到你的 custom_nodes 文件夹的路径。你也可以使用 此处的 Colab 主机

  • !git clone https://github.com/WASasquatch/was-node-suite-comfyui /content/ComfyUI/custom_nodes/was-node-suite-comfyui

  • 重启 Colab 运行时(不要断开连接)

    • 工具将位于 WAS 套件菜单中。

GitHub 仓库: https://github.com/WASasquatch/was-node-suite-comfyui

❤ 支持和 🖼️ 评价让我知道你想要更多!:3

此模型生成的图像

未找到图像。