Nodes/RUI-Nodes/SDMatte 精细抠图
ComfyUI Node

SDMatte 精细抠图

A ComfyUI node in Ruinode/SDMatte with 9 inputs and 2 outputs.

By rui40000·Created 3 years ago·Updated 12 days ago· 17
SDMatte 精细抠图
  • sdmatte_model
  • image
  • mask
  • alpha
  • cutout
prompt_typebbox_mask
inference_size1024
is_transparentfalse
caption
point_radius35
seed0
CategoryRuinode/SDMatte

Inputs (9)

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

Outputs (2)

NameTypeDescription
alphaMASK
cutoutIMAGE