removes mask shrink

This commit is contained in:
matt3o
2023-09-26 14:42:34 +02:00
parent d0fabaf4e7
commit 69cf5b3e2f
3 changed files with 88 additions and 206 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ Essential nodes that are weirdly missing from ComfyUI core. With few exceptions
- Image Contrast Adaptive Sharpening ([credits](https://github.com/Jamy-L/Pytorch-Contrast-Adaptive-Sharpening))
- Mask Blur
- Mask Flip
- Mask Grow / Shrink (same as Mask grow but adds shrink)
- ~~Mask Grow / Shrink (same as Mask grow but adds shrink)~~ (this was recently added in the official repo)
- Mask Preview
- Simple Math
- Console Debug (outputs any input to console)
-36
View File
@@ -292,40 +292,6 @@ class MaskPreview(SaveImage):
return( results )
class GrowShrinkMask:
@classmethod
def INPUT_TYPES(s):
return {
"required": {
"mask": ("MASK",),
"amount": ("INT", {"default": 0, "min": -MAX_RESOLUTION, "max": MAX_RESOLUTION, "step": 1}),
"tapered_corners": ("BOOLEAN", {"default": True}),
},
}
RETURN_TYPES = ("MASK",)
CATEGORY = "essentials"
FUNCTION = "execute"
def execute(self, mask, amount, tapered_corners):
c = 0 if tapered_corners else 1
kernel = np.array([[c, 1, c],
[1, 1, 1],
[c, 1, c]])
output = mask.numpy().copy()
if amount < 0:
amount = -amount
grey_action = grey_erosion
else:
grey_action = grey_dilation
while amount > 0:
output = grey_action(output, footprint=kernel)
amount -= 1
output = torch.from_numpy(output)
return (output,)
def min_(tensor_list):
# return the element-wise min of the tensor list.
x = torch.stack(tensor_list)
@@ -476,7 +442,6 @@ NODE_CLASS_MAPPINGS = {
"MaskBlur+": MaskBlur,
"MaskFlip+": MaskFlip,
"GrowShrinkMask+": GrowShrinkMask,
"MaskPreview+": MaskPreview,
"SimpleMath+": SimpleMath,
@@ -496,7 +461,6 @@ NODE_DISPLAY_NAME_MAPPINGS = {
"MaskBlur+": "🔧 Mask Blur",
"MaskFlip+": "🔧 Mask Flip",
"GrowShrinkMask+": "🔧 Mask Grow/Shrink",
"MaskPreview+": "🔧 Mask Preview",
"SimpleMath+": "🔧 Simple Math",
+87 -169
View File
@@ -1,6 +1,6 @@
{
"last_node_id": 40,
"last_link_id": 58,
"last_node_id": 42,
"last_link_id": 61,
"nodes": [
{
"id": 9,
@@ -14,7 +14,7 @@
"1": 60
},
"flags": {},
"order": 16,
"order": 12,
"mode": 0,
"inputs": [
{
@@ -42,7 +42,7 @@
"1": 246
},
"flags": {},
"order": 21,
"order": 17,
"mode": 0,
"inputs": [
{
@@ -67,7 +67,7 @@
"1": 246
},
"flags": {},
"order": 19,
"order": 15,
"mode": 0,
"inputs": [
{
@@ -92,7 +92,7 @@
"1": 246
},
"flags": {},
"order": 20,
"order": 16,
"mode": 0,
"inputs": [
{
@@ -105,56 +105,6 @@
"Node name for S&R": "PreviewImage"
}
},
{
"id": 21,
"type": "MaskPreview+",
"pos": [
2340,
240
],
"size": {
"0": 210,
"1": 246
},
"flags": {},
"order": 13,
"mode": 0,
"inputs": [
{
"name": "mask",
"type": "MASK",
"link": 18
}
],
"properties": {
"Node name for S&R": "MaskPreview+"
}
},
{
"id": 22,
"type": "MaskPreview+",
"pos": [
2100,
390
],
"size": {
"0": 210,
"1": 246
},
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{
"name": "mask",
"type": "MASK",
"link": 17
}
],
"properties": {
"Node name for S&R": "MaskPreview+"
}
},
{
"id": 18,
"type": "MaskPreview+",
@@ -167,7 +117,7 @@
"1": 246
},
"flags": {},
"order": 12,
"order": 20,
"mode": 0,
"inputs": [
{
@@ -192,7 +142,7 @@
"1": 46
},
"flags": {},
"order": 5,
"order": 2,
"mode": 0,
"inputs": [
{
@@ -237,7 +187,7 @@
"1": 60
},
"flags": {},
"order": 15,
"order": 11,
"mode": 0,
"inputs": [
{
@@ -265,7 +215,7 @@
"1": 246
},
"flags": {},
"order": 17,
"order": 13,
"mode": 0,
"inputs": [
{
@@ -278,42 +228,6 @@
"Node name for S&R": "PreviewImage"
}
},
{
"id": 20,
"type": "LoadImageMask",
"pos": [
1400,
260
],
"size": {
"0": 220.70516967773438,
"1": 318
},
"flags": {},
"order": 0,
"mode": 0,
"outputs": [
{
"name": "MASK",
"type": "MASK",
"links": [
14,
15,
16
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "LoadImageMask"
},
"widgets_values": [
"cwf_inpaint_example_mask.png",
"alpha",
"image"
]
},
{
"id": 36,
"type": "SimpleMath+",
@@ -326,7 +240,7 @@
"1": 80
},
"flags": {},
"order": 18,
"order": 14,
"mode": 0,
"inputs": [
{
@@ -376,7 +290,7 @@
"1": 60
},
"flags": {},
"order": 24,
"order": 22,
"mode": 0,
"inputs": [
{
@@ -404,7 +318,7 @@
"1": 170
},
"flags": {},
"order": 6,
"order": 3,
"mode": 0,
"inputs": [
{
@@ -464,7 +378,7 @@
"1": 60
},
"flags": {},
"order": 7,
"order": 4,
"mode": 0,
"inputs": [
{
@@ -503,7 +417,7 @@
"1": 60
},
"flags": {},
"order": 8,
"order": 5,
"mode": 0,
"inputs": [
{
@@ -542,7 +456,7 @@
"1": 60
},
"flags": {},
"order": 9,
"order": 6,
"mode": 0,
"inputs": [
{
@@ -581,7 +495,7 @@
"1": 82
},
"flags": {},
"order": 2,
"order": 9,
"mode": 0,
"inputs": [
{
@@ -621,7 +535,7 @@
"1": 60
},
"flags": {},
"order": 3,
"order": 10,
"mode": 0,
"inputs": [
{
@@ -648,46 +562,6 @@
"xy"
]
},
{
"id": 17,
"type": "GrowShrinkMask+",
"pos": [
1690,
390
],
"size": {
"0": 310,
"1": 82
},
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"name": "mask",
"type": "MASK",
"link": 16
}
],
"outputs": [
{
"name": "MASK",
"type": "MASK",
"links": [
17
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "GrowShrinkMask+"
},
"widgets_values": [
-28,
true
]
},
{
"id": 13,
"type": "PreviewImage",
@@ -700,7 +574,7 @@
"1": 246
},
"flags": {},
"order": 22,
"order": 18,
"mode": 0,
"inputs": [
{
@@ -725,7 +599,7 @@
"1": 30
},
"flags": {},
"order": 10,
"order": 7,
"mode": 0,
"inputs": [
{
@@ -761,7 +635,7 @@
"1": 314
},
"flags": {},
"order": 1,
"order": 0,
"mode": 0,
"outputs": [
{
@@ -806,7 +680,7 @@
"1": 246
},
"flags": {},
"order": 23,
"order": 19,
"mode": 0,
"inputs": [
{
@@ -826,12 +700,12 @@
430,
560
],
"size": [
310,
190
],
"size": {
"0": 310,
"1": 194
},
"flags": {},
"order": 11,
"order": 8,
"mode": 0,
"inputs": [
{
@@ -873,6 +747,66 @@
0,
0
]
},
{
"id": 20,
"type": "LoadImageMask",
"pos": [
1400,
260
],
"size": {
"0": 220.70516967773438,
"1": 318
},
"flags": {},
"order": 1,
"mode": 0,
"outputs": [
{
"name": "MASK",
"type": "MASK",
"links": [
14,
15
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "LoadImageMask"
},
"widgets_values": [
"cwf_inpaint_example_mask.png",
"alpha",
"image"
]
},
{
"id": 21,
"type": "MaskPreview+",
"pos": [
2100,
380
],
"size": {
"0": 210,
"1": 246
},
"flags": {},
"order": 21,
"mode": 0,
"inputs": [
{
"name": "mask",
"type": "MASK",
"link": 18
}
],
"properties": {
"Node name for S&R": "MaskPreview+"
}
}
],
"links": [
@@ -964,22 +898,6 @@
0,
"MASK"
],
[
16,
20,
0,
17,
0,
"MASK"
],
[
17,
17,
0,
22,
0,
"MASK"
],
[
18,
16,