inpaint-flow
세부 정보
파일 다운로드
모델 설명
【SDXL 인페인트 워크플로우】
※이미지는 YNS-Real로 생성한 후부 씨를 Nanobanana Pro로 편집한 뒤, 본 워크플로우를 적용했습니다.
이미지는 YNS-Real로 생성하고, Nanobanana Pro로 편집한 후 이 워크플로우를 통해 처리되었습니다.
1. 개요
이 워크플로우는 Nanobanana Pro로 생성된 4K 해상도 이미지를 SDXL 기반 모델로 4K 해상도 그대로 인페인트하기 위해 제작되었습니다.
일반적으로 고해상도 인페인트를 수행하면 이중 이미지(고스트) 현상이 자주 발생하지만, 커스텀 노드를 병용함으로써 이 문제를 효과적으로 방지할 수 있습니다.
이 워크플로우는 Nanobanana Pro로 생성된 4K 품질 이미지를 사용하여 SDXL 기반 모델로 4K 해상도 인페인트를 수행하기 위해 제작되었습니다.
고해상도에서 일반 인페인트를 수행할 경우 이중 이미지(고스트) 현상이 자주 발생합니다.
커스텀 노드를 활용하면 이 문제를 효과적으로 방지할 수 있습니다.
2. 버전 차이점
v1.0:
수동으로 마스크를 생성해야 합니다.
수동으로 조정 가능하므로 세밀한 영역 지정이 가능합니다.
v1.1:
텍스트로 마스크 영역을 지정할 수 있습니다.
사용이 간편하지만, 마스크가 누락되는 경우가 있으므로
mask_expand_pixels값을 크게 설정해야 합니다.마스크 영역을 지정할 때는 단순히 “a bikini”라고 입력하는 것보다, “a blue bikini”처럼 색상을 명시하거나, “a blue bikini top and bottom”, “a blue bikini set”처럼 더 구체적으로 지정하는 것이 더 나은 결과를 얻기 쉽습니다.

※노드 이름 일부에 오타가 있지만, 그대로 사용해도 문제 없습니다.
v1.0:
수동 마스크 생성이 필요합니다.
수동 조정으로 미세한 영역 지정이 가능합니다.
v1.1:
텍스트 입력을 통해 마스크 영역을 지정할 수 있습니다.
사용이 간편하지만, 마스크 누락이 발생할 수 있으므로
mask_expand_pixels값을 크게 설정하는 것이 권장됩니다.마스크 영역을 지정할 때 “a bikini”처럼 단순히 입력하는 것보다, “a blue bikini”, “a blue bikini top and bottom”, “a blue bikini set”처럼 색상이나 특정 의상 부위를 구체적으로 명시하는 것이 더 나은 결과를 얻기 쉽습니다.
Note: 일부 노드 이름이 잘못 표기되어 있지만, 기능에는 영향이 없습니다.
3. 특징
이 워크플로우의 가장 큰 특징은
“일반적인 SDXL 모델을 인페인트 전용 모델처럼 사용할 수 있다”는 점입니다.
이를 통해 선호하는 모델로 고해상도 인페인트를 안정적으로 수행할 수 있습니다.
내부적으로는 마스크 영역을 잘라내기 → 잘라낸 부분만 인페인트 → 원본 이미지에 다시 붙여넣는 과정이 수행됩니다.
이 워크플로우의 핵심 기능은
“일반적인 SDXL 모델을 인페인트 전용 모델처럼 활용할 수 있다”는 점입니다.
이를 통해 원하는 모델로 고해상도 인페인트를 안정적으로 수행할 수 있습니다.
내부적으로는 마스크 영역을 잘라내기 → 잘라낸 부분만 인페인트 → 원본 이미지에 다시 붙여넣는 과정이 수행됩니다.
4. 핵심 노드 ‘Inpaint Crop’ 설명 (번역 포함)
영어를 읽을 수 있는 분들은 ComfyUI-Inpaint-CropAndStitch GitHub 페이지에서 매개변수에 대한 상세 설명을 확인할 수 있습니다.
아래는 참고를 위한 간단한 일본어 요약입니다.
마지막에는 참조 이미지와 각 커스텀 노드의 URL을 제공합니다.
아래는 GitHub에 기재된 매개변수의 한국어 번역입니다.
■ downscale_algorithm / upscale_algorithm
이미지를 축소 또는 확대할 때 사용할 리사이즈(보간) 알고리즘을 지정합니다.
■ preresize
크롭 전 입력 이미지를 리사이즈합니다.
최소 해상도를 충족하기 위한 확대
최대 해상도를 초과하지 않도록 하는 축소
두 가지를 조합한 리사이징
입력 이미지의 해상도를 일정 범위로 통일할 때 유용합니다.
■ mask_fill_holes
마스크 내부의 구멍(닫힌 영역)을 완전히 메울지 여부를 지정합니다.
이 경우 둘러싸인 영역도 마스크로 처리됩니다.
■ mask_expand_pixels
지정된 픽셀 수만큼 마스크를 외부로 확장합니다.
■ mask_invert
마스크를 반전시켜, 일반적인 방식과 반대로 “마스크된 영역을 처리 대상”으로 지정합니다.
■ mask_blend_pixels
스티칭용 마스크를 지정된 픽셀 수만큼 확장하고 블러 처리합니다.
경계가 자연스럽게 융합됩니다.
■ mask_hipass_filter
지정된 값보다 낮은 마스크 값을 무시합니다.
“거의 검정” 영역이 실수로 마스크로 처리되는 것을 방지합니다.
■ extend_for_outpainting
마스크를 상하좌우로 임의의 배율로 확장합니다.
1보다 큰 값: 아웃페인팅(확장)
- 예:
2→ 이미지 크기와 동일한 폭으로 확장
- 예:
1보다 작은 값: 크롭(축소)
- 예:
0.75→ 25%만큼 제거
- 예:
■ context_from_mask_extend_factor
마스크 크기에 비해 주변 컨텍스트(참조 영역)를 얼마나 확장할지 지정합니다.
1: 확장하지 않음
2: 마스크 크기와 동일한 만큼 모든 방향으로 확장
■ output_resize_to_target_size
크롭 후 이미지를 지정된 해상도로 강제 리사이즈합니다.
최종적으로 스티칭 노드에서 자연스럽게 통합됩니다.
■ output_padding
출력 이미지의 너비와 높이를 지정된 값의 배수로 정렬합니다.
많은 모델은 8/16/32의 배수를 요구합니다.
5. 권장 설정
인페인트 영역 및 입력 이미지 해상도에 따라 위 매개변수의 최적값은 달라집니다.
또한 KSampler 설정도 사용하는 모델에 따라 조정해야 합니다.
위 매개변수의 최적값은 인페인트 영역 및 입력 이미지 해상도에 따라 달라질 수 있습니다.
KSampler 설정도 사용하는 모델에 따라 조정해 주세요.
아래는 v1.1 버전 기준입니다
mask_expand_pixels: 64 (16~64?)
mask_blend_pixels: 32
896×1200
mask_expand_pixels: 512 (128~512?)
mask_blend_pixels: 128
3584×4800
6. 사용 노드 목록
공통 (v1.0 / v1.1 모두 공통)
v1.1 전용 추가

