vault backup: 2026-04-24 13:57:17
This commit is contained in:
@@ -4,8 +4,8 @@
|
||||
"title": "Design ComfyUI video segmentation and tracking",
|
||||
"titleGenerationStatus": "success",
|
||||
"createdAt": 1776871296744,
|
||||
"updatedAt": 1777007031552,
|
||||
"lastResponseAt": 1777007031552,
|
||||
"updatedAt": 1777009655147,
|
||||
"lastResponseAt": 1777009655147,
|
||||
"sessionId": "50e1c568-9493-4c86-8ca1-1f50b0f2e724",
|
||||
"providerState": {
|
||||
"providerSessionId": "50e1c568-9493-4c86-8ca1-1f50b0f2e724"
|
||||
@@ -15,12 +15,12 @@
|
||||
],
|
||||
"usage": {
|
||||
"model": "kimi-for-coding",
|
||||
"inputTokens": 88635,
|
||||
"inputTokens": 126204,
|
||||
"cacheCreationInputTokens": 0,
|
||||
"cacheReadInputTokens": 0,
|
||||
"contextWindow": 200000,
|
||||
"contextTokens": 88635,
|
||||
"percentage": 44,
|
||||
"contextTokens": 126204,
|
||||
"percentage": 63,
|
||||
"contextWindowIsAuthoritative": true
|
||||
}
|
||||
}
|
||||
5
.obsidian/workspace.json
vendored
5
.obsidian/workspace.json
vendored
@@ -179,7 +179,7 @@
|
||||
}
|
||||
],
|
||||
"direction": "horizontal",
|
||||
"width": 241.5
|
||||
"width": 427.5
|
||||
},
|
||||
"left-ribbon": {
|
||||
"hiddenItems": {
|
||||
@@ -195,8 +195,9 @@
|
||||
"obsidian-excalidraw-plugin:新建绘图文件": false
|
||||
}
|
||||
},
|
||||
"active": "cf6ed9a83174d6d5",
|
||||
"active": "98c4d568edb73698",
|
||||
"lastOpenFiles": [
|
||||
"自动语义分割系统/插件功能大全.md",
|
||||
"自动语义分割系统/安装步骤.md",
|
||||
"自动语义分割系统/系统设计.md",
|
||||
"自动语义分割系统/ComfyUI 搭建操作指南.md",
|
||||
|
||||
472
自动语义分割系统/插件功能大全.md
Normal file
472
自动语义分割系统/插件功能大全.md
Normal file
@@ -0,0 +1,472 @@
|
||||
---
|
||||
title: ComfyUI 插件功能大全
|
||||
date: 2026-04-24
|
||||
tags:
|
||||
- comfyUI
|
||||
- 插件
|
||||
- 节点
|
||||
- 参考手册
|
||||
---
|
||||
|
||||
# ComfyUI 插件功能大全
|
||||
|
||||
> 本文档整理视频语义分割系统中涉及的 5 个核心 ComfyUI 插件的全部节点与功能,便于快速查阅与选型。
|
||||
|
||||
---
|
||||
|
||||
## 1. ComfyUI-segment-anything-2
|
||||
|
||||
**作者**: kijai
|
||||
**仓库**: https://github.com/kijai/ComfyUI-segment-anything-2
|
||||
**定位**: SAM2 分割基座,提供单帧分割、全自动分割、视频追踪三大能力。
|
||||
|
||||
### 1.1 (Down)Load SAM2Model
|
||||
|
||||
| 属性 | 说明 |
|
||||
|:---|:---|
|
||||
| **功能** | 从本地加载或自动下载 SAM2 模型权重 |
|
||||
| **关键参数** | `model`: 如 `sam2.1_hiera_base_plus.safetensors`;`segmentor`: 单图/视频模式;`device`: cuda/cpu;`precision`: fp16/bf16/fp32 |
|
||||
| **输出** | `sam2_model`(公共模型对象,供下游所有 SAM2 节点复用) |
|
||||
|
||||
### 1.2 Sam2Segmentation
|
||||
|
||||
| 属性 | 说明 |
|
||||
|:---|:---|
|
||||
| **功能** | 标准单帧分割器,支持点/框/mask 多种提示方式 |
|
||||
| **输入** | `image`, `sam2_model`, `coordinates_positive`, `coordinates_negative`, `bboxes`, `mask` |
|
||||
| **参数** | `keep_model_loaded`, `individual_objects` |
|
||||
| **输出** | `mask` |
|
||||
| **提示方式优先级** | 手绘 Mask(最直观)> 点坐标 > 检测框 |
|
||||
|
||||
### 1.3 Sam2AutoSegmentation
|
||||
|
||||
| 属性 | 说明 |
|
||||
|:---|:---|
|
||||
| **功能** | "分割一切"模式,无需手动提示,全图自动布点识别所有物体 |
|
||||
| **关键参数** | `points_per_side`(网格密度,默认 32);`pred_iou_thresh`(IOU 过滤阈值);`stability_score_thresh`(稳定性阈值,默认 0.95) |
|
||||
| **医疗场景调优** | 低对比度图像(如手术视频)建议将 `stability_score_thresh` 降至 **0.85~0.90**,并将 `points_per_side` 提高至 **32 或 64**,避免"角落碎块"现象 |
|
||||
| **输出** | `mask`, `segmented_image`, `bbox` |
|
||||
|
||||
### 1.4 Sam2VideoSegmentationAddPoints
|
||||
|
||||
| 属性 | 说明 |
|
||||
|:---|:---|
|
||||
| **功能** | 视频工作流的"交互站",在特定帧注入点标注,生成/更新视频推理状态 |
|
||||
| **输入** | `sam2_model`, `image`(视频批次), `coordinates_positive`, `coordinates_negative`, `prev_inference_state` |
|
||||
| **参数** | `frame_index`(标注帧号);`object_index`(单目标默认 0) |
|
||||
| **输出** | `sam2_model`, `inference_state` |
|
||||
| **核心机制** | 通过 `prev_inference_state` 支持**链式追加多帧标注**,是实现人工纠正的关键 |
|
||||
|
||||
### 1.5 Sam2VideoSegmentation
|
||||
|
||||
| 属性 | 说明 |
|
||||
|:---|:---|
|
||||
| **功能** | 视频推理核心引擎,接收带标注的 `inference_state`,执行跨帧自动追踪 |
|
||||
| **输入** | `sam2_model`, `inference_state` |
|
||||
| **参数** | `keep_model_loaded`(推荐开启,避免重复加载) |
|
||||
| **输出** | `mask`(完整视频的分割结果批次) |
|
||||
|
||||
### 1.6 Florence2 Coordinates
|
||||
|
||||
| 属性 | 说明 |
|
||||
|:---|:---|
|
||||
| **功能** | 桥接节点,将 Florence-2 视觉模型的检测输出转换为 SAM2 可识别的坐标格式 |
|
||||
| **输入** | `data`(Florence-2 输出) |
|
||||
| **参数** | `index`, `batch` |
|
||||
| **输出** | `center_coordinates`, `boxes` |
|
||||
| **用途** | 实现"文字搜图并抠图"的全自动语义流程 |
|
||||
|
||||
---
|
||||
|
||||
## 2. ComfyUI-VideoHelperSuite
|
||||
|
||||
**作者**: kosinkadink
|
||||
**仓库**: https://github.com/kosinkadink/ComfyUI-VideoHelperSuite
|
||||
**定位**: 视频工作流的核心 I/O 与批处理工具。
|
||||
|
||||
### 2.1 I/O 节点
|
||||
|
||||
| 节点 | 功能 | 关键参数 |
|
||||
|:---|:---|:---|
|
||||
| **Load Video (Upload)** | 将视频文件转换为图像批次 | `force_rate`(强制帧率), `force_size`(强制尺寸), `frame_load_cap`(最大加载帧数), `skip_first_frames`(跳过前 N 帧), `select_every_nth`(抽帧) |
|
||||
| **Load Video (Path)** | 同上,但通过文件路径读取 | 同上 |
|
||||
| **Load Image Sequence** | 从子文件夹加载所有图像文件 | `image_load_cap`, `skip_first_images`, `select_every_nth` |
|
||||
| **Video Combine** | 将图像批次合成为输出视频,支持音频合并 | `frame_rate`, `loop_count`, `filename_prefix`, `format`, `pingpong`, `save_output`, `crf`, `save_metadata`, `pix_fmt` |
|
||||
| **Load Audio** | 加载独立音频文件 | `seek_seconds`(起始时间) |
|
||||
|
||||
### 2.2 Latent / Image 批处理节点
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Split Batch** | 将批次拆分为 A、B 两组(按 `split_index` 分界) |
|
||||
| **Merge Batch** | 合并两组批次(A 在前,B 在后),支持尺寸不一致时缩放 |
|
||||
| **Select Every Nth** | 每 `select_every_nth` 个保留 1 个,其余丢弃 |
|
||||
| **Get Count** | 获取批次数量 |
|
||||
| **Duplicate Batch** | 复制批次 |
|
||||
|
||||
### 2.3 视频预览与格式
|
||||
|
||||
| 功能 | 说明 |
|
||||
|:---|:---|
|
||||
| **Animated Previews** | Load Video / Video Combine 等节点提供动画预览,支持 Open / Save / Pause / Hide / Sync |
|
||||
| **Advanced Previews** | 需手动开启。通过 ffmpeg 实时转码预览,可反映 skip/resize 等参数设置,减少远程带宽占用,支持浏览器无法直接播放的格式 |
|
||||
| **Video Formats** | 支持通过自定义 JSON 文件添加 ffmpeg 输出格式(如 AV1-WebM),可暴露 `crf`、`pix_fmt` 等参数为 UI 控件 |
|
||||
|
||||
---
|
||||
|
||||
## 3. ComfyUI-Impact-Pack
|
||||
|
||||
**作者**: ltdrdata
|
||||
**仓库**: https://github.com/ltdrdata/ComfyUI-Impact-Pack
|
||||
**定位**: 图像增强的超级工具箱,涵盖检测、分割、细节修复、放大、管道、区域采样等。
|
||||
|
||||
### 3.1 Detector 节点(检测器)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **SAMLoader (Impact)** | 加载 SAM 模型(支持 SAM2) |
|
||||
| **ONNXDetectorProvider** | 加载 ONNX 模型,提供 BBOX_DETECTOR |
|
||||
| **CLIPSegDetectorProvider** | CLIPSeg 包装器,提供 BBOX_DETECTOR |
|
||||
| **SEGM Detector (combined)** | 分割检测,返回统一 mask |
|
||||
| **BBOX Detector (combined)** | 边界框检测,返回 mask |
|
||||
| **SAMDetector (combined)** | SAM 技术提取指定 SEGS 位置的 segment,输出统一 mask |
|
||||
| **SAMDetector (Segmented)** | 同上,但分离输出多个 mask(`combined_mask` + `batch_masks`) |
|
||||
| **Simple Detector (SEGS)** | 综合 BBOX + SAM/SEGM 的便捷检测工具 |
|
||||
| **Simple Detector for Video (SEGS)** | 对视频逐帧检测,生成带批次 mask 的 SEGS |
|
||||
| **SAM2 Video Detector (SEGS)** | 利用 SAM2 视频追踪技术生成 SEGS(需 SAMLoader 选择 SAM2 模型) |
|
||||
|
||||
### 3.2 ControlNet / IPAdapter (SEGS)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **ControlNetApply (SEGS)** | 在 SEGS 中应用 ControlNet(支持 `segs_preprocessor` 或 `control_image`) |
|
||||
| **ControlNetClear (SEGS)** | 清除 SEGS 中已应用的 ControlNet |
|
||||
| **IPAdapterApply (SEGS)** | 在 SEGS 中应用 IPAdapter |
|
||||
|
||||
### 3.3 Mask 操作
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Pixelwise(SEGS & SEGS)** | 两个 SEGS 像素级与运算 |
|
||||
| **Pixelwise(SEGS - SEGS)** | SEGS 相减 |
|
||||
| **Pixelwise(SEGS & MASK)** | SEGS 与 MASK 像素级与运算 |
|
||||
| **Pixelwise(SEGS & MASKS ForEach)** | SEGS 与 MASK 批次的逐元素与运算 |
|
||||
| **Pixelwise(MASK & MASK)** | Mask 与运算 |
|
||||
| **Pixelwise(MASK - MASK)** | Mask 相减 |
|
||||
| **Pixelwise(MASK + MASK)** | Mask 合并 |
|
||||
| **Dilate Mask** | Mask 膨胀/腐蚀(负值支持腐蚀) |
|
||||
| **Gaussian Blur Mask** | Mask 高斯模糊(可用于羽化边缘) |
|
||||
| **Mask Rect Area** | 通过百分比定义矩形 Mask(带预览画布) |
|
||||
| **Mask Rect Area (Advanced)** | 通过像素值定义矩形 Mask |
|
||||
|
||||
### 3.4 Detailer 节点(细节修复)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Detailer (SEGS)** | 基于 SEGS 对图像进行细节修复/重绘 |
|
||||
| **Detailer (SEGS) with auto retry** | 同上,若 patch 全黑则自动重试 |
|
||||
| **DetailerDebug (SEGS)** | 带调试输出,可监控裁剪图与修复后的裁剪图 |
|
||||
| **FaceDetailer** | 自动检测人脸并进行增强 |
|
||||
| **FaceDetailer (pipe)** | FaceDetailer 的管道版(支持多轮处理) |
|
||||
| **MaskDetailer (pipe)** | 对 Mask 区域进行 Detailer 修复的简单 inpaint 节点 |
|
||||
| **MaskPainter** | 提供 Mask 绘制功能 |
|
||||
| **ToBinaryMask** | 将含 Alpha 的 mask 二值化为 0/255 |
|
||||
| **MASK to SEGS** | 将 Mask 转换为 SEGS |
|
||||
| **MASK to SEGS For Video** | 视频版 Mask 转 SEGS(AnimateDiff 兼容) |
|
||||
| **MediaPipe FaceMesh to SEGS** | 将 MediaPipe FaceMesh 关键点分离为带标签的 SEGS |
|
||||
|
||||
### 3.5 SEGS 操作与处理
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **SEGSDetailer** | 对 SEGS 进行细节修复(不贴回原图) |
|
||||
| **SEGSPaste** | 将 SEGS 结果贴回原图(支持 `ref_image_opt` 替换) |
|
||||
| **SEGSPreview** | 预览 SEGS 内容(可配合 `fallback_image_opt`) |
|
||||
| **SEGSPreview (CNET Image)** | 预览 ControlNetApply (SEGS) 配置的图像 |
|
||||
| **SEGSToImageList** | SEGS 转 Image List |
|
||||
| **SEGSToMaskList** | SEGS 转 Mask List |
|
||||
| **SEGS Filter (label)** | 按标签过滤 SEGS |
|
||||
| **SEGS Filter (ordered)** | 按大小和位置排序后取范围 |
|
||||
| **SEGS Filter (range)** | 按大小和位置范围过滤 |
|
||||
| **SEGS Filter (non max suppression)** | NMS 去重(按 IoU 阈值) |
|
||||
| **SEGS Filter (intersection)** | 按 IoA 阈值排除与另一组 SEGS 显著重叠的部分 |
|
||||
| **SEGS Assign (label)** | 为 SEGS 顺序分配标签 |
|
||||
| **SEGSConcat** | 拼接两组 SEGS |
|
||||
| **SEGS Merge** | 将多个 SEG 合并为单个 SEG |
|
||||
| **Picker (SEGS)** | 对话框手动选择特定 SEG |
|
||||
| **Set Default Image For SEGS** | 为 SEGS 设置默认图像 |
|
||||
| **Remove Image from SEGS** | 移除 SEGS 中的图像设置 |
|
||||
| **Make Tile SEGS** | 将图像切分为瓦片形式的 SEGS(用于 Tiled Upscale 实验) |
|
||||
| **Dilate Mask (SEGS)** | 对 SEGS 内的 Mask 进行膨胀/腐蚀 |
|
||||
| **Gaussian Blur Mask (SEGS)** | 对 SEGS 内的 Mask 进行高斯模糊 |
|
||||
| **SEGS_ELT Manipulation** | 实验性节点:DecomposeSEGS / AssembleSEGS / Edit SEG_ELT / Dilate SEG_ELT 等 |
|
||||
| **Count Elt in SEGS** | 统计 SEGS 中的元素数量 |
|
||||
|
||||
### 3.6 Pipe 节点(管道封装)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **ToDetailerPipe / FromDetailerPipe** | 将 Detailer 所需的多输入打包为 DETAILER_PIPE,或解包 |
|
||||
| **ToBasicPipe / FromBasicPipe** | 将 model/clip/vae/conditioning 打包为 BASIC_PIPE,或解包 |
|
||||
| **EditBasicPipe / EditDetailerPipe** | 替换 Pipe 中的部分元素 |
|
||||
| **FromDetailerPipe_v2 / FromBasicPipe_v2** | 额外输出原始 Pipe(便于链式编辑) |
|
||||
| **Latent Scale (on Pixel Space)** | 潜空间→像素空间→放大→潜空间 |
|
||||
| **PixelKSampleUpscalerProvider** | 基于 K-Sampling 的放大器(Latent↔Pixel 转换) |
|
||||
| **PixelTiledKSampleUpscalerProvider** | tiled 版本,避免高分辨率爆显存 |
|
||||
| **Any PIPE -> BasicPipe** | 将其他套件的兼容 PIPE 转为 BASIC_PIPE |
|
||||
|
||||
### 3.7 PK_HOOK(迭代放大钩子)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **DenoiseScheduleHookProvider** | 迭代过程中逐步调整 denoise |
|
||||
| **CfgScheduleHookProvider** | 迭代过程中逐步调整 CFG |
|
||||
| **StepsScheduleHookProvider** | 迭代过程中逐步调整采样步数 |
|
||||
| **NoiseInjectionHookProvider** | 按 schedule 注入噪声 |
|
||||
| **UnsamplerHookProvider** | 每轮迭代应用 Unsampler |
|
||||
| **PixelKSampleHookCombine** | 串联两个 PK_HOOK |
|
||||
|
||||
### 3.8 DETAILER_HOOK(细节修复钩子)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **NoiseInjectionDetailerHookProvider** | 每个 SEGS 处理时注入噪声 |
|
||||
| **UnsamplerDetailerHookProvider** | 每个循环应用 Unsampler |
|
||||
| **DenoiseSchedulerDetailerHookProvider** | 循环过程中调整 detailer denoise |
|
||||
| **CoreMLDetailerHookProvider** | 固定裁剪区域为 CoreML 支持的尺寸 |
|
||||
| **DetailerHookCombine** | 串联两个 DETAILER_HOOK |
|
||||
| **SEGSOrderedFilterDetailerHook / SEGSRangeFilterDetailerHook / SEGSLabelFilterDetailerHook** | 将 SEGSFilter 包装为 DETAILER_HOOK |
|
||||
| **PreviewDetailerHook** | 每个 SEGS 修复完成后提供预览 |
|
||||
| **VariationNoiseDetailerHookProvider** | 应用 variation seed |
|
||||
| **CustomSamplerDetailerHookProvider** | 使用自定义采样器 |
|
||||
| **LamaRemoverDetailerHookProvider** | 在细节修复阶段应用 Lama Remover 去除区域 |
|
||||
|
||||
### 3.9 Iterative Upscale(迭代放大)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Iterative Upscale (Latent/on Pixel Space)** | 将放大因子拆分为多步,迭代执行潜空间放大 |
|
||||
| **Iterative Upscale (Image)** | 图像输入版本的迭代放大 |
|
||||
|
||||
### 3.10 TwoSamplers(双采样器)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **TwoSamplersForMask** | mask=0 区域用 base_sampler,mask=1 区域用 mask_sampler |
|
||||
| **TwoAdvancedSamplersForMask** | 每步交替在 base 和 mask 区域采样 |
|
||||
| **KSamplerProvider / KSamplerAdvancedProvider** | KSampler 包装器,用于 TwoSamplers |
|
||||
| **TiledKSamplerProvider** | Tiled KSampler 包装器 |
|
||||
| **TwoSamplersForMaskUpscalerProvider** | 将 TwoSamplersForMask 扩展为 Upscaler |
|
||||
|
||||
### 3.11 Image Utils
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **PreviewBridge (image)** | 配合 Clipspace MaskEditor 的图像桥接节点 |
|
||||
| **PreviewBridge (latent)** | 配合 Clipspace MaskEditor 的 Latent 桥接节点(支持 mask 读写) |
|
||||
| **ImageSender / ImageReceiver** | 同 `link_id` 的图像自动收发 |
|
||||
| **LatentSender / LatentReceiver** | 同 `link_id` 的 Latent 自动收发(LatentSender 内含 PreviewLatent) |
|
||||
|
||||
### 3.12 Switch 节点
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Switch (image,mask) / Switch (latent) / Switch (SEGS)** | 按 selector 选择指定输入输出 |
|
||||
| **Switch (Any)** | 任意类型输入的通用 Switch |
|
||||
| **Inversed Switch (Any)** | 单输入多输出的反向 Switch |
|
||||
|
||||
### 3.13 Wildcards(动态提示词)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **ImpactWildcardProcessor** | 处理 `__wildcard-name__` 和 `{a\|b\|c}` 动态语法,支持 populate/fixed 模式 |
|
||||
| **ImpactWildcardEncode** | 同上,额外支持 LoRA 加载(如 `<lora:...>`)和 LBW 语法 |
|
||||
|
||||
### 3.14 Regional Sampling(区域采样)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **RegionalPrompt** | 将 mask 与采样器绑定为 REGIONAL_PROMPTS |
|
||||
| **CombineRegionalPrompts** | 合并多个 REGIONAL_PROMPTS |
|
||||
| **RegionalSampler** | 基础采样器 + 区域提示分步采样(支持 overlap_factor 混合) |
|
||||
| **RegionalSamplerAdvanced** | 高级版,支持按 step 控制 |
|
||||
|
||||
### 3.15 Impact KSampler
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **KSampler (pipe)** | pipe 版 KSampler |
|
||||
| **KSampler (advanced/pipe)** | pipe 版 KSamplerAdvanced |
|
||||
| **GITSScheduler Func Provider** | 为 GITSScheduler 提供调度函数 |
|
||||
| **Impact Scheduler Adapter** | 解决 scheduler widget 转 input 后的兼容问题 |
|
||||
|
||||
### 3.16 Batch / List 工具
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Image Batch to Image List / Image List to Image Batch** | 图像批次与列表互转 |
|
||||
| **Make Image List / Make Image Batch** | 多图像合成列表/批次 |
|
||||
| **Masks to Mask List / Mask List to Masks / Make Mask List / Make Mask Batch** | Mask 版本同上 |
|
||||
| **Flatten Mask Batch** | 将 Mask 批次压平为单个 Mask |
|
||||
| **Make List (Any)** | 创建任意值列表 |
|
||||
| **Select Nth Item (Any list)** | 选择列表第 N 项(越界返回最后一项) |
|
||||
|
||||
### 3.17 Logics(实验性逻辑控制)
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **ImpactCompare / ImpactConditionalBranch / ImpactConditionalBranchSelMode** | 条件分支 |
|
||||
| **ImpactInt / ImpactBoolean / ImpactMinMax / ImpactNeg** | 基础运算 |
|
||||
| **ImpactValueSender / ImpactValueReceiver** | 值收发 |
|
||||
| **ImpactImageInfo** | 获取图像信息 |
|
||||
| **ImpactIsNotEmptySEGS / ImpactIfNone** | 空值/None 判断 |
|
||||
| **Queue Trigger / Queue Trigger (Countdown)** | 自动插入队列(循环辅助) |
|
||||
| **Sleep** | 等待指定秒数 |
|
||||
| **Set Widget Value** | 设置指定节点的 widget 值 |
|
||||
| **Set Mute State** | 设置指定节点的 mute 状态 |
|
||||
| **Control Bridge** | 根据 mode/behavior 修改控制节点状态并插入新队列 |
|
||||
| **Remote Boolean / Remote Int (on prompt)** | 在 prompt 开始时强制设置指定 node_id 的 widget 值 |
|
||||
|
||||
### 3.18 HuggingFace 节点
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **HF Transformers Classifier Provider** | 加载 HuggingFace transformers 分类模型 |
|
||||
| **SEGS Classify** | 利用分类器对 SEGS 进行分类过滤(支持 `label > number` 表达式) |
|
||||
|
||||
### 3.19 其他节点
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Impact Scheduler Adapter** | scheduler 间接连接适配器 |
|
||||
| **StringListToString** | 字符串列表转字符串 |
|
||||
| **WildcardPromptFromString** | 从字符串创建带标签的 wildcard(配合 MakeTileSEGS) |
|
||||
| **String Selector** | 选择字符串的某部分(支持 `#` 分隔的多行模式) |
|
||||
| **Combine Conditionings / Concat Conditionings** | Conditioning 合并/拼接 |
|
||||
| **Negative Cond Placeholder** | FLUX.1 等无 Negative Conditioning 模型的占位符 |
|
||||
| **Execution Order Controller** | 强制控制节点执行顺序 |
|
||||
| **List Bridge** | 确保列表数据在转发前已收集完成 |
|
||||
|
||||
### 3.20 交互式功能(非节点)
|
||||
|
||||
| 功能 | 说明 |
|
||||
|:---|:---|
|
||||
| **Interactive SAM Detector (Clipspace)** | 右键含 MASK 和 IMAGE 输出的节点 → `Open in SAM Detector` 或 `Impact SAM Detector`,交互式生成 SAM Mask |
|
||||
| **模型混用检测** | 自动检测并报告 SDXL Base/Refiner/SD1.x/SD2.x 模型与 clip 混用错误 |
|
||||
|
||||
---
|
||||
|
||||
## 4. rgthree-comfy
|
||||
|
||||
**作者**: rgthree
|
||||
**仓库**: https://github.com/rgthree/rgthree-comfy
|
||||
**定位**: 让 ComfyUI 更舒适的综合优化包,提供大量实用节点和全局体验改进。
|
||||
|
||||
### 4.1 核心节点
|
||||
|
||||
| 节点 | 功能 | 亮点 |
|
||||
|:---|:---|:---|
|
||||
| **Seed** | 直观的种子控制(类似 A1111) | 支持 -1 随机、固定值、-2/-3 递增递减;图像元数据可存储种子 |
|
||||
| **Reroute** | 改进版路由节点 | 支持多方向、多尺寸、可调整宽高和连接布局 |
|
||||
| **Bookmark (🔖)** | 画布书签导航 | 按快捷键瞬间跳转到指定位置,支持自定义 zoom 级别和多键组合 |
|
||||
| **Context / Context Big** | 通用数据流管道 | 将 model/clip/vae/conditioning/image 等打包传递,Context 与 Context Big 互相兼容;支持 Ctrl+拖拽自动连接 |
|
||||
| **Image Comparer** | 图像对比 | 两张图叠加对比,支持 Slide(滑动)和 Click(点击)模式 |
|
||||
| **Image Inset Crop** | 图像内嵌裁剪 | 支持按像素值或百分比裁剪 |
|
||||
| **Display Any** | 后端文本数据显示 | 执行后显示几乎所有文本数据 |
|
||||
| **Power Lora Loader** | 多 LoRA 批量加载 | 一键添加多个 LoRA,支持独立开关、强度调节、快速排序/删除 |
|
||||
| **Power Prompt** | 增强提示词输入 | 下拉菜单选择 embeddings/LoRA,支持保存提示片段;连接 MODEL 可自动解析 `<lora:...>` 标签 |
|
||||
| **Power Prompt - Simple** | Power Prompt 去 LoRA 版 | 用于 negative prompt |
|
||||
| **SDXL Power Prompt - Positive / Simple** | SDXL 专用版 | 分离 text_g / text_l 输入 |
|
||||
| **SDXL Config** | SDXL 参数配置 | 也可用于非 SDXL |
|
||||
| **Context Switch / Context Switch Big** | 分支选择 | 自动选择第一个非空的 Context 输入,配合 Muter 实现零浪费分支 |
|
||||
| **Any Switch** | 通用分支选择 | 对任意类型选择第一个非空输入 |
|
||||
| **Power Primitive** | 原语转换输出 | 输出 STRING/INT/FLOAT/BOOLEAN,支持输入类型自动转换 |
|
||||
| **Power Puter** | 多功能代码解析器 | 多行代码解析输出,支持简单运算(`a + b`)、图像维度提取(`a.shape[2]`)、甚至访问 prompt 中的其他节点数据 |
|
||||
|
||||
### 4.2 Mute / Bypass 控制节点
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Fast Muter** | 快速静音面板,一键 toggle 所有连接的节点(Mute 模式) |
|
||||
| **Fast Bypasser** | 同上,但执行 Bypass 而非 Mute |
|
||||
| **Fast Groups Muter** | 自动收集当前工作流所有 Group,一键 Mute/Enable 整个组 |
|
||||
| **Fast Groups Bypasser** | 同上,但执行 Bypass |
|
||||
| **Fast Actions Button** | 半自动化按钮,点击时执行预设动作(如 Seed 随机化、使用上次种子);支持快捷键触发 |
|
||||
| **Node Collector** | 清理 noodle,接受任意输入节点并转发(建议只连到 Fast Muter/Bypasser) |
|
||||
| **Mute / Bypass Repeater** | 将其 Mute/Bypass/Active 状态分发给所有连接的输入节点(或同组内所有节点) |
|
||||
| **Mute / Bypass Relay** | 与 Repeater 配合,监听输入节点的状态变化并中继给 Repeater |
|
||||
| **Random Unmuter** | 队列执行时随机取消静音一个输入(并立即静音回去),用于抽卡分支 |
|
||||
|
||||
### 4.3 其他节点
|
||||
|
||||
| 节点 | 功能 |
|
||||
|:---|:---|
|
||||
| **Label** | 纯视觉浮动标签,支持自定义字体、颜色、背景、角度、透明度;支持 Pin 固定 |
|
||||
|
||||
### 4.4 全局改进与功能(非节点)
|
||||
|
||||
| 功能 | 说明 |
|
||||
|:---|:---|
|
||||
| **Progress Bar** | 顶部极简进度条,显示队列大小、当前执行进度、多步骤节点进度 |
|
||||
| **Queue Selected Output Nodes** | 右键输出节点 → 仅执行选中输出节点路径,跳过工作流其余部分 |
|
||||
| **Auto-Nest Subdirectories** | 长 combo 列表(如 Load Checkpoint)自动按顶层子目录折叠分组 |
|
||||
| **Quick Mute/Bypass in Group Headers** | 组标题右上角显示 Mute/Bypass 图标,一键 toggle |
|
||||
| **Import Individual Node Widgets (Drag & Drop)** | 拖拽历史图像/JSON 时,仅覆盖同 ID 同类型节点的 widgets(如只导入 seed 或 prompt) |
|
||||
| **Copy Image** | 右键节点图像 → 复制到剪贴板 |
|
||||
| **Link Fixer** | 访问 `/rgthree/link_fixer` 检查并修复工作流中的断链;加载工作流时自动检测并控制台报告 |
|
||||
|
||||
---
|
||||
|
||||
## 5. ComfyUI-KJNodes
|
||||
|
||||
**作者**: kijai
|
||||
**仓库**: https://github.com/kijai/ComfyUI-KJNodes
|
||||
**定位**: 实用工具、模型优化和体验增强的杂项集合,依赖极少。
|
||||
|
||||
### 5.1 Set / Get 节点系统(核心)
|
||||
|
||||
KJNodes 的 Set/Get 是 ComfyUI 中替代长 noodle 的经典方案,现已全面升级为 Nodes 2.0 架构。
|
||||
|
||||
| 功能 | 说明 |
|
||||
|:---|:---|
|
||||
| **SetNode / GetNode** | 将任意类型的数据流虚拟化:Set 节点接收输入并命名,Get 节点通过同名引用远程获取数据 |
|
||||
| **子图支持 (Subgraph)** | Set 节点在父图中可见于所有子图;Get 节点会向上遍历祖先图查找匹配的 Set |
|
||||
| **Convert link to Set/Get** | 右键任意连线中点 → 转换为 Set/Get 对 |
|
||||
| **Convert to links** | 右键 Set/Get 节点 → 恢复为直接连线 |
|
||||
| **Convert outputs to Set/Get** | 批量将选中节点的所有输出转为 Set/Get 对(画布右键菜单或 Ctrl+Shift+S/G) |
|
||||
| **快捷键** | Ctrl+Shift+S(添加 Set)、Ctrl+Shift+G(添加 Get)、Ctrl+Shift+L(强制显示所有虚拟连线) |
|
||||
| **Shift+Middle-click** | Shift+中键点击输出槽创建 SetNode,点击输入槽创建 GetNode |
|
||||
| **Add paired GetNode** | 右键 SetNode → 自动添加同名配对的 GetNode |
|
||||
| **Double-click Get to jump** | 双击 GetNode 自动居中并选中其对应的 SetNode |
|
||||
| **Show links setting** | never / selected / always 控制虚拟连线显示时机 |
|
||||
| **Type inference** | Set 节点输入未连接但输出已连接时,自动推断并采用目标类型和颜色 |
|
||||
| **Paste rename coordination** | 粘贴 Set+Get 对时,Get 自动跟随 Set 的重命名 |
|
||||
|
||||
### 5.2 其他实用节点
|
||||
|
||||
根据仓库描述,KJNodes 还包含各类零散的实用工具节点,文档主要在节点描述和 tooltip 中。已知功能包括模型优化相关节点和各类 QoL(Quality of Life)辅助节点。
|
||||
|
||||
---
|
||||
|
||||
## 6. 跨插件协作速查表
|
||||
|
||||
| 常见任务 | 推荐节点组合 |
|
||||
|:---|:---|
|
||||
| **视频加载 + 抽帧** | VideoHelperSuite `Load Video` → `Select Every Nth` |
|
||||
| **第一帧交互式分割** | VideoHelperSuite `Select Images` → SAM2 `Sam2Segmentation`(手绘 mask 或坐标) |
|
||||
| **全自动分割一切** | SAM2 `Sam2AutoSegmentation` |
|
||||
| **视频追踪** | SAM2 `Sam2VideoSegmentationAddPoints` → `Sam2VideoSegmentation` |
|
||||
| **中途纠正追踪漂移** | 第二个 `Sam2VideoSegmentationAddPoints`(`prev_inference_state` 链式接入)+ rgthree `Fast Muter` 控制 |
|
||||
| **检测人脸并增强** | Impact `FaceDetailer` |
|
||||
| **按 Mask 分区重绘** | Impact `TwoSamplersForMask` 或 `RegionalSampler` |
|
||||
| **多 LoRA 快速切换** | rgthree `Power Lora Loader` + `Fast Muter` |
|
||||
| **图像对比验收** | rgthree `Image Comparer` |
|
||||
| **长 noodle 整理** | KJNodes `Set/Get` 或 rgthree `Context` / `Reroute` |
|
||||
| **仅执行部分分支** | rgthree `Queue Selected Output Nodes` 或 `Context Switch` + `Fast Muter` |
|
||||
| **按标签过滤 SEGS** | Impact `SEGS Filter (label)` |
|
||||
| **批量检测 + 分类** | Impact `Simple Detector (SEGS)` → `HF Transformers Classifier` → `SEGS Classify` |
|
||||
| **视频合成输出** | VideoHelperSuite `Video Combine` |
|
||||
|
||||
---
|
||||
|
||||
> **使用提示**:ComfyUI-Impact-Pack 的许多节点使用通配类型(wildcard type)实现任意输入/输出连接。在 ComfyUI 官方正式支持动态类型之前,虽然功能正常,但类型校验可能会产生误报的错误信息,可安全忽略。
|
||||
Reference in New Issue
Block a user