ComfyUI Segmentation Agent:用智能体 + SAM3 在 ComfyUI 中精准分割角色

插件6天前发布 小马良
33 0

如果你在 AI 艺术工作流中需要精确分割图像中某个特定角色——比如“左边第四个穿红裙、提手提箱的女人”——标准分割模型往往力不从心。SAM 3 虽然支持“开放词汇”提示(如“金发男人”),但其内置词汇仍远小于人类语言的表达能力。

Meta AI发布SAM 3:支持文本/图像双提示,图像视频分割性能翻

ComfyUI-SAM3节点详解:文本提示驱动图像视频分割,支持GPU加速与交互式操作

ComfyUI Segmentation Agent 可以将 视觉大语言模型(VLM) 与 SAM 3 结合,通过智能体循环,用自然语言逐步引导分割过程,实现对复杂、图像特定概念的精准掩码生成。

核心功能

  • ✅ 自然语言驱动:输入“穿蓝衬衫、戴眼镜、站在树下的男人”,智能体会自动拆解为“男人”、“蓝衬衫”、“眼镜”等 SAM 3 可识别的子概念。
  • ✅ 支持本地与云端 LLM
    • 本地:通过 llama-cpp-python 加载 GGUF 视觉模型(如 Qwen 3 VL、Gemma 3 37B)
    • 云端:通过 OpenRouter 调用 Gemini 等模型(推荐 google/gemini-3-flash-preview
  • ✅ 高质量分割:基于 Meta 最新发布的 SAM 3 模型,掩码边缘更精细。
  • ✅ 处理 SAM 词汇外概念:如“半人马”、“穿和服的猫”等神话或复合对象,通过分步组合实现。
ComfyUI Segmentation Agent:用智能体 + SAM3 在 ComfyUI 中精准分割角色

工作原理:智能体如何“思考”分割?

  1. 理解提示:VLM 分析图像与“角色描述”(如“提着包的女人”)。
  2. 生成子提示:拆解为“女人”、“手提包”、“站立姿态”等简单短语。
  3. 调用 SAM 3:为每个短语生成初始掩码。
  4. 可视化反馈:将编号的掩码叠加回原图,供 VLM 评估。
  5. 验证与迭代
    • 若掩码覆盖目标,则合并为最终结果;
    • 若不准确,则尝试新短语(如“棕色手提包”、“长发”)。
  6. 终止条件:达到满意结果,或迭代次数上限(默认 5 次,最多 20 次)。

此过程模拟了人类“先找人,再找包,最后确认是同一个人”的逻辑。

局限性与权衡

  • 🔸 速度较慢:每次迭代需 VLM 推理 + SAM 3 分割,比 Grounded SAM 或 Sa2VA 慢数倍。
  • 🔸 VLM 幻觉风险:模型可能误判掩码正确性,尤其在低对比度区域。
  • 🔸 精度依赖模型:使用 Gemini 2.5/3 Flash 时效果显著优于多数开源 VLM;本地模型需足够强大(推荐 Qwen 3 VL 30B 或 Gemma 3 37B)。

该方案适合对精度要求极高、可接受较长处理时间的场景(如精细图像编辑、角色重绘)。

安装与配置

1. 安装节点

  • 克隆至 ComfyUI/custom_nodes/,或通过 ComfyUI Manager 安装。

2. 安装依赖

pip install -r requirements.txt

注意:需使用支持视觉模型的 llama-cpp-python。推荐 JamePeng 的 fork,并根据硬件安装预编译 wheel(如 CUDA + Python 3.12)。

3. 放置模型

  • 视觉 LLM(GGUF + mmproj):放入 ComfyUI/models/llm_gguf/
  • SAM 3 模型sam3.pt 放入 ComfyUI/models/sam3/

使用方式

选项一:本地 LLM(SAM3 Character Agent (Local)

  • 选择 GGUF 模型与 mmproj 文件
  • 输入角色描述(如“戴红色贝雷帽的画家”)
  • 调整 max_iterations(建议 5–10)和 confidence_threshold(0.4–0.6)

选项二:云端 LLM(SAM3 Character Agent (OpenRouter)

  • 在 OpenRouter 获取 API 密钥(有免费额度)
  • 模型推荐:google/gemini-3-flash-preview(速度快、准确率高)
  • 其他参数同本地版

节点输入/输出

输入说明
image待分割图像
character_description自然语言角色描述
max_iterations最大尝试次数(默认 5)
confidence_thresholdSAM3 掩码置信度阈值(默认 0.5)
输出说明
mask最终组合掩码(可直接用于 Inpaint)
debug_images每轮迭代的可视化结果(用于调试)

未来方向

  • 优化提示词库:内置 SAM 3 已验证有效的提示词,减少无效尝试。
  • 兼容 Grounded SAM / Sa2VA:结合更开放的词汇分割器,可能提升鲁棒性。
  • 引入边界框 VLM:如 Moondream,用视觉坐标替代纯文本提示,减少语义偏差。
© 版权声明

相关文章

暂无评论

none
暂无评论...