Diffusion 기반 생성형 AI 활용기/Stable Diffusion 이미지 생성

[Stable Diffusion Web UI] 좋은 결과 이미지를 얻기 위해 꼭 알아야 할 팁: X/Y Plot 기능 사용법 (1)

누군가의 이야기 2023. 2. 23. 03:19
728x90

몇 주 간 Stable Diffusion Web UI를 사용하면서 느꼈던 점은

 

좋은 이미지를 얻기 위해서 좋은 프롬프트를 작성하는 것도 중요하지만, 어느정도 운빨이 받쳐줘야 된다는 것이었다.

 

프롬프트를 수정하거나 CFG Scale, Denosing Strength 등을 살짝씩 조정해가며 거듭 Generate 했었는데

 

좋은 이미지를 얻기 위한 보다 효율적인 방법(X/Y Plot)을 포스팅하려 한다. 

 

https://gigazine.net/gsc_news/en/20220909-automatic1111-stable-diffusion-webui-prompt-matrix/

 

위 이미지처럼 X, Y축의 변화에 따른 결과를 그리드 형식으로 제시하는 기능이다.

 

Stable Diffusion Web UI를 이용해 따라해보고 싶다면 아래 링크를 참고하면 좋다.

 

https://kosonkh7.tistory.com/73

 

1. Stable Diffusion Web UI 알아보기: 설치 및 실행

https://youtu.be/emObTucGMOA 유튜버 조코딩님의 영상을 따라해보며 Stable Diffusion Web UI를 알아보고자 한다. api 등을 활용하여 코드를 작성할 수도 있겠지만, 최신 인공지능 동향을 알아보며 즐거운 마음

kosonkh7.tistory.com

728x90

 

 

X/Y Plot 기능 사용하기 전에 기준이 될 프롬프트를 작성해보았다.

 

Cute Baby panda is eating bamboo in the middle of mystery bamboo forest. sunlight shining through the bamboos, warm lighting, wide view, extreme wide shot, 8K, high detailed, high quality, masterpiece, realism

 

크게 주요 문장 / 사진 구도 / / 결과 품질 상승 키워드 로 이루어진 프롬프트이다.

 

프롬프트 작성 팁은 아래 링크 참고하면 좋다.

https://kosonkh7.tistory.com/79

 

X / Y Plot 사용 방법

기본적으로 None 값을 가진 Script에서 X/Y plot을 활성화할 수 있다.

 

 

활성화하면 추가적인 입력창이 추가한다.

 

축마다 설정할 수 있는 type이 정말 다양한데 몇 가지만 적어보면

 

CFG Scale, Sampler, Eta, Steps, Styles, Prompt S/R 등이 있다.

 


CFG Scale, Steps 설정 방법

 

먼저 CFG Scale과 Steps를 기준으로 그리드를 만들어보겠다.

 

8-10 (+0.5) 가 의미하는 바

CFG Scale을 8에서 10까지 0.5 간격으로 늘려가면서 생성해주는 것이고,

 

10-40 [5] 가 의미하는 바

Steps를 10에서 40사이를 5개의 구간으로 나누어 생성한다는 의미이다.

 

설명이 애매한가.. 아래 이미지를 보면 직관적으로 무슨 의미인지 바로 이해할 수 있다.

 

Keep -1 for seeds 체크하면 그리드에 모두 다른 이미지가 생성되어 비교가 불가능하니 사용하지 않는다.

 

 

X축인 CFG Scale 변화(8~10)로 대단한 차이를 느끼기 어려웠지만,

 

Step이 증가할수록 이미지 전반적으로 디테일한 부분이 좋아지고, 그림이 완성도 있어지는 걸 볼 수 있었다.

 

꼭 Step이 증가한다고 좋아지는 건 아니겠지만,

 

이런 식으로 구간을 설정하여 최적의 파라미터 조합을 찾아내어 해당 프롬프트에 적절한 결과를 얻을 수 있다.

 


Sampler 설정 방법

 

X축 타입을 Sampler로 설정해주었다.

 

값은 비교하고 싶은 Sampler 이름들을 나열하면 되는데, 잘 모르겠으면 텍스트박스 옆에 노란 네모 눌러보면 좋다.

 

디폴트 값으로 설정되어 있는 Euler a 이외에 3개의 샘플러를 적어주었다.

 

 

양쪽 끝 2개와, 가운데 2개가 왠지 비슷하게 보이지만, 분명 다르기는 하다.

 

샘플러 원리를 모르니 알 길은 없지만...

 

이번에도 스텝이 증가할수록 결과 이미지가 좋아보인다.

 

샘플러의 종류마다 통상적으로 자주 쓰이는 최적의 스텝 수도 다르다고 하니

 

적절한 조합을 찾아보면 되겠다.

 

 

혹시 마음에 드는 이미지가 있다면, 아래 결과에서 프롬프트와 Seed 값을 저장하면 같은 이미지를 다시 얻을 수 있다.

 

 

Z축 까지 설정 가능해서 동시에 3개의 타입을 비교할 수 있기는 한데

 

이미지를 잘라쓰거나 확대하면 쓰임새가 있겠지만, 막 유용하게 와닿지는 않는다.

 

아무래도 그리드로 시각화하면 직관적으로 차이가 보여야 하는데 이미지가 깨알만해져서...

 

 

 

이번 포스팅에선 좋은 결과 이미지를 효율적으로 얻기 위해 도움이 될만한 X / Y Plot 기능 사용법을 알아보았다.

 

다음 포스팅에서 추가 사용법 이어갈 예정이다.

 

https://kosonkh7.tistory.com/98

 

[Stable Diffusion Web UI] 다양한 결과 이미지를 쉽게 비교하기 위해 꼭 알아야 할 팁: Prompt Matrix, X/Y Plo

https://kosonkh7.tistory.com/97 [Stable Diffusion Web UI] 좋은 결과 이미지를 얻기 위해 꼭 알아야 할 팁: X/Y Plot 기능 사용법 (1) 몇 주 간 Stable Diffusion Web UI를 사용하면서 느꼈던 점은 좋은 이미지를 얻기 위

kosonkh7.tistory.com

 

 

728x90