| --- |
| license: apache-2.0 |
| --- |
| ์ด ํ๋ก์ ํธ๋ ComfyUI(AGPL-3.0)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ ๋ ๋ฒ์ ์
๋๋ค. |
| ์๋ณธ ํ๋ก์ ํธ: https://github.com/comfyanonymous/ComfyUI |
| comfy-Custom-mask-nodes |
| ์ด ํ๋ก์ ํธ๋ ComfyUI์ฉ ํ์ฅ ๋ง์คํฌ ์ฒ๋ฆฌ ๋
ธ๋๋ค์ ์ ๊ณตํฉ๋๋ค. |
| ๋ง์คํฌ ๋ณํ, ๋ฏธ๋ฆฌ๋ณด๊ธฐ, ํฉ์ฑ ๋ฑ ๋ค์ํ ๋ง์คํฌ ์ ํธ๋ฆฌํฐ ๊ธฐ๋ฅ์ ํฌํจํ๊ณ ์์ต๋๋ค. |
|
|
| ComfyUI ๊ธฐ๋ณธ ๋ง์คํฌ ๋
ธ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ฌ, |
| ๋ง์คํฌ ์ฐ์ฐ ๊ณผ์ ์์ ๋ฐ์ํ๋ ์ํ ์ฑ๋ ์ค๋ฅ๋ฅผ ์ค์ด๊ณ |
| ๋ณด๋ค ์์ ์ ์ธ ๋ง์คํฌ ์ฒ๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋๋ก ๊ฐ์ ๋์์ต๋๋ค. |
|
|
| -Attention- |
|
|
| ์ด ํ๋ก์ ํธ๋ ComfyUI 0.092์ด์์์ ์ ์์๋ํ๋ ๋ฒ์ ์
๋๋ค. ComfyUI 11.1์์๋ ๊ธฐ๋ํฉ๋๋ค. |
| ๊ทธ๋ํฝ์นด๋๋ฅผ ์ฌ์ฉํ์ง ์๋ ์ฒ๋ฆฌ๊ธฐ ๋๋ฌธ์ CPU๋ AMD์์๋ ๊ธฐ๋๋ ๊ฒ๋๋ค. |
| - |
| ์ฃผ์ ๊ธฐ๋ฅ (Features) |
| Safe MaskToImage Node: ๋ง์คํฌ๋ฅผ ์ด๋ฏธ์ง๋ก ๋ณํ (์: ๊ทธ๋ ์ด์ค์ผ์ผ ์๊ฐํ). |
|
|
| Safe ImageToMask Node: ์ด๋ฏธ์ง์์ ํน์ ์ฑ๋์ ๊ธฐ๋ฐ์ผ๋ก ๋ง์คํฌ ์ถ์ถ. |
|
|
| Safe ImageColorToMask Node: ์ด๋ฏธ์ง์ ํน์ ์์ ๋ฒ์๋ก๋ถํฐ ๋ง์คํฌ ์์ฑ. |
|
|
| Safe SolidMask Node: ๊ท ์ผํ ๊ฐ์ผ๋ก ์ฑ์์ง ๋ง์คํฌ ์์ฑ. |
|
|
| Safe InvertMask Node: ๊ธฐ์กด ๋ง์คํฌ ๋ฐ์ . |
|
|
| Safe ImageCompositeMasked Node: ๋ง์คํฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฏธ์ง ํฉ์ฑ |
|
|
| Safe MaskComposite Node: ์ฌ๋ฌ ๋ง์คํฌ๋ฅผ ํฉ์ฑ. |
|
|
| Safe CropMask Node: ์ง์ ๋ ์์ญ์ผ๋ก ๋ง์คํฌ ์๋ผ๋ด๊ธฐ. |
|
|
| Safe Select CropMask Node:์์ ํ๋
ธ๋. ์ํ์ข์ฐ๋ก ์ง์ ์๋ฅผ ํฝ์
์ ์ง์ . |
|
|
| **ImagePadding : ์
๋ ฅ ์ด๋ฏธ์ง๋ฅผ ์ํ์ข์ฐ๋ก ์ง์ ํ ํฝ์
๋งํผ ํจ๋ฉํ์ฌ ํ์ฅ |
| |
| **MaskPadding : ์
๋ ฅ ๋ง์คํฌ๋ฅผ ์ํ์ข์ฐ๋ก ์ง์ ํ ํฝ์
๋งํผ ํจ๋ฉํ์ฌ ํ์ฅ |
|
|
| Safe FeatherMask Node: ๋ง์คํฌ์ ํ๋๋ง(๋ถ๋๋ฌ์ด ๊ฐ์ฅ์๋ฆฌ) ์ ์ฉ. |
|
|
| Safe GrowMask Node: ๋ง์คํฌ ์์ญ์ ํฝ์
ํฌ๊ธฐ๋ฅผ ๋ฐ๊นฅ์ชฝ์ผ๋ก ํ์ฅ(ํ์ฅํฝ์
๊ธฐ์ค25[์ฐ์์ผ๋ก ์ฐ๋ฉด ์ถ๊ฐํ์ฅ๊ฐ๋ฅ]). |
|
|
| Safe ShrinkMask Node: ๋ง์คํฌ ์์ญ์ ํฝ์
ํฌ๊ธฐ๋ฅผ ์์ชฝ์ผ๋ก ์ถ์. |
|
|
| Safe TransformMask Node: ๋ง์คํฌ ์์ญ์์ฒด์ ํฌ๊ธฐ๋ฅผ ์์ ํฝ์
๋ก ์ฌ์กฐ์ . |
|
|
| Safe ThresholdMask Node: ๊ทธ๋ ์ด์ค์ผ์ผ ๋ง์คํฌ๋ฅผ ์๊ณ๊ฐ์ผ๋ก ์ด์ง ๋ง์คํฌ๋ก ๋ณํ. |
|
|
| Safe MaskPreview Node: GUI์์ ๋ง์คํฌ ์ถ๋ ฅ ๋ฏธ๋ฆฌ๋ณด๊ธฐ. |
|
|
| Safe MaskSaveOnly: ๋ง์คํฌ ๋ฐ์ดํฐ๋ฅผ ํ๋ฐฑ์ด๋ฏธ์ง๋ก ์ ์ฅ. |
|
|
| Safe MaskSaveLink: ๋ง์คํฌ ๋ฐ์ดํฐ๋ฅผ ํ๋ฐฑ์ด๋ฏธ์ง๋ก ์ ์ฅ ํ ๋ง์คํฌ ์ฐ๊ฒฐ์ ์ถ๋ ฅ. |
|
|
| **SafeMaskChecker : ํธ์ง ๋ง์คํฌ๋ฅผ ์ง์ ์์์ผ๋ก ์๊ฐํํ์ฌ ์์ ํ๊ฒ ํ์ธ |
| |
| **SafeMaskDiffChecker : ์๋ณธ๊ณผ ํธ์ง ๋ง์คํฌ์ ์ฐจ์ด๋ฅผ ๊ฐ์กฐํ์ฌ ๋ณ๊ฒฝ๋ ์์ญ๋ง ์๊ฐํ |
|
|
| ์ค์น ๋ฐฉ๋ฒ (Getting Started) |
| Installation |
| ZIP ๋ค์ด๋ก๋ |
| ์ด ์ ์ฅ์๋ฅผ .zip ํ์ผ๋ก ๋ค์ด๋ก๋ํฉ๋๋ค. |
|
|
| custom_nodes ํด๋์ ๋ฐฐ์น |
| ์์ถ์ ํด์ ํ ํ, ComfyUI ์ค์น ๊ฒฝ๋ก์ custom_nodes ๋๋ ํ ๋ฆฌ์ ํด๋๋ฅผ ๋ฃ์ต๋๋ค. |
|
|
| ComfyUI ์ฌ์์ |
| ComfyUI๋ฅผ ์ฌ์์ํ๋ฉด ์๋ก์ด ์ปค์คํ
๋
ธ๋๊ฐ ๋ก๋๋ฉ๋๋ค. |
|
|
| ์ฌ์ฉ๋ฒ (Usage) |
| ์๋ํฐ |
| Safe ImageCompositeMasked Node : ์์ ํ ๋
ธ๋. ๋ง์คํฌ๋ฅผ ์ด์ฉํด ๋ ์ด๋ฏธ์ง๋ฅผ ํฉ์ฑํ ์ ์์ด, ๋ถ๋ถ ํฉ์ฑ์ด๋ ๋ธ๋ ๋ฉ ์์
์ ์ ํฉ. |
| Inputs: |
| destination: ํฉ์ฑ ๋์ ์ด๋ฏธ์ง |
| source: ๋ฎ์ด์์ธ ์ด๋ฏธ์ง |
| x, y: ์์น ์คํ์
|
| mask: ๋ธ๋ ๋ฉ์ ์ ์ดํ๋ ์ ํ์ ๋ง์คํฌ |
| Outputs: |
| image: ํฉ์ฑ๋ ์ด๋ฏธ์ง |
| Safe CropMask Node : ์์ ํ๋ ํ์ง๋ง ์๋ผ๋ด๋ ์์น๋ ์ถ๊ฐ์กฐ์ ํ์. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| x, y: ์๋ผ๋ผ ์์น |
| width, height: ์๋ผ๋ผ ํฌ๊ธฐ |
| Outputs: |
| mask: ์๋ผ๋ธ ๋ง์คํฌ |
| Safe Select CropMask Node : ์ ๊ท๋
ธ๋. ์ํ์ข์ฐ๋ก ์ง์ ์๋ฅผ ํฝ์
์ ์ง์ . |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| L, R, T, B: ์๋ผ๋ผ ์์น ๋ฐ ํฌ๊ธฐ |
| Outputs: |
| mask: ์๋ผ๋ธ ๋ง์คํฌ |
| Safe MaskComposite Node : ์ถฉ๋ ์์ธ์ ๊ฐ์. ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| mask_a: ์ฒซ ๋ฒ์งธ ๋ง์คํฌ |
| mask_b: ๋ ๋ฒ์งธ ๋ง์คํฌ |
| blend_mode: ๊ฒฐํฉ ๋ฐฉ์ (add, multiply ๋ฑ) |
| Outputs: |
| mask: ํฉ์ฑ๋ ๋ง์คํฌ |
| Safe FeatherMask Node : ๋ง์คํฌ ํ๋๋ง ๋
ธ๋. ๊ธฐ๋ณธ๋
ธ๋์ ํฌ๊ฒ ์ฐจ์ด๋ ์์ง๋ง, ์ถฉ๋ ์์ฒด๋ ์ค์. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| radius: ํ๋๋ง ๋ฐ๊ฒฝ |
| Outputs: |
| mask: ํ๋๋ง๋ ๋ง์คํฌ |
| Safe GrowMask Node : ์คํ๋
ธ๋. ์์ ํ๋ ํ์ง๋ง ๊ฒฐ๊ณผ๋ ๋ณด์ฅ์๋จ. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| amount: ํ์ฅํ ํฝ์
์ |
| Outputs: |
| mask: ํ์ฅ๋ ๋ง์คํฌ |
| Safe ThresholdMask Node : ์คํ๋
ธ๋. ์์ ํ๋ ํ์ง๋ง ๊ฒฐ๊ณผ๋ ๋ณด์ฅ์๋จ. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| threshold: ์๊ณ๊ฐ (0โ1) |
| Outputs: |
| mask: ์ด์งํ๋ ๋ง์คํฌ |
| ๊ธฐ๋ณธํ |
| Safe MaskToImage Node : ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| mask: ๋ณํํ ๋ง์คํฌ ํ
์ |
| Outputs: |
| image: ๋ง์คํฌ๋ฅผ ํํํ๋ ๊ทธ๋ ์ด์ค์ผ์ผ ์ด๋ฏธ์ง |
| Safe ImageToMask Node : ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| image: ์๋ณธ ์ด๋ฏธ์ง |
| channel: ์ถ์ถํ ์ฑ๋ (red, green, blue, alpha) |
| Outputs: |
| mask: ์์ฑ๋ ๋ง์คํฌ |
| Safe ImageColorToMask Node : ์์ ํ ๋
ธ๋. ํน์ ์์ ๋ฒ์๋ฅผ ์ง์ ํด ๋ง์คํฌ๋ฅผ ์์ฑํ ์ ์์ด, ์์ ๊ธฐ๋ฐ ์ ํ ์์
์ ์ ์ฉ. |
| Inputs: |
| image: ์๋ณธ ์ด๋ฏธ์ง |
| color: ์ง์ ๋ ์์ ๋๋ ๋ฒ์ |
| Outputs: |
| mask: ์์ ์ ํ์ผ๋ก ์์ฑ๋ ๋ง์คํฌ |
| Safe SolidMask Node : ์ถฉ๋ ์์ธ์ ๊ฐ์. ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| width: ๋ง์คํฌ ๋๋น |
| height: ๋ง์คํฌ ๋์ด |
| value: ์ฑ์ธ ๊ฐ (0โ1) |
| Outputs: |
| mask: ๋จ์ ๋ง์คํฌ |
| Safe InvertMask Node : ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| mask: ๋ฐ์ ํ ๋ง์คํฌ ํ
์ |
| Outputs: |
| mask: ๋ฐ์ ๋ ๋ง์คํฌ |
| ๊ธฐ๋ณธํ |
| Safe MaskToImage Node : ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| mask: ๋ณํํ ๋ง์คํฌ ํ
์ |
| Outputs: |
| image: ๋ง์คํฌ๋ฅผ ํํํ๋ ๊ทธ๋ ์ด์ค์ผ์ผ ์ด๋ฏธ์ง |
| Safe ImageToMask Node : ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| image: ์๋ณธ ์ด๋ฏธ์ง |
| channel: ์ถ์ถํ ์ฑ๋ (red, green, blue, alpha) |
| Outputs: |
| mask: ์์ฑ๋ ๋ง์คํฌ |
| Safe ImageColorToMask Node : ์์ ํ ๋
ธ๋. ํน์ ์์ ๋ฒ์๋ฅผ ์ง์ ํด ๋ง์คํฌ๋ฅผ ์์ฑํ ์ ์์ด, ์์ ๊ธฐ๋ฐ ์ ํ ์์
์ ์ ์ฉ. |
| Inputs: |
| image: ์๋ณธ ์ด๋ฏธ์ง |
| color: ์ง์ ๋ ์์ ๋๋ ๋ฒ์ |
| Outputs: |
| mask: ์์ ์ ํ์ผ๋ก ์์ฑ๋ ๋ง์คํฌ |
| ์๋ํฐ |
| Safe ImageCompositeMasked Node : ์์ ํ ๋
ธ๋. ๋ง์คํฌ๋ฅผ ์ด์ฉํด ๋ ์ด๋ฏธ์ง๋ฅผ ํฉ์ฑํ ์ ์์ด, ๋ถ๋ถ ํฉ์ฑ์ด๋ ๋ธ๋ ๋ฉ ์์
์ ์ ํฉ. |
| Inputs: |
| destination: ํฉ์ฑ ๋์ ์ด๋ฏธ์ง |
| source: ๋ฎ์ด์์ธ ์ด๋ฏธ์ง |
| x, y: ์์น ์คํ์
|
| mask: ๋ธ๋ ๋ฉ์ ์ ์ดํ๋ ์ ํ์ ๋ง์คํฌ |
| Outputs: |
| image: ํฉ์ฑ๋ ์ด๋ฏธ์ง |
| Safe MaskComposite Node : ์ถฉ๋ ์์ธ์ ๊ฐ์. ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| mask_a: ์ฒซ ๋ฒ์งธ ๋ง์คํฌ |
| mask_b: ๋ ๋ฒ์งธ ๋ง์คํฌ |
| blend_mode: ๊ฒฐํฉ ๋ฐฉ์ (add, multiply ๋ฑ) |
| Outputs: |
| mask: ํฉ์ฑ๋ ๋ง์คํฌ |
| ๋ณํ |
| Safe SolidMask Node : ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| width: ๋ง์คํฌ ๋๋น |
| height: ๋ง์คํฌ ๋์ด |
| value: ์ฑ์ธ ๊ฐ (0โ1) |
| Outputs: |
| mask: ๋จ์ ๋ง์คํฌ |
| Safe InvertMask Node : ์์ ํ ๋
ธ๋. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| mask: ๋ฐ์ ํ ๋ง์คํฌ ํ
์ |
| Outputs: |
| mask: ๋ฐ์ ๋ ๋ง์คํฌ |
| Safe GrowMask Node : ์์ ํ ๋
ธ๋. ๋ง์คํฌ์ ํฝ์
ํฌ๊ธฐ๋ฅผ ๋๋ฆผ. ์ต๋์ ํ ํฝ์
์ 25๋ก ๋ณ๊ฒฝ. ์ฌํ์ฅ์ ์ถ๊ฐ์ฐ๊ฒฐํ๋ฉด ๋ฉ๋๋ค. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| amount: ํ์ฅํ ํฝ์
์ |
| Outputs: |
| mask: ํ์ฅ๋ ๋ง์คํฌ |
| Safe ShrinkMask Node : ์ ๊ท๋
ธ๋. ๋ง์คํฌ์ ํฝ์
์ ์
๋ ฅ์น์ ๋น๋กํด์ ์ถ์ํฉ๋๋ค. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| amount: ์ถ์ํ ํฝ์
์ |
| Outputs: |
| mask: ํ์ฅ๋ ๋ง์คํฌ |
| Safe TransformMask Node : ์ ๊ท๋
ธ๋. ๋ง์คํฌ๋ฅผ ์
๋ ฅ์น์ ๋ง์ถฐ ํฌ๊ธฐ๋ฅผ ์กฐ์ . ํฝ์
๋จ์๋ก ์กฐ์ ํฉ๋๋ค. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| amount: ์กฐ์ ํ ๊ฐ๋ก ํฝ์
์ |
| amount: ์กฐ์ ํ ์ธ๋ก ํฝ์
์ |
| Outputs: |
| mask: ๋ณํ๋ ๋ง์คํฌ |
| Safe ThresholdMask Node : ์์ ํ๋
ธ๋. ์๊ณ๊ฐ์ ๋ง์ถฐ ๋ง์คํฌ๋ฅผ ์ด์งํํฉ๋๋ค. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| threshold: ์๊ณ๊ฐ (0โ1) |
| Outputs: |
| mask: ์ด์งํ๋ ๋ง์คํฌ |
| ImagePadding Node : ์ด๋ฏธ์ง์ ์บ๋ฒ์ค ํฌ๊ธฐ๋ฅผ ์ง์ ํ ๋ฐฉํฅ์ผ๋ก ๋๋ ค์ ์น ํจ. ํ๋ฐฑ ์ง์, ๊ฒฝ๊ณ ํ๋๋ง ์ง์. ์ด๋ฏธ์ง๊ฐ ์๋ณธ์ด์ด์ ์๋ฌ์ํ์ด ์์ด์ด๋ ๋ฆฌํด ํ ๋ณด์ ์ฒ๋ฆฌํ์ฌ ์ ์ฉํจ. |
| Inputs: |
| image : ์
๋ ฅ ์ด๋ฏธ์ง(๋ฐฐ์น๋ฐ์ดํฐ ์ฒดํน ํ ์๋๊ฒฝ์ฐ ๋ฐฐ์น์ฐจ์ ์ถ๊ฐํ์ฌ ๋ฆฌํด ํ ์ฌ์ฐ๊ฒฐ) |
| pad_top, pad_bottom, pad_left, pad_right : ๊ฐ ๋ฐฉํฅ๋ณ ํจ๋ฉ ํฌ๊ธฐ |
| padding_color : ํจ๋ฉ ์์ญ ์์(black/white) |
| feather_strength : ํจ๋ฉ ๊ฒฝ๊ณ ํ๋๋ง ๊ฐ๋ |
| Outputs: |
| `image : ํจ๋ฉ์ด ์ ์ฉ๋ ์ด๋ฏธ์ง ์ฒ๋ฆฌ๋ฐฉ์ ์
๋ ฅ ์ด๋ฏธ์ง๋ฅผ ๋ฐฐ์น ์ฐจ์ ๋ณด์ ํ ์ง์ ํ ํฝ์
๋งํผ ์ํ์ข์ฐ์ ํจ๋ฉ์ ์ถ๊ฐํ๊ณ ์ ํํ ์์์ผ๋ก ์ฑ์ |
| MaskPadding Node : ๋ง์คํฌ์ ์บ๋ฒ์ค ํฌ๊ธฐ๋ฅผ ์ง์ ํ ๋ฐฉํฅ์ผ๋ก ๋๋ ค์ ์น ํจ. ํ๋ฐฑ ์ง์, ๊ฒฝ๊ณ ํ๋๋ง ์ง์. ๋ง์คํฌ๋ฐ์ดํฐ๊ฐ ์๋ณธ์ด์ด์ ์๋ฌ์ํ์ด ์์ด๋ ๋ฆฌํด ํ ๋ณด์ ์ฒ๋ฆฌํ์ฌ ์ ์ฉํจ. |
| Inputs: |
| mask : ์
๋ ฅ ๋ง์คํฌ(๋ฐฐ์น๋ฐ์ดํฐ ์ฒดํน ํ ์๋๊ฒฝ์ฐ ๋ฐฐ์น์ฐจ์ ์ถ๊ฐํ์ฌ ๋ฆฌํด ํ ์ฌ์ฐ๊ฒฐ) |
| `pad_top, pad_bottom, pad_left, pad_right : ๊ฐ ๋ฐฉํฅ๋ณ ํจ๋ฉ ํฌ๊ธฐ |
| padding_color : ํจ๋ฉ ์์ญ ์์(black/white) |
| feather_strength : ํจ๋ฉ ๊ฒฝ๊ณ ํ๋๋ง ๊ฐ๋ |
| Outputs: |
| mask : ํจ๋ฉ์ด ์ ์ฉ๋ ๋ง์คํฌ ์ฒ๋ฆฌ๋ฐฉ์ ์
๋ ฅ ๋ง์คํฌ๋ฅผ ๋ฐฐ์น ์ฐจ์ ๋ณด์ ํ ์ง์ ํ ํฝ์
๋งํผ ์ํ์ข์ฐ์ ํจ๋ฉ์ ์ถ๊ฐํ๊ณ ์ ํํ ์์์ผ๋ก ์ฑ์ |
| ์ปทํ
|
| Safe CropMask Node : ์์ ํ๋ ํ์ง๋ง ์๋ผ๋ด๋ ์์น๋ ์ถ๊ฐ์กฐ์ ํ์. ๊ธฐ๋ณธ๊ฐ์ ์ผ์ชฝ ์์
๋๋ค. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| x, y: ์๋ผ๋ผ ์์น |
| width, height: ์๋ผ๋ผ ํฌ๊ธฐ |
| Outputs: |
| mask: ์๋ผ๋ธ ๋ง์คํฌ |
| Safe Select CropMask Node : ์์ ํ๋
ธ๋. ์ค์์ ๊ธฐ์ค์ผ๋ก ์ํ์ข์ฐ๋ก ์ง์ ์๋ฅผ ํฝ์
์ ์ง์ . |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| L, R, T, B: ์๋ผ๋ผ ์์น ๋ฐ ํฌ๊ธฐ |
| Outputs: |
| mask: ์๋ผ๋ธ ๋ง์คํฌ |
| Safe FeatherMask Node : ๋ง์คํฌ ํ๋๋ง ๋
ธ๋. ๊ธฐ๋ณธ๋
ธ๋์ ํฌ๊ฒ ์ฐจ์ด๋ ์์ง๋ง, ์ถฉ๋ ์์ฒด๋ ์ค์. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| radius: ํ๋๋ง ๋ฐ๊ฒฝ |
| Outputs: |
| mask: ํ๋๋ง๋ ๋ง์คํฌ |
| ์ฒด์ปค |
| Safe MaskPreview Node : ์์ ํ ๋
ธ๋. '๊ฐ์ด ๋จ์์๊ธด ํ๋ค๋ฉด', ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ.(๊นจ์ง๋ ๋ฒ๊ทธ ์์ .) |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| Outputs: |
| image: ๋ง์คํฌ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ด๋ฏธ์ง |
| Safe MaskSaveOnly Node : ์์ ํ ๋
ธ๋. ๋ง์คํฌ๋ฅผ ์ฝ๊ณ '์ฝคํผUI ์ถ๋ ฅ ํด๋์ ๋ง์คํฌํด๋์ ์ ์ฅ'. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| Safe MaskSaveLink Node : ์์ ํ ๋
ธ๋. ๋ง์คํฌ๋ฅผ ์ฝ๊ณ '์ฝคํผUI ์ถ๋ ฅ ํด๋์ ๋ง์คํฌํด๋์ ์ ์ฅ ํ' ๋ง์คํฌ ์ถ๋ ฅ ๋
ธ๋๋ก ์ฐ๊ฒฐ. ์ค๋ฅ๋ฐ์์ ๋ฆฌํดํ์ฌ ์์ ํ๋ฅผ ์ ๋ํด ์ฌ์ถ๋ ฅํจ. |
| Inputs: |
| mask: ๋ง์คํฌ ํ
์ |
| Outputs: |
| mask: ๋ง์คํฌ ํ
์ |
| SafeMaskChecker Node : ์์ ํ ๋
ธ๋. ์๋ณธ์ด๋ฏธ์ง์ ๋ง์คํฌ ์์ ์์ ๋ง์คํฌ๋ฅผ ๋ฎ์ด์ ์ด๋ฏธ์ง ๋ฏธ๋ฆฌ๋ณด๊ธฐ์ ์ฐ๊ฒฐํ์ฌ ์ฌ์ ํ์ธ ๊ฐ๋ฅํ๊ฒ ํจ.(๊นจ์ง๋ ๋ฒ๊ทธ ์์ .) |
| Inputs: |
| base_mask : ๊ธฐ์ค ๋ง์คํฌ(์๋ณธ์ด๋ฏธ์ง๋ฅผ ๋ง์คํฌ ์ปจ๋ฒํธ๋ก ์ถ๋ ฅํ ์ฐ๊ฒฐ) |
| edit_mask : ํธ์ง ๋ง์คํฌ(๋ง์คํฌ ์๋ํฐ๋ก ์์ ์์ญ ๊ทธ๋ฆฐ ํ ์ฐ๊ฒฐ) |
| color : ํ์ ์์(red/green/blue) |
| Outputs: |
| preview : ํธ์ง ๋ง์คํฌ๋ฅผ ์์ ์ค๋ฒ๋ ์ด๋ก ํํํ ์ด๋ฏธ์ง ์ฒ๋ฆฌ๋ฐฉ์ ํธ์ง ๋ง์คํฌ๋ฅผ ํ๋ฐฑ ์ด๋ฏธ์ง๋ก ๋ณํ ํ ์ ํํ ์์์ผ๋ก ์ค๋ฒ๋ ์ดํ์ฌ ์๊ฐ์ ์ผ๋ก ํ์ธ ๊ฐ๋ฅํ๊ฒ ์ถ๋ ฅ |
| SafeMaskDiffChecker Node : ์๋ณธ์ด๋ฏธ์ง์ ๋ง์คํฌ์ ์์ ๋ง์คํฌ์ ์ฐจ์ด์ ์ ๋์กฐ ํ ๋ณ๊ฒฝ์์์ ์ ์ด๋ฏธ์ง ๋ฏธ๋ฆฌ๋ณด๊ธฐ์ ์ฐ๊ฒฐํ์ฌ ์ฌ์ ํ์ธ ๊ฐ๋ฅํ๊ฒ ํจ.(๊นจ์ง๋ ๋ฒ๊ทธ ์์ .) |
| Inputs: |
| base_mask : ์๋ณธ ๋ง์คํฌ(์๋ณธ์ด๋ฏธ์ง๋ฅผ ๋ง์คํฌ ์ปจ๋ฒํธ๋ก ์ถ๋ ฅํ ์ฐ๊ฒฐ) |
| edit_mask : ์์ ๋ง์คํฌ(๋ง์คํฌ ์๋ํฐ๋ก ์์ ์์ญ ๊ทธ๋ฆฐ ํ ์ฐ๊ฒฐ) |
| color : ๊ฐ์กฐ ์์(red/green/blue) |
| Outputs: |
| preview : ๋ณ๊ฒฝ๋ ์์ญ์ ์์์ผ๋ก ๊ฐ์กฐํ ์ด๋ฏธ์ง ์ฒ๋ฆฌ๋ฐฉ์ ์๋ณธ๊ณผ ํธ์ง ๋ง์คํฌ๋ฅผ ๋น๊ตํ์ฌ ์ฐจ์ด ์์ญ๋ง ์ถ์ถ, ์ ์ฒด ์์ญ์ ๋ฐํฌ๋ช
์ฒ๋ฆฌํ๊ณ ์ฐจ์ด ์์ญ์ ์ง์ ์์์ผ๋ก ๊ฐ์กฐ |