KJNodes/maskinggenerated

Separate Masks(SeparateMasks)

该节点基于计算机视觉库(如 OpenCV)实现,通过检测输入遮罩中的轮廓来识别独立的连通区域。

Separate Masks

mask
mask
size_threshold_width
256
size_threshold_height
256
mode
COMBO
max_poly_points
8
KJNodes

Separate Masks 节点,该节点基于计算机视觉库(如 OpenCV)实现,通过检测输入遮罩中的轮廓来识别独立的连通区域。

Separate Masks 节点是一个用于处理遮罩的工具。其核心功能是将一个包含多个不连续区域的输入遮罩,根据设定的条件分离成多个独立的遮罩。它通过识别遮罩中的连接式区域,并依据尺寸或形状进行筛选和分割,从而简化对复杂遮罩区域的管理和后续操作。

节点功能

该节点基于计算机视觉库(如 OpenCV)实现,通过检测输入遮罩中的轮廓来识别独立的连接式区域。它提供了三种分离模式(convex_polygonsareabox),每种模式采用不同的算法来处理和输出遮罩。处理后的输出是一个包含多个独立遮罩的批处理,便于在工作流中分别使用。

节点参数说明 - Separate Masks

输入

参数名称数据类型必填默认值取值范围/选项描述
maskMASK--需要分割的输入遮罩。

参数

参数名称数据类型必填默认值取值范围/选项描述
modeCOMBOconvex_polygons"convex_polygons", "area", "box"分离模式。选项:convex_polygons(使用凸多边形近似轮廓)、area(基于区域尺寸过滤)、box(基于边界框尺寸过滤)。
size_threshold_widthINT2560.0 - 4096(间距:1)设置宽度尺寸阈值,用于过滤区域。
size_threshold_heightINT2560.0 - 4096(间距:1)设置高度尺寸阈值,用于过滤区域。
max_poly_pointsINT83 - 32(间距:1)控制在 convex_polygons 模式下用于近似轮廓的最大多边形顶点数。

输出

参数名称数据类型描述
maskMASK输出分离后得到的多个独立遮罩。

使用场景

在图像编辑或区域特定生成的工作流中,此节点非常有用。例如,当您有一张包含多个分散物体的语义分割遮罩时,可以使用此节点将每个物体分离成独立的遮罩,然后分别对每个物体应用不同的图像处理节点(如重绘、上色或风格转换),实现精细化控制。

注意事项

请注意,节点的分离效果依赖于输入遮罩的质量和连接性。对于边缘模糊或粘连严重的区域,分离可能不够精确。此外,max_poly_points 参数会影响多边形近似模式的精度,需根据所需细节程度进行调整。

Separate Masks 节点源码链接

Separate Masks 节点来自 ComfyUI-KJNodes 节点包。

评论

使用 GitHub 登录后即可参与讨论。

评论加载中…