스테이블 디퓨전(StableDiffusion)

Flux 업스케일 진행하기(ControlNet 관련)

물범쌤 2024. 10. 6. 16:15

안녕하세요 여러분, 물범 쌤입니다 :)

 

지난번에 Flux를 이용해서

컨트롤 넷을 사용하는 포스팅을 안내드렸는데요

마지막 부분에 화질이 떨어졌었던거,

다들 기억하시리라 생각합니다.

 

따라서 오늘은 컨트롤넷 기능 이후에

떨어진 이미지의 품질을 업스케일을 통해 다시 올려보도록 하겠습니다

 

그럼 바로 본론으로 들어갈게요 :)


1. 업스케일의 구조

 

먼저 업스케일의 개념을 모르시는 분들 께서는

UI상세 설명을 알려드렸던 포스팅에

업스케일에 대한 개념을 설명해 두었으니 참고해 주세요.^^

 

업스케일 개념 배우러 가기

반응형

ComfyUI에서의 업스케일 구조는 다음과 같이 이어집니다.

출력된 이미지(베이스 이미지) - 잠재영역 업스케일(생략가능) - 픽셀영역 업스케일
- 이미지 재표현 - 출력

 

위에 설명드린 단계 대로 차근차근 설명드릴게요,

그 전에 먼저 커스텀 노드인 ControlAltAI Nodes 를 설치해 주세요!

 

노드 구성은 지난번 컨트롤넷 노드 구성에서 이어서 작성하겠습니다.

 

Ksampler에서 VAE Decode를 통해서 출력된 이미지가 결과물로 보여지고 있는데,

이 이미지는 저화질의 이미지. 즉, 베이스 이미지 입니다.

 

이제 이 이미지가 어디로 입력되냐면

Upscale Image (using Model) 노드로 이어주시면 되겠습니다.

 

해당 방법은 픽셀영역 이미지를 업스케일 하는 과정입니다.

노드 입력으로 Load upscale model 노드를 추가해주시고,

기본 업스케일 모델이나, 다운로드 받으신 업스케일 모델을 설정해주시면 되겠습니다.

(업스케일 모델은 civitai에서 다운로드 받으실 수 있습니다.)

 

Upscale Image By를 낮게 설정하는 이유는 기존의 이미지처럼 1.5~2 로 설정하면

이미지 사이즈가 커져서 업스케일을 진행하는 시간이 매우 길어집니다.

궁금하신 분들은 한번 높게 설정해보시고 체감하시는게 나쁘지 않을것 같습니다.

 

 

 

VAE Encode(Tiled) 노드를 통해서 업스케일 된 이미지를 타일 방식으로 조각내어

이미지를 생성하는 Sampler노드에 입력합니다. 

Ksampler가 아니라 Flux Sampler 노드이니 주의하시기 바랍니다.

시드값을 입력으로 받고, model이나 clip의 입력은 베이스 모델과 동일하게 받습니다.

그럼 한번 전 후 이미지를 비교해 볼까요?

 

기본적인 화질과 손가락 같은 부분에서 차이가 있는 것을 보실 수 있습니다.

upscale by수치를 높이면 더 좋은 화질의 이미지를 얻을 수 있습니다.

그리고 피사체 표현이 만족스럽지 못한 경우는
flux sampler 노드의 디노이즈 수치를 올려주시면 해결 할 수 있습니다 :)

 

예시를 하나 더 보여드리고 마무리 하겠습니다.

 

기존보다 디노이즈 수치를 올려서 업스케일 한 버전

 


오늘은 Flux upscale에 관해 알아보았습니다.

 

이 컨텐츠가 유익하셨다면

커피값은 기업들에게 받을테니

광고 한번씩만 눌러주시면 감사드리겠습니다 :)

반응형