ComfyUI Node
SDMatte 精细抠图
A ComfyUI node in Ruinode/SDMatte with 9 inputs and 2 outputs.
SDMatte 精细抠图
- sdmatte_model
- image
- mask
- alpha
- cutout
◄prompt_typebbox_mask►
◄inference_size1024►
◄is_transparentfalse►
◄caption►
◄point_radius35►
◄seed0►
CategoryRuinode/SDMatte
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| sdmatte_model | SDMATTE_MODEL | — | |
| image | IMAGE | — | |
| mask | MASK | 指示要抠哪个目标的提示掩码,不必精确,粗略覆盖主体即可。 | |
| prompt_type | COMBO | bbox_mask | 视觉提示类型。 bbox_mask:取掩码外接框作为提示,官方测试脚本的默认路径,通常最稳; mask:直接用掩码本身,适合已有较准的粗分割; point_mask:在掩码内随机取 10 个点。 ⚠ 仅 SDMatte.pth 支持;SDMatte_plus.pth 用它会输出全黑, 因为 SDMatte*(plus) 的训练集用 COCO-Matte 替换了 RefMatte,未训练点提示; auto_mask:不给定位信息,全图自动,画面只有单一主体时可用。 |
| inference_size | COMBO | 1024 | 官方测试固定用 1024,降低会明显损失边缘细节。 |
| is_transparent | BOOLEAN | false | 目标是否为玻璃、纱、烟雾等透明/半透明物体。 该开关会切换模型的不透明度嵌入分支,抠透明物时务必打开。 |
| captionopt | STRING | 目标物体的英文描述(对应 RefMatte 的指代表达式),经 CLIP 编码后 注入 UNet 的下采样/上采样两段 cross-attention。 · SDMatte.pth:有语义作用,填对能小幅提升(实测羊驼图 MAD 0.01120→0.01072) · SDMatte_plus.pth:无语义作用,填了反而更差,请留空 (plus 的训练集用 COCO-Matte 替换了 RefMatte,未学过文本指代) 留空即官方测试时的默认行为。 | |
| point_radiusopt | INT | 355–100 | 仅 prompt_type=point_mask 时生效,其余模式完全不参与运算。 含义:在提示区域随机取 10 个点,每点用 sigma=该值的高斯核晕开成光斑, 再逐像素取最大值合成提示图 —— 即每个点的影响半径。 官方训练用 25,测试期用 25+10=35,故默认 35。 |
| seedopt | INT | 00–4294967295 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| alpha | MASK | — |
| cutout | IMAGE | — |