蒙版清理 (Mask Cleanup) · 截图待补
这个节点是做什么的
Mask Cleanup 接收一张原生 ComfyUIMASK 并把它整理干净:删掉细小的孤立小岛(飘在主体之外的白色小斑点),补上小孔洞(实心区域内部的黑色针孔)。它会保留最大的那块区域,只对小于你设定阈值的部分做删除/填充。
这是一个纯粹、即时的 CPU 操作(用 scipy 做连通域标记)——没有 ▶ 运行、也没有 GPU 处理。因为它作用于原生 ComfyUI MASK 类型,通常放在一个产生蒙版的节点(遮罩、分割、阈值)和一个消费蒙版的节点之间,往往要通过 Bridge 转接(Bridge 文档)。
适用场景
- 抠色 / 去背之后,alpha 边缘出现像彩纸屑一样的杂点。
- 分割 / 遮罩模型在实心主体内部留下针孔时。
- Inpaint 或合成之前,想要一整块干净的区域,而不是一张带噪点的二值蒙版。
参数
min_region_frac
浮点数,默认0.01,范围 0.0–0.2,步长 0.001。小于蒙版最大区域面积这一比例的小岛会被删除、小孔会被填充。取 0.01 时,凡是小于主体面积 1% 的东西都会被清理。调高更激进(连较大的碎块也删),调低则只处理最细微的噪点。有一个绝对下限 64 px,因此即使设为 0.0,极小的区域仍会被清理。最大区域永不删除;碰到画面边缘的黑色区域会保持敞开(视为背景,而非封闭孔洞)。
输出
使用技巧
- 内部以 0.5 为阈值二值化,因此输出实际是二值(硬 0/1)——羽化 / 渐变的软边不会保留。若需要软边,请在清理之后再羽化或模糊。
- 如果未安装
scipy,节点会记录警告并原样透传蒙版。 - 碰到边缘的黑色区域是有意保持敞开的,因此一个开口在画面边缘的孔洞不会被填上。
相关节点
- Cutout(抠像) — 生成主体抠像,其 alpha 可能需要先清理。
- Bridge(到/从 Mask) — 在 ComfyTV 媒体和本节点消费的原生
MASK之间转换。