--version 0.0
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
# ComfyUI Mask Batch Merger
|
||||
A mask-merge node that merges masks in a mask batch into a single mask as the output.
|
||||
Contact:mmmmmmmmme_@outlook.com
|
||||
|
||||
## Features
|
||||
- Merge Mask Batch
|
||||
- Add Mode
|
||||
- Self-adaptable towards any mask batch size or number of mask
|
||||
- Mask Output
|
||||
|
||||
## Install
|
||||
Install through ComfyUI Manager by Searching **ComfyUI Mask Batch Merger**
|
||||
|
||||
## How to use
|
||||
1. Connect the node to the output of the mask batch
|
||||
2. Click run the workflow to get the output mask
|
||||
|
||||
## Video
|
||||
▶ [YouTube](https://youtu.be/7s1Q5KZv5hg)
|
||||
@@ -0,0 +1,3 @@
|
||||
from .mask_batch_merge import NODE_CLASS_MAPPINGS, NODE_DISPLAY_NAME_MAPPINGS
|
||||
|
||||
__all__ = ["NODE_CLASS_MAPPINGS", "NODE_DISPLAY_NAME_MAPPINGS"]
|
||||
@@ -0,0 +1,34 @@
|
||||
import torch
|
||||
|
||||
class MaskBatchMerge: #Add Mode
|
||||
|
||||
CATEGORY = "mmmmmmmmm"
|
||||
RETURN_TYPES = ("MASK",)
|
||||
RETURN_NAMES = ("merged_mask",)
|
||||
FUNCTION = "merge_masks"
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
return {
|
||||
"required": {
|
||||
"mask_batch": ("MASK",),
|
||||
}
|
||||
}
|
||||
|
||||
def merge_masks(self, mask_batch):
|
||||
|
||||
# 1. Sum from dim=0
|
||||
merged = torch.sum(mask_batch, dim=0, keepdim=True)
|
||||
|
||||
# 2. Limit the value between 0-1, in case of exposure after adding
|
||||
merged = torch.clamp(merged, 0.0, 1.0)
|
||||
|
||||
return (merged,)
|
||||
|
||||
NODE_CLASS_MAPPINGS = {
|
||||
"MaskBatchMergeAdd": MaskBatchMerge
|
||||
}
|
||||
|
||||
NODE_DISPLAY_NAME_MAPPINGS = {
|
||||
"MaskBatchMergeAdd": "Mask Merger"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
# ComfyUI Mask Batch Merger
|
||||
# no extra dependencies needed
|
||||
pillow>=10.0.0
|
||||
numpy>=1.24.0
|
||||
torch>=2.0.0
|
||||
Reference in New Issue
Block a user