如果你在 AI 艺术工作流中需要精确分割图像中某个特定角色——比如“左边第四个穿红裙、提手提箱的女人”——标准分割模型往往力不从心。SAM 3 虽然支持“开放词汇”提示(如“金发男人”),但其内置词汇仍远小于人类语言的表达能力。
ComfyUI Segmentation Agent 可以将 视觉大语言模型(VLM) 与 SAM 3 结合,通过智能体循环,用自然语言逐步引导分割过程,实现对复杂、图像特定概念的精准掩码生成。
- GitHub:https://github.com/adambarbato/ComfyUI-Segmentation-Agent
- 网盘:https://pan.quark.cn/s/abfcc11d0e88 提取码:edSF
核心功能
- ✅ 自然语言驱动:输入“穿蓝衬衫、戴眼镜、站在树下的男人”,智能体会自动拆解为“男人”、“蓝衬衫”、“眼镜”等 SAM 3 可识别的子概念。
- ✅ 支持本地与云端 LLM:
- 本地:通过
llama-cpp-python加载 GGUF 视觉模型(如 Qwen 3 VL、Gemma 3 37B) - 云端:通过 OpenRouter 调用 Gemini 等模型(推荐
google/gemini-3-flash-preview)
- 本地:通过
- ✅ 高质量分割:基于 Meta 最新发布的 SAM 3 模型,掩码边缘更精细。
- ✅ 处理 SAM 词汇外概念:如“半人马”、“穿和服的猫”等神话或复合对象,通过分步组合实现。

工作原理:智能体如何“思考”分割?
- 理解提示:VLM 分析图像与“角色描述”(如“提着包的女人”)。
- 生成子提示:拆解为“女人”、“手提包”、“站立姿态”等简单短语。
- 调用 SAM 3:为每个短语生成初始掩码。
- 可视化反馈:将编号的掩码叠加回原图,供 VLM 评估。
- 验证与迭代:
- 若掩码覆盖目标,则合并为最终结果;
- 若不准确,则尝试新短语(如“棕色手提包”、“长发”)。
- 终止条件:达到满意结果,或迭代次数上限(默认 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_threshold | SAM3 掩码置信度阈值(默认 0.5) |
| 输出 | 说明 |
|---|---|
mask | 最终组合掩码(可直接用于 Inpaint) |
debug_images | 每轮迭代的可视化结果(用于调试) |
未来方向
- 优化提示词库:内置 SAM 3 已验证有效的提示词,减少无效尝试。
- 兼容 Grounded SAM / Sa2VA:结合更开放的词汇分割器,可能提升鲁棒性。
- 引入边界框 VLM:如 Moondream,用视觉坐标替代纯文本提示,减少语义偏差。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...















