Skip to main content

9장. Image-to-Image와 편집

실무에서는 새 이미지를 처음부터 만드는 일보다, 이미 나온 결과를 고치는 일이 훨씬 많다. 손가락 하나를 바로잡고, 배경만 바꾸고, 상품 라벨의 텍스트를 수정하고, 잘린 프레임 바깥을 넓히고, 마지막으로 4K나 8K 납품 규격에 맞춰 키우는 일까지. 이 일련의 과정이 바로 프로덕션의 본체다.

Text-to-Image가 아이디어를 꺼내는 단계라면, Image-to-Image는 그 아이디어를 쓸 만한 결과물로 다듬는 단계다. 그리고 ComfyUI의 장점은 이 수정 과정을 한 번의 감에 맡기지 않고, 노드 단위로 분해해 반복 가능하게 만든다는 데 있다. 한 번 잘 만든 편집 워크플로우는 썸네일 제작, 광고 소재 수정, 상품 사진 보정, 캐릭터 리터칭까지 폭넓게 재사용된다.

PART 3 / 9장. Image-to-Image와 편집

9.1 Img2Img와 Denoise 값의 의미

Img2Img는 말 그대로 이미지를 입력으로 받아, 그 이미지를 바탕으로 다시 생성하는 방식이다. 핵심은 "원본을 얼마나 유지할 것인가"가 아니라 "원본을 얼마나 다시 해석하게 할 것인가"에 있다. 이때 가장 중요한 손잡이가 바로 denoise다.

초보자는 denoise를 흔히 "비슷함 슬라이더"로 이해한다. 아주 틀린 말은 아니지만, 더 정확하게 말하면 모델에게 원본을 다시 쓸 수 있는 자유도를 주는 값이다. 값이 낮을수록 원본 구조를 더 많이 붙잡고 있고, 값이 높을수록 원본은 참고자료로만 남고 결과는 새로 그린 그림에 가까워진다.

쉽게 비유하면 이렇다. 원본 이미지가 연필 스케치라면, denoise 0.2는 그 위에 색만 살짝 다시 입히는 수준이고, 0.8은 같은 스케치를 참고해 새 작품을 다시 그리게 하는 수준이다.

실무에서 자주 쓰는 감각적 기준은 아래와 같다.

denoise 범위결과 성격추천 용도
0.05 ~ 0.20거의 유지노이즈 정리, 질감 정돈, 미세 보정
0.20 ~ 0.45부분 수정색감 변경, 재질 교체, 메이크업·의상 톤 조정
0.45 ~ 0.70구조 변화 시작헤어스타일, 소품, 배경 분위기 변경
0.70 ~ 1.00적극적 재생성포즈 변화, 구도 재해석, 사실상 재창작

여기서 중요한 점이 하나 있다. denoise는 품질을 올리는 마법 버튼이 아니다. 너무 낮으면 "고친 티가 안 나는" 결과가 나오고, 너무 높으면 "아예 다른 이미지가 되어버리는" 결과가 나온다. 실무에서는 보통 한 번에 정답을 찾기보다, 0.25 → 0.4 → 0.55처럼 좁은 구간을 탐색하며 찾는다.

또한 Img2Img의 결과를 안정적으로 비교하려면 가능한 한 seed를 고정해야 한다. seed가 바뀌면 denoise 영향과 랜덤성 영향이 뒤섞여, 무엇이 결과를 바꿨는지 판단하기 어려워진다. 수정 워크플로우에서의 seed는 예술가의 영감이라기보다, 실험 노트의 페이지 번호에 가깝다.

실전에서는 다음처럼 접근하면 편하다.

  • 전체 구도는 좋고 디테일만 손보고 싶다면 낮은 denoise

  • 같은 인물과 같은 배경을 유지한 채 의상이나 소품만 바꾸고 싶다면 중간 denoise

  • 원본을 발판 삼아 새로운 시안을 뽑고 싶다면 높은 denoise

결국 Img2Img는 "생성" 기능이 아니라 "수정의 강도 조절기"다. 이 감각을 잡는 순간, ComfyUI의 편집 워크플로우가 훨씬 덜 무섭게 보인다.

9.2 Inpaint / Outpaint / Soft Inpaint

Img2Img가 이미지 전체를 다시 해석하는 도구라면, Inpaint는 원하는 부분만 다시 그리게 하는 도구다. 실무에서 가장 자주 쓰는 편집이기도 하다. 손가락만 고치고 싶을 때, 안경만 바꾸고 싶을 때, 로고만 지우고 싶을 때, 전체 이미지를 다시 돌리는 것은 너무 비싸고 위험하다. 이럴 때 마스크를 지정해 해당 영역만 다시 생성한다.1

ComfyUI의 기본 인페인팅 워크플로우에서 중요한 포인트는 세 가지다.

첫째, 마스크다. Load Image에서 Mask Editor를 열어 직접 칠할 수 있다. 마스크는 "여기를 고쳐라"라는 지시문이다. 너무 좁게 칠하면 경계가 딱딱해지고, 너무 넓게 칠하면 멀쩡한 부분까지 흔들린다.1

둘째, VAE Encoder (for Inpainting) 노드다. 일반 인코더가 아니라, 인페인팅용으로 설계된 인코더를 써야 수정 영역과 원본 영역의 관계를 더 안정적으로 다룰 수 있다.1

셋째, grow_mask_by 같은 경계 확장 값이다. 마스크를 몇 픽셀 바깥으로 살짝 늘려주면 모델이 주변 맥락을 함께 보게 되어, 경계선이 덜 튄다.1

인페인팅의 대표 용도는 다음과 같다.

  • 인체 오류 수정: 손, 치아, 귀, 안경 다리, 액세서리 연결부 보정

  • 상품 보정: 라벨 제거, 병뚜껑 교체, 포장재 색상 변경

  • 장면 정리: 쓰레기통, 전선, 워터마크, 지나가는 사람 제거

반대로 Outpaint는 이미지 바깥을 확장하는 작업이다. 이미지는 마음에 드는데 프레임이 좁을 때 쓴다. 세로 포스터를 가로 배너로 바꾸거나, 썸네일을 1:1에서 16:9로 넓힐 때 특히 유용하다. ComfyUI에서는 Pad Image for Outpainting 노드로 캔버스를 넓히고, 새로 생긴 빈 영역에 대한 마스크를 자동으로 만든다.2

이때 초보자가 자주 하는 실수는 "양옆을 한 번에 너무 많이 늘리는 것"이다. 아웃페인팅은 욕심을 낼수록 문맥이 무너지기 쉽다. 보통은 한 번에 10~25% 정도씩 넓히고, 필요하면 두세 번 나눠서 확장하는 편이 더 자연스럽다. 특히 사람 사진에서는 어깨, 팔, 손, 배경 원근이 한 번에 무너지기 쉽다.

그렇다면 Soft Inpaint는 무엇일까. 이름은 거창하지만 핵심은 단순하다. 마스크 경계를 부드럽게 만들고, 수정된 영역이 원본과 더 자연스럽게 섞이게 하는 방식이다. 실전에서는 마스크에 블러를 주고, 경계부가 덜 튀도록 보정하는 흐름으로 많이 구현한다. 일반 인페인팅이 "오려 붙인 느낌"이 난다면, 소프트 인페인팅은 "원래 거기 있었던 것처럼" 보이게 만드는 쪽에 가깝다.3

특히 다음 상황에서 Soft Inpaint가 빛난다.

  • 안경, 귀걸이, 모자처럼 경계가 얇고 복잡한 소품을 추가할 때

  • 머리카락, 털, 연기처럼 가장자리가 퍼지는 대상일 때

  • 얼굴 피부와 메이크업처럼 톤이 자연스럽게 이어져야 할 때

실무 팁을 하나 덧붙이자. 인페인팅이 잘 안 될 때는 프롬프트를 더 길게 쓰기보다 마스크를 다시 그리는 쪽이 더 빠른 경우가 많다. 편집 모델은 종종 "무엇을 그릴까"보다 "어디까지 고칠까"에서 실패한다. 프롬프트보다 마스크가 먼저다.

9.3 FLUX.1 Fill, Qwen-Image-Edit로 정밀 편집

전통적인 Img2Img와 Inpaint가 여전히 강력하지만, 2026년의 편집 워크플로우는 한 단계 더 나아갔다. 이제는 마스크 중심 편집 모델과 지시문 중심 편집 모델을 상황에 따라 골라 쓰는 시대다. 그 대표가 FLUX.1 Fill과 Qwen-Image-Edit다.

FLUX.1 Fill: 마스크를 믿는 편집기

FLUX.1 Fill은 인페인팅과 아웃페인팅에 특화된 FLUX 계열 모델이다. ComfyUI 공식 예제에서도 별도의 인페인팅·아웃페인팅 워크플로우가 제공될 정도로, "부분 수정"에 초점을 맞춘 설계가 분명하다. 기본적으로 diffusion model, 듀얼 텍스트 인코더, VAE, 입력 이미지, 마스크를 조합해 사용한다.4

FLUX.1 Fill의 장점은 간단하다. 마스크 안은 과감하게 바꾸고, 마스크 밖은 꽤 잘 지킨다. 그래서 제품 사진에서 병 라벨만 교체하거나, 인물 사진에서 선글라스만 추가하거나, 잘린 프레임 바깥을 확장하는 작업에 잘 맞는다. 프롬프트 이해력도 강한 편이라, 짧고 명확한 문장만으로도 충분히 괜찮은 결과를 뽑는 경우가 많다.4

다만 FLUX.1 Fill은 어디까지나 "마스크 기반" 편집기다. 다시 말해, 사용자가 수정 영역을 잘 지정해야 한다. 모호한 지시를 길게 쓰는 것보다, 마스크를 더 정확히 만들고 수정 범위를 좁히는 편이 성공 확률이 높다. 라이선스 조건은 배포처와 버전에 따라 확인이 필요하므로, 상업 작업 전에는 사용 중인 모델 파일의 약관을 반드시 점검하자.4

Qwen-Image-Edit: 뜻을 알아듣는 편집기

Qwen-Image-Edit는 성격이 조금 다르다. 이 모델은 단순히 이미지를 다시 칠하는 수준이 아니라, 입력 이미지를 시각-언어적으로 이해한 뒤 지시를 수행하는 편집기에 가깝다. 공식 문서에 따르면 이 모델은 입력 이미지를 Qwen2.5-VL과 VAE 양쪽으로 받아, 시맨틱 정보와 외형 정보를 함께 활용한다. 그래서 텍스트 수정, 객체 교체, 배경 변경, 포즈 변화 같은 고수준 편집에 특히 강하다.5

이 모델이 빛나는 장면은 다음과 같다.

  • 포스터 속 문구를 바꾸고 싶을 때

  • 같은 인물을 유지한 채 배경만 다른 장소로 바꾸고 싶을 때

  • 제품 재질, 각도, 색상, 배치 같은 의미 기반 수정을 하고 싶을 때

공식 워크플로우에서는 입력 이미지를 약 100만 픽셀 규모로 맞추는 스케일 노드를 함께 쓰는 예제가 제공된다. 너무 큰 입력 이미지는 오히려 편집 품질을 흔들 수 있기 때문이다. 또한 4-step Lightning LoRA를 활성화해 속도를 줄이는 선택지도 제시된다.5

다만 Qwen-Image-Edit는 "똑똑한 대신 욕심이 있는 편집기"다. 지시를 넓게 주면 생각보다 많이 바꿔버릴 수 있다. 따라서 실무 프롬프트는 화려한 묘사보다 보존 조건을 먼저 쓰는 방식이 유리하다.

예를 들면 이렇게 쓴다.

  • Keep the face, hairstyle, lighting, and composition unchanged. Change only the jacket to a black leather jacket.

  • Preserve the product shape, label position, and shadows. Replace the background with a clean white studio backdrop.

즉, "무엇을 바꿀까"보다 "무엇을 절대 바꾸지 말까"를 먼저 적는 것이다.

언제 무엇을 써야 할까

둘 중 하나만 정답인 것은 아니다. 편집 대상과 리스크 허용치에 따라 고르면 된다.

상황추천 모델이유
손, 안경, 라벨, 작은 소품 교체FLUX.1 Fill마스크 기반 제어가 안정적
프레임 확장, 캔버스 넓히기FLUX.1 Fill인·아웃페인팅 특화
배경 교체, 포즈 변경, 장면 재구성Qwen-Image-Edit의미 기반 편집이 강함
이미지 속 텍스트 수정Qwen-Image-Edit텍스트 편집 성능이 강점
원본 유지가 최우선인 상업 컷FLUX.1 Fill 또는 낮은 denoise Img2Img변경 범위 통제가 쉬움

가장 현실적인 프로덕션 조합은 이렇다. 작은 국소 수정은 FLUX Fill, 큰 의미 수정은 Qwen Edit, 마지막 미세 보정은 다시 Inpaint다. 한 모델로 끝내려 하지 말고, 역할을 나누면 훨씬 안정적이다.

9.4 사진 복원과 8K 업스케일 워크플로우

여기서 많은 사람이 착각한다. 업스케일은 망가진 이미지를 고치는 도구가 아니라, 고친 이미지를 크게 만드는 도구다. 공식 ComfyUI 업스케일 가이드도 같은 흐름을 강조한다. 좋은 프로덕션 파이프라인은 보통 생성 → 수정/정리 → 업스케일 → 납품 순서로 간다.6

이 순서를 어기면 어떤 일이 생길까. 손가락이 이상한 이미지를 4배 키우면, 손가락은 더 선명하게 이상해진다. 라벨 글자가 깨진 이미지를 그대로 8K로 올리면, 깨짐도 고해상도로 확대된다. 그래서 업스케일 전에 먼저 수정해야 한다.

복원과 업스케일의 역할 분리

복원은 주로 다음 문제를 다룬다.

  • 흐린 얼굴, 뭉개진 피부, 압축 자국

  • 잘못 생성된 디테일, 경계 깨짐, 작은 오브젝트 오류

  • 오래된 사진의 노이즈, 색 바램, 긁힘 같은 손상

업스케일은 그다음 단계에서 해상도를 올린다. 공식 문서는 업스케일과 enhancement를 구분한다. 업스케일은 픽셀 수를 늘리고 디테일을 재구성하는 일이고, enhancement는 선명화·노이즈 제거·얼굴 보정처럼 체감 품질을 높이는 일이다. 실제로는 둘을 함께 쓸 때 가장 결과가 좋다.6

8K를 향한 현실적인 4단계 워크플로우

실무에서 안정적인 흐름은 대개 아래와 같다.

  1. 오류 수정 먼저 Inpaint, FLUX Fill, Qwen-Image-Edit로 눈에 띄는 구조 오류를 바로잡는다. 손, 얼굴, 제품 경계, 텍스트, 로고, 이물질 제거가 여기 해당한다.

  2. 국소 복원 얼굴처럼 시선이 오래 머무는 부위는 전용 복원 노드를 고려한다. CodeFormer나 GFPGAN 계열을 감싼 얼굴 복원 노드는 ComfyUI 커스텀 노드 생태계에서 널리 쓰이며, 최근에는 품질 평가와 폴백을 포함한 고급 얼굴 복원 노드도 등장했다.8

  3. 기본 업스케일 ESRGAN 계열, SwinIR, BSRGAN 같은 로컬 업스케일 모델로 먼저 2배 또는 4배 키운다. 공식 가이드는 용도에 따라 모델 성격이 다르다고 설명한다. 제품 사진처럼 정확성이 중요하면 보수적인 모델이 낫고, 풍경이나 스타일 컷처럼 디테일 강화가 목적이면 더 창의적인 모델이 맞을 수 있다.6

  4. 타일 기반 디테일 강화 아주 큰 출력이 필요하면 Ultimate SD Upscale 같은 타일 기반 워크플로우를 쓴다. 이 방식은 이미지를 잘게 나눈 뒤 각 타일을 다시 처리하고 이어 붙인다. 큰 이미지를 VRAM 한계 안에서 다룰 수 있다는 점이 강력하다. 대신 denoise, tile padding, seam fix를 잘못 잡으면 이음매가 생긴다.7

Ultimate SD Upscale의 실전 감각

Ultimate SD Upscale는 "크게 만들면서 다시 그리는" 성격이 강하다. 그래서 denoise를 높이면 해상도는 좋아 보이지만 원본과 다른 디테일이 생기기 쉽다. 공식 문서도 업스케일에서는 대체로 0.2~0.5 정도의 denoise를 권장한다.7

안전한 시작값은 대략 이렇다.

항목추천 시작값의미
upscale_by2.0한 번에 무리하지 않기
denoise0.2 ~ 0.35원본 보존 우선
tile_width / height512 또는 768VRAM과 속도의 균형
tile_padding32 또는 64타일 경계 문맥 확보
seam_fix_modeHalfTile이음매 완화

8K가 목표라면 보통 1K → 2K → 4K → 8K처럼 점진적으로 올리는 편이 낫다. 한 번에 8배로 점프하면 VRAM도 힘들고, 디테일도 과장되기 쉽다. 특히 제품 사진, 인물 광고, 전자상거래 상세 페이지처럼 "원본과 다르면 안 되는" 작업에서는 보수적으로 가는 편이 정답이다.

사진 복원에서 기억할 규칙

  • 먼저 고치고, 나중에 키운다.6

  • 얼굴은 별도 복원 경로를 둘수록 안정적이다.8

  • 제품 사진은 창의적 업스케일보다 보수적 업스케일이 안전하다.6

  • 업스케일이 구조 오류를 자동으로 해결해 줄 것이라고 기대하지 않는다.6

한마디로 정리하면, 업스케일은 수술이 아니라 확대경이다. 수술은 먼저 끝내야 한다.

9.5 누끼 따기와 자동 마스킹 자동화

실무 파이프라인에서 마스크는 연필 지우개가 아니라 생산성의 핵심 자산이다. 한 번 잘 만든 마스크는 배경 제거, 인페인팅, 합성, 그림자 분리, 아웃페인팅 제한, 색상 교체, 업스케일 보호 영역 설정까지 계속 재사용된다.

전통적인 방식은 사람이 직접 Mask Editor로 칠하는 것이다. 이 방식은 정확하지만 느리다. 한두 장이면 괜찮지만, 상품 컷 200장이나 인물 배경제거 500장을 처리해야 한다면 곧장 지옥문이 열린다. 그래서 프로덕션에서는 가능한 한 자동 마스킹 → 수동 미세 조정 순서를 택한다.

자동 마스킹의 기본 흐름은 대체로 비슷하다. 먼저 분리하고 싶은 대상을 검출한다. 인물, 의류, 상품, 배경 같은 대상을 세그멘테이션 모델이나 배경 제거 노드로 분리한다. 그다음 마스크를 바로 쓰지 않고, 팽창·축소·블러 같은 후처리로 다듬는다. 마지막으로 그 마스크를 Inpaint, 합성, 그림자 처리, 배경 교체 워크플로우에 연결한다.

이때 중요한 것은 "정확한 마스크"보다 "용도에 맞는 마스크"다. 예를 들어 쇼핑몰용 누끼는 머리카락 끝이 조금 살아 있어야 자연스럽고, 합성용 마스크는 오히려 가장자리를 약간 안쪽으로 줄여 프린지 현상을 막는 편이 유리하다. 같은 대상이라도 용도에 따라 정답이 다르다.

누끼 워크플로우의 실무 패턴

상품 사진을 예로 들어보자. 가장 흔한 자동화 패턴은 아래와 같다.

  • 배경 제거로 1차 마스크 생성

  • 마스크 후처리로 가장자리 정리

  • 원본은 투명 PNG 또는 알파 포함 이미지로 저장

  • 새 배경 합성

  • 필요 시 그림자만 별도 생성 또는 보존

  • 마지막 색보정과 업스케일

인물 합성에서는 조금 다르다. 얼굴과 머리카락은 예민하고, 옷의 가장자리는 상대적으로 단순하다. 그래서 인물 워크플로우는 종종 전신 마스크 하나로 끝내지 않고, 머리카락·얼굴·몸통을 나눠 다루는 편이 결과가 좋다. 머리카락은 부드러운 경계, 의상은 단단한 경계, 얼굴은 보존 우선처럼 전략을 달리하는 것이다.

마스크 자동화에서 자주 터지는 문제

가장 흔한 문제는 세 가지다.

첫째, 가장자리의 흰 테두리다. 원본 배경색이 밝았을 때 자주 생긴다. 이때는 마스크를 살짝 안쪽으로 줄이거나, 경계 색 보정 단계를 추가해야 한다.

둘째, 반투명 대상 처리 실패다. 유리병, 베일, 연기, 머리카락 끝은 이진 마스크로 자르면 어색하다. 이럴 때는 알파를 보존하거나, 마스크 블러와 후처리를 섞어야 한다.

셋째, 대량 처리 시 일관성 붕괴다. 어떤 이미지는 어깨가 잘리고, 어떤 이미지는 배경이 덜 제거되는 식으로 결과가 들쭉날쭉해진다. 그래서 배치 자동화에서는 마스크 품질 점검용 프리뷰 저장, 실패 케이스만 재처리하는 분기, 최소·최대 마스크 면적 기준 같은 안전장치를 두는 것이 좋다.

프로덕션 관점의 결론

누끼는 단순 보조 작업이 아니다. 마스크 품질이 곧 합성 품질이고, 합성 품질이 곧 납품 품질이다. 그래서 좋은 프로덕션 워크플로우는 이미지를 생성하는 노드만큼이나, 마스크를 만들고, 다듬고, 재사용하는 노드를 중요하게 다룬다.

이 장의 내용을 한 문장으로 요약하면 이렇다. 생성은 시작이고, 수정은 생산성이다. Img2Img는 수정 강도를 조절하고, Inpaint와 Outpaint는 범위를 통제하며, FLUX Fill과 Qwen-Image-Edit는 정밀 편집을 맡고, 업스케일은 마지막 납품 품질을 끌어올린다. 그리고 그 모든 과정의 사이를 연결하는 것이 마스크다.

ComfyUI를 프로덕션 도구로 쓴다는 것은 결국, 얼마나 멋지게 생성하느냐보다 얼마나 안정적으로 고치느냐의 문제다.

참고

1ComfyUI Inpainting Workflow

2ComfyUI Outpainting Workflow Example

3[ComfyUI] 인페인팅(Inpainting) / 아웃페인팅(Outpainting) 사용법

4ComfyUI Flux.1 fill dev Example

5Qwen-Image-Edit ComfyUI Native Workflow Example

6Image upscaling in ComfyUI

7Ultimate SD Upscale

8Face Restore Advanced - Advanced Face Restoration for ComfyUI

책 목록

프로덕션 ComfyUI: 이미지에서 영상까지, 노드로 완성하는 AI 콘텐츠 파이프라인

전체 목차 보기

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기