Image Crop By Mask(ImageCropByMask)
이 노드는 `IMAGE`와 `MASK` 두 가지 유형의 텐서 입력을 받습니다.
Image Crop By Mask
Image Crop By Mask 노드는 IMAGE와 MASK 두 가지 유형의 텐서 입력을 받습니다.
Image Crop By Mask 노드는 사용자가 제공한 마스크를 기반으로 입력 이미지를 자동으로 크롭하는 이미지 처리 도구입니다. 핵심 기능은 마스크 내의 유효 영역을 식별하고, 이 영역을 바운딩 박스로 하여 이미지에서 불필요한 부분을 정확하게 잘라내고 마스크에 해당하는 콘텐츠만 남기는 것입니다.
노드 기능
이 노드는 IMAGE와 MASK 두 가지 유형의 텐서 입력을 받습니다. 내부적으로 마스크를 이진화(round() 메서드 사용)한 후, 입력 배치의 각 이미지에 대해 마스크의 0이 아닌 픽셀을 포함하는 최소 외접 직사각형(즉, 바운딩 박스)을 독립적으로 계산합니다. 마지막으로 노드는 이 바운딩 박스를 기준으로 원본 이미지를 크롭하고, 모든 크롭된 이미지를 다시 결합하여 출력합니다.
노드 파라미터 설명 - Image Crop By Mask
입력
| 파라미터 이름 | 데이터 타입 | 필수 | 기본값 | 범위/옵션 | 설명 |
|---|---|---|---|---|---|
image | IMAGE | 예 | - | - | image (입력 파라미터): 크롭할 원본 이미지입니다. |
mask | MASK | 예 | - | - | mask (입력 파라미터): 크롭 영역을 정의하는 데 사용되는 마스크입니다. MASK 텐서 타입이며, 기본값 없음, 특정 값 범위 제한 없음. |
출력
| 파라미터 이름 | 데이터 타입 | 설명 |
|---|---|---|
| image | IMAGE | image (출력 파라미터): 크롭된 이미지 결과를 출력합니다. |
사용 시나리오
이 노드는 이미지 인페인팅 또는 로컬 리페인팅 워크플로에서 매우 유용합니다. 예를 들어, VAEEncode와 KSampler를 사용하여 이미지의 마스크 영역을 생성한 후, 원본 이미지와 마스크를 이 노드에 동시에 입력하여 목표 영역만 포함하는 이미지 슬라이스를 빠르게 얻을 수 있습니다. 이를 통해 후속 업스케일링, 디테일 향상 또는 다른 이미지와의 합성 작업을 용이하게 수행할 수 있습니다.
주의사항
이 노드는 입력 이미지(image)와 마스크(mask)가 배치 차원에서 호환되도록 요구합니다. 배치 크기가 일치하지 않으면 노드는 인덱스 min(b, mask.shape[0]-1)을 통해 마지막 마스크를 재사용하게 되는데, 이는 모든 경우에 예상되는 동작이 아닐 수 있으므로 사용 시 데이터 정렬에 주의해야 합니다.
Image Crop By Mask 노드 소스 코드 링크
Image Crop By Mask 노드는 ComfyUI-KJNodes 노드 패키지에서 제공됩니다.
댓글
GitHub로 로그인하고 토론에 참여하세요.