Consolidate Masks(ConsolidateMasksKJ)
이 노드는 마스크 배치를 입력으로 받아 각 마스크의 유효 영역의 바운딩 박스를 분석합니다.
Consolidate Masks KJ
Consolidate Masks 노드는 마스크 배치를 입력받아 각 마스크의 유효 영역의 바운딩 박스를 분석합니다.
Consolidate Masks 노드는 마스크 배치를 최적화하고 관리하는 도구입니다. 핵심 기능은 여러 개별 마스크를 지정된 크기의 타일 내에 지능적으로 병합하여 처리해야 할 배치 수를 줄이고, 후속 처리 효율을 향상시키는 것입니다.
노드 기능
이 노드는 마스크 배치를 입력받아 각 마스크의 유효 영역의 바운딩 박스를 분석합니다. 핵심 알고리즘은 지정된 너비와 높이(패딩 포함) 내에 수용할 수 있는 최대 마스크 그룹을 찾아 병합합니다. 이 과정은 더 이상 병합할 마스크가 없을 때까지 반복되며, 최종적으로 통합된 새로운 마스크 배치를 출력합니다.
노드 파라미터 설명 - Consolidate Masks
연결 입력 (Inputs)
| 파라미터 이름 | 데이터 타입 | 필수 | 기본값 | 범위/옵션 | 설명 |
|---|---|---|---|---|---|
masks | MASK | 예 | - | - | masks (입력 파라미터): 병합될 원본 마스크 배치입니다. 타입은 MASK입니다. |
컨트롤 파라미터 (Parameters)
| 파라미터 이름 | 데이터 타입 | 필수 | 기본값 | 범위/옵션 | 설명 |
|---|---|---|---|---|---|
width | INT | 예 | 512 | 0 - 4096 (간격: 64) | width (입력 파라미터): 목표 병합 타일의 너비입니다. 범위는 0부터 4096까지이며, 조정 간격은 64입니다. |
height | INT | 예 | 512 | 0 - 4096 (간격: 64) | height (입력 파라미터): 목표 병합 타일의 높이입니다. 범위는 0부터 4096까지이며, 조정 간격은 64입니다. |
padding | INT | 예 | 0 | 0 - 4096 (간격: 1) | padding (입력 파라미터): 병합 시 마스크 간의 패딩입니다. 범위는 0부터 4096까지이며, 조정 간격은 1입니다. |
Output 출력
| 파라미터 이름 | 데이터 타입 | 설명 |
|---|---|---|
| MASK | MASK | MASK (출력 파라미터): 병합 최적화 후 출력되는 새로운 마스크 배치입니다. |
사용 시나리오
이미지 내 여러 결함을 일괄 수정하거나 여러 독립 요소에 대한 콘텐츠를 생성하는 등, 대량의 작은 객체나 영역을 각각 처리해야 하는 워크플로에서 유용합니다. 분할된 여러 마스크를 이 노드에 입력하면, 자동으로 더 적은 수의 타일로 패킹합니다. 그 후 통합된 마스크 배치를 하나의 이미지 인페인팅 노드에 입력하여 일괄 처리할 수 있습니다. 이를 통해 각 마스크별로 개별 추론을 수행하는 것을 피해 계산 자원을 절약할 수 있습니다.
주의사항
이 노드는 입력된 마스크가 이진화되어 있어야 합니다. 또한 병합 로직이 마스크의 외접 직사각형에 기반하므로, 형태가 극도로 불규칙하거나 분산된 마스크의 경우 병합 효율이 영향을 받을 수 있습니다. 출력되는 마스크 배치의 크기는 입력 마스크의 수와 병합 결과에 따라 결정됩니다.
Consolidate Masks 노드 소스 코드 링크
Consolidate Masks 노드는 ComfyUI-KJNodes 노드 패키지에서 제공됩니다.
댓글
GitHub로 로그인하고 토론에 참여하세요.