ComfyUI의 Ultimate SD Upscale 노드
Ultimate SD Upscale는 ESRGAN 모델로 이미지를 확대한 다음, 확산 모델을 사용해 타일 단위로 다시 샘플링해요. 낮은 디노이즈 값으로 프롬프트를 적용해서 VRAM 부족 없이 2배에서 4배까지 실제 디테일을 더해줍니다.
Ultimate SD Upscale이(가) 하는 일
ComfyUI_UltimateSDUpscale 팩에 있는 노드로 (A1111 스크립트를 포팅한 것) 두 가지 아이디어를 결합했어요: 먼저 픽셀 업스케일러가 이미지를 키우고, 그 결과를 tile_width x tile_height 크기의 타일로 나눠요. 각 타일은 낮은 디노이즈(0.2-0.4) 상태에서 샘플러가 프롬프트와 함께 다시 렌더링해서 텍스처, 피부, 천, 잎사귀 같은 디테일을 그려 넣어요. 겹치는 타일과 선택적 이음새 수정 패스가 연결 부위를 숨겨줍니다.
각 타일은 모델 해상도에서 일반 샘플러 패스라서, 최종 크기와 상관없이 단일 이미지를 렌더할 수 있는 GPU라면 어디서든 작동해요. 메인 KSampler와 같은 MODEL, positive, negative, VAE를 쓰고, 업스케일 모델도 필요해요. 보통 Tile ControlNet과 함께 써서 각 타일이 원본에 충실하도록 합니다.
입력
이름 | 타입 | 의미 |
|---|---|---|
image | IMAGE | 업스케일할 이미지. |
model / positive / negative / vae | MODEL, CONDITIONING, VAE | KSampler와 같은 연결. |
upscale_model | UPSCALE_MODEL | 첫 픽셀 업스케일에 쓸 ESRGAN 모델. |
upscale_by | FLOAT | 최종 배율, 보통 2.0. |
seed / steps / cfg / sampler_name / scheduler / denoise | sampler settings | 디노이즈 0.2-0.4는 원본을 유지; 높으면 다시 그려요. |
mode_type | COMBO | Linear, Chess(추천), 또는 None(업스케일만). |
tile_width / tile_height / mask_blur / tile_padding | INT | 타일 크기(SDXL은 1024, SD1.5는 512-768), 블러와 겹침. |
seam_fix_mode | COMBO | 없음, Band Pass, Half Tile, Half Tile + Intersections. |
force_uniform_tiles / tiled_decode | BOOLEAN | 같은 크기 타일; VRAM 적은 환경에 tiled VAE 디코드. |
출력
이름 | 타입 | 의미 |
|---|---|---|
IMAGE | IMAGE | 업스케일되고 디테일이 더해진 이미지. |
Ultimate SD Upscale 사용법
- ComfyUI Manager에서 팩을 설치하세요 ("Ultimate SD Upscale" 검색).
- 디코딩된 IMAGE, 샘플러와 같은 모델/positive/negative/VAE, 그리고 업스케일 모델을 연결하세요.
- upscale_by를 2.0, denoise 0.3, steps 20, mode는 Chess, 타일 크기는 SDXL 기준 1024로 설정하세요.
- 원한다면 이 노드 전에 Apply ControlNet에 Tile ControlNet을 추가하세요.
- 큐에 넣고 실행한 뒤 100% 줌으로 입력과 비교하세요; 디테일을 더 원하면 디노이즈를 올리고, 원본에 가깝게 하려면 낮추세요.
설정과 팁
- 프롬프트는 일반적으로 유지하세요 ("고해상도, 선명한 초점") 또는 원본을 재사용하세요; 자세한 주제 프롬프트는 타일마다 반복될 수 있어요.
- Tile ControlNet 없이 디노이즈 0.45 이상은 타일에 얼굴이나 물체를 만들어냅니다.
- Chess 모드와 Half Tile 이음새 수정이 거의 모든 연결 부위를 숨겨줍니다.
- 4배 업스케일은 한 번에 4배보다 2배씩 두 번 실행하는 게 좋아요.
- tiled_decode는 8GB 카드에서 최종 디코딩 시 VRAM을 절약해줍니다.
Ultimate SD Upscale 문제 해결
텍스처(잔디, 벽 등)에 얼굴이나 물체가 나타남
원인
프롬프트에 비해 디노이즈가 너무 높고 Tile ControlNet이 없어서 내용이 흐트러짐.
해결 방법
디노이즈를 0.25-0.35로 낮추거나 프롬프트를 짧게 하거나, Tile ControlNet을 강도 0.5-0.8로 추가하세요.
타일 격자가 눈에 보임
원인
seam_fix_mode가 없음, tile_padding이 작거나 Linear 모드에서 디노이즈가 강함.
해결 방법
Chess 모드, tile_padding 32-64, mask_blur 8-16, seam fix는 Half Tile로 설정하세요.
매우 느림: 수백 개 타일
원인
작은 타일에 큰 upscale_by를 쓰면 샘플러 패스가 너무 많아짐.
해결 방법
모델이 지원하는 가장 큰 타일(예: SDXL은 1024)을 쓰고 2단계 2배 업스케일로 하세요.
임포트 후 노드가 없음(빨간 노드)
원인
팩이 설치 안 됐거나 의존성 문제로 임포트 실패.
해결 방법
ComfyUI Manager에서 "ComfyUI_UltimateSDUpscale" 설치 후 재시작하고 콘솔에서 임포트 오류 확인하세요.
Ultimate SD Upscale에 관한 질문
Tile ControlNet이 꼭 필요한가요?
필수는 아니지만, 있으면 디노이즈를 높여도 내용이 흐트러지지 않아요. SDXL은 Tile 또는 TTPlanet 타일 모델을 쓰세요.
업스케일 모델 없이 쓸 수 있나요?
네, upscale_model을 None으로 설정하거나 이미 확대된 이미지에 Ultimate SD Upscale (No Upscale)을 사용하세요.
Flux 지원되나요?
네, cfg 1.0과 positive conditioning에 Flux Guidance를 쓰면 됩니다; 타일 크기는 1024, 디노이즈는 약 0.3 권장.
관련 노드
Upscale Image (using Model)
ComfyUI core
Upscale Image (using Model)는 ESRGAN 스타일 업스케일러(4x-UltraSharp, RealESRGAN, 4x_NMKD-Siax, 4x_foolhardy_Remacri)를 IMAGE에 적용해 모델의 고정 배율만큼 확대하고 디테일을 더해줍니다.
Apply ControlNet
ComfyUI core
Apply ControlNet은 가이드 이미지와 로드된 ControlNet을 양수 및 음수 CONDITIONING에 강도와 시작/종료 비율로 붙여서 샘플러가 가이드의 가장자리, 깊이 또는 포즈를 따라가도록 해줘.
KSampler
ComfyUI core
KSampler는 노이즈 제거 과정을 실행해. 모델, 프롬프트, 그리고 잠재(latent)를 받아서 완성된 잠재 이미지를 만들어내지. 시드, 스텝, cfg, 샘플러, 스케줄러, 그리고 노이즈 제거 정도로 조절할 수 있어.
Upscale Latent and Upscale Latent By
ComfyUI core
Upscale Latent는 잠재 공간(latent)을 새로운 크기(또는 배율)로 조정해서 두 번째 KSampler가 더 높은 해상도에서 디테일을 추가할 수 있게 해줘요: 이게 고전적인 고해상도 수정법이에요.
FaceDetailer (Impact Pack)
ComfyUI-Impact-Pack
FaceDetailer는 YOLO 탐지기로 얼굴(또는 손, 눈)을 찾아서 각각 잘라내고, 모델과 프롬프트로 고해상도 다시 렌더링한 뒤 원본에 붙여넣어 넓은 장면에서 흐릿한 얼굴을 고쳐줘.
더 많은 ComfyUI 노드
CLIP Text Encode (Prompt)
ComfyUI core
CLIP Text Encode는 텍스트 프롬프트를 모델 텍스트 인코더를 사용해 CONDITIONING으로 바꿔줘. 한 노드는 긍정 프롬프트를, 다른 노드는 부정 프롬프트를 담아.
ComfyUI Manager
ComfyUI-Manager
ComfyUI Manager는 인터페이스 안에서 커스텀 노드 팩과 모델을 설치, 업데이트, 수정해주고, 불러온 워크플로우에서 누락된 노드를 해결하며 설정을 스냅샷으로 저장하는 확장 기능이야.
Load Checkpoint
ComfyUI core
Load Checkpoint (CheckpointLoaderSimple)는 .safetensors 또는 .ckpt 모델 파일을 열고, 워크플로우에서 필요한 세 가지 부분인 diffusion MODEL, CLIP 텍스트 인코더, VAE를 제공합니다.
Save Image
ComfyUI core
Save Image는 IMAGE 텐서를 ComfyUI/output에 PNG로 저장해. 파일 메타데이터에 전체 워크플로우가 들어가 있어서, 나중에 그 그림을 ComfyUI에 다시 끌어다 놓으면 그래프를 복원할 수 있어.
VAE Decode
ComfyUI core
VAE Decode는 샘플링된 LATENT를 VAE를 사용해 픽셀 IMAGE로 변환해 줘; VAE Decode (Tiled)는 아주 큰 이미지에 대해 타일 단위로 같은 작업을 해.
Empty Latent Image
ComfyUI core
Empty Latent Image는 텍스트-이미지 샘플링이 시작되는 빈 잠재 캔버스(가로, 세로, 배치 크기)를 만듭니다; 크기는 8의 배수여야 하고 모델 패밀리와 맞아야 해요.
