이번 글에선 스테이블 디퓨전 실행 시 팝업되는 WebUI 화면에 대해 자세히 소개하겠습니다. 스테이블 디퓨전 WebUI의 주요 화면 설정과 각 기능을 하는지 이해하고 자신에 맞는 설정을 적용하여 원활한 이미지 생성을 하시기 바랍니다.
저번 글에서 스테이블 디퓨전 코랩 및 로컬에 설치하는 방법에 대해 알아보았습니다. 아직 설치를 하지 못하신 분들은 다음 글을 참고하여 설치부터 진행해 주시기 바랍니다.
그럼 스테이블 디퓨전의 가장 기본적인 WebUI의 주요 화면 설정과 각 기능을 자세히 설명하겠습니다.
스테이블 디퓨전 WebUI 화면 구성
먼저 다음 사진은 스테이블 디퓨전을 실행했을 때 팝업되는 WebUI 화면입니다.
스테이블 디퓨전 WebUI의 주요 화면은 크게 다음과 같이 구성되어 있습니다.
① : 스테이블 디퓨전 Checkpoint를 선택하는 곳입니다.
② : 이미지 제작 방법과 프롬프트 작성하여 생성하는 곳입니다.
③ : 이미지 생성에 필요한 다양한 옵션 및 이미지 출력 처리 작업 공간입니다.
그럼 이제 각 세부적인 기능에 대해 자세히 알아보겠습니다.
1. 스테이블 디퓨전 Checkpoint
스테이블 디퓨전 Checkpoint 모델을 선택할 수 있는 곳입니다.
원하는 모델을 다운로드 받아 스테이블 디퓨전 설치 경로에 있는 models\Stable-diffusion 폴더에 넣으면 사용하실 수 있습니다.
스테이블 디퓨전에서 가장 중요한 부분이 바로 이 Checkpoint 부분입니다. 체크포인트란 일종의 이미지 스타일을 말합니다.
정확히 AI 모델 상태를 저장한 파일입니다. 이 파일에는 특정 모델을 기반으로 학습한 이미지의 가중치와 구성 설정이 포함되어 있습니다.
예를 들어, 고양이의 사진 학습한 AI 모델, 특정 연예인 인물을 학습한 AI 모델 등이 있습니다.
이렇게 학습된 체크포인트를 활용함으로써 사용자는 복잡한 학습 과정 없이도 해당 모델의 스타일과 특성을 가진 이미지를 생성할 수 있습니다.
스테이블 디퓨전 모델 체크포인트를 다운로드 받을 수 있는 대표적인 사이트는 다음과 같습니다.
스테이블 디퓨전 모델 다운로드 사이트
Civitai.com
Civitai.com은 스테이블 디퓨전 모델을 비롯한 다양한 AI 생성 미디어를 공유하는 플랫폼입니다.
사용자가 직접 훈련시킨 AI 모델을 업로드하고 공유할 수 있어, 찾는 모델이 있다면 쉽게 다운로드 받을 수 있습니다.
Civitai.com는 다른 모델 다운로드 사이트와 차별적으로 해당 모델에 이미지를 썸네일 형식으로 제공하여 쉽게 마음에 드는 모델을 찾아 다운로드 받을 수 있습니다.
AI 모델 중 우리나라 연예인의 이미지를 학습한 모델도 있으니 흥미롭게 보실 수 있을 것입니다.
또한 특정 이미지의 프롬프트와 설정 정보 등을 확인할 수 있어 처음 사용하는 사용자들에게 프롬프트 예시 정보를 얻을 수 있습니다.
스테이블 디퓨전 모델 뿐만 아니라 이미지, 비디오 등 다양한 AI 관련 미디어가 공유되어 있으므로 꼭 방문하여 확인해 보시길 바랍니다.
Hugging Face Hub
Hugging Face는 다양한 AI 학습 모델을 호스팅하는 플랫폼입니다. 스테이블 디퓨전을 비롯한 다양한 AI 모델의 체크포인트를 무료로 다운받을 수 있습니다.
모델을 검색하고 원하는 체크포인트를 선택하여 다운로드할 수 있으며, 각 모델에 대한 상세한 정보와 사용 예시도 제공됩니다.
Hugging Face의 경우 Civitai.com과 달리 학습된 이미지를 직접 확인할 수는 없어, 마음에 드는 모델을 Civitai.com에서 미리 살펴본 후 해당 모델의 Hugging Face 링크를 찾아 다운로드할 수 있습니다.
스테이블 디퓨전 모델 적용하는 법
위의 사이트에서 다운로드 받은 모델을 스테이블 디퓨전 설치 경로에 있는 …\stable-diffusion-webui\models\Stable-diffusion 폴더 안에 넣어주시면 됩니다.
예를 들면, 저는 문서 폴더 안에 설치했기 때문에 다음과 같은 경로에 모델 파일을 넣었습니다.
C:\Users\user\Documents\stable-diffusion-webui\models\Stable-diffusion
다음으로 ② : 이미지 제작 방법과 프롬프트 작성하여 생성하는 곳을 설명드리겠습니다.
2. 스테이블 디퓨전 이미지 제작 방법과 프롬프트 작성 및 생성
스테이블 디퓨전은 기본적으로 텍스트를 이미지로 변환시켜 주기도 하지만 이미지를 유사한 이미지 또는 다른 형태의 이미지로 재가공하는 기능도 있습니다.
이렇게 해당 탭에서는 이미지를 제작하는 방법을 고르는 탭과 이미지 생성 시 사용되는 프롬프트와 네거티브 프롬프트, 그리고 이미지 생성 버튼과 프롬프트나 네거티브 프롬프트 작성 시 빠르게 설정할 수 있는 버튼이 있습니다.
먼저 이미지 제작 방법을 고르는 탭입니다.
이미지 제작 방법 선택
- txt2img: 프롬프트와 네거티브 프롬프트를 텍스트로 작성해 이미지를 생성해 주는 탭입니다.
- img2img: 참조 이미지를 업로드하고 프롬프트를 작성하여 참조 이미지를 바탕으로 원하는 이미지로 만들어 주는 탭입니다.
- Extras: 이미지의 퀄리티를 높여주는 탭입니다.
- PNG Info: 이미지의 메타 데이터(상세 정보)를 보는 탭입니다. 그리고 원하는 이미지 생성 작업 탭으로 보낼 수 있습니다.
- Checkpoint Maerge: 두 개 이상의 체크포인트 모델을 합성해서 하나의 Checkpoint로 만들어 주는 탭입니다.
- Train: AI 학습 데이터를 생성할 수 있는 탭입니다.
- Settings: 저장 위치 등의 기본적인 스테이블 디퓨전의 설정을 저장하는 탭입니다.
- Extensions: 스테이블 디퓨전의 추가 기능과 다양한 확장 기능을 설치하는 탭입니다.
이미지 프롬프트 작성
- Prompt: 이미지 생성할 때 이미지에 포함할 내용을 적는 곳입니다. 일반적으로 스테이블 디퓨전은 단어 단위로 입력하며 SDXL의 경우 짧은 문장도 인식하여 이미지를 생성합니다. ex) detailed beautiful eye, detailed beautiful face, detailed beautiful skin
- Negative prompt: 이미지 생성할 때 이미지에 포함 시키면 안되는 내용을 적는 곳입니다. 예를 들어, missing fingers, multiple feet, bad knees, extra fingers 등이 있습니다.
이미지 생성 버튼
이미지 생성 버튼입니다.
프롬프트 작성 도우미
프롬프트 또는 네거티브 프롬프트 작성 시 도움이 되는 버튼입니다.
: 스테이블 디퓨전 실행 시 마지막으로 설정되었던 값을 불러옵니다.
: 프롬프트와 네거티프 프롬프트에 작성된 내용을 지웁니다.
: 프롬프트 템플릿에 저장되어 있는 프롬프트를 반영합니다.
프롬프트 템플릿 기능
자주 사용하는 프롬프트, 네거티브 프롬프트를 설정할 수 있는 곳입니다. 이미지 생성할 때마다 반복하여 작성한 공통된 프롬프트를 저장하여 불러올 수 있습니다.
빨간색 펜 모양의 Edit Styles 버튼을 클릭하면 프롬프트를 편집할 수 있습니다.
다음은 ③ : 이미지 생성에 필요한 다양한 옵션 및 이미지 출력 처리 작업 공간입니다.
3. 이미지 생성에 필요한 옵션 및 이미지 출력 처리 작업
이미지 생성 시 필요한 다양한 옵션과 생성된 이미지를 확인할 수 있는 곳입니다.
이미지의 노이즈 제거 처리 과정 방법 및 횟수, 해상도, 사이즈, 갯수 등을 설정할 수 있습니다.
옵션 탭 설명
Generation 탭은 이미지를 생성하는데 필요한 옵션을 설정할 수 있습니다.
- Sampling method: 이미지 생성 과정 중 노이즈를 제거하는 방식을 선택하는 곳입니다.
- Sampling steps: 노이즈 제거 횟수를 설정하는 곳입니다. Steps 수고 높아질수록 노이즈 처리를 많이 하여 이미지의 디테일이 높아지지만, 반면에 이 수치가 50 이상일 경우 너무 많은 노이즈를 제거하다 보니 다소 미흡한 이미지가 나올 수 있습니다. 권장 값은 모델마다 다르겠지만 일반적으로 20~30입니다.
스테이블 디퓨전의 이미지 생성 방식은 노이즈를 순차적으로 제거하여 원하는 이미지로 생성합니다. 이미지 생성 시 노이즈가 많은 이미지를 먼저 생성하고 Sampling steps 에 정해진 노이즈 제거 횟수만큼 노이즈를 제거하여 이미지를 생성합니다.
이때 노이즈를 어떤 방식으로 제거할 것인지를 설정하는 곳입니다. 보통 Sapmling method의 값으론 Euler a 또는 DPM++ 2M을 많이 사용합니다.
- Hires. Fix: 이미지의 해상도를 올려주는 곳입니다.
- Width와 Height: 이미지의 사이즈를 픽셀 단위로 지정하는 곳입니다.
- CFG Scale: 이미지를 생성할 때 프롬프트의 가중치를 설정하는 곳입니다. 보통 7~9 사이의 값을 사용합니다. 이 값이 높을수록 작성한 프롬프트에 초점을 맞춰 이미지를 생성합니다. 예를 들어, 높게 설정하면 우리가 프롬프트에 작성하지 않은 요소들은 이미지에 포함되지 않게 됩니다. 반면에 낮게 설정한다면 AI가 알아서 표현하지 않은 부분까지 생성하여 만들어주기 때문에 이미지의 품질이 높아질 수 있습니다.
- Batch Count: 이미지 생성 시 몇 번의 작업을 할지 설정하는 곳입니다. 10으로 설정한다면 10장의 개별 이미지가 생성됩니다.
- Batch size: 이미지 한번 생성 시 생성되는 이미지 개수를 설정하는 곳입니다. 4로 설정하게 되면 2×2 그리드로 각기 다른 이미지가 생성됩니다.
- Seed: 생성된 이미지의 고유 값입니다. 이 고유 값을 사용하여 유사한 스타일의 이미지를 계속 만들 수 있습니다.
Textual Inversion, Hypernetworks, Checkpoints, Lora
- Textual Inversion: 이미지 학습 도구 탭입니다. 이미 반영된 모델에서 새로운 요소나 단어를 학습하는 기능입니다.
- Hypernetworks: 미세 조정 기능입니다.
- Checkpoints: 저장된 체크포인트를 추가 적용할 수 있습니다. 프롬프트 작성 시 해당 탭에 있는 체크포인트 모델을 클릭하게 되면 프롬프트에 반영되어 이미지 생성에 추가 가중되어 이미지 생성에 반영됩니다.
- Lora: 로라는 학습 데이터가 많아 용량이 큰 체크포인트 모델에서 작은 변화를 준 것입니다. Checkpoints와 마찬가지로 저장된 Lora 파일 클릭하면 프롬프트에 반영되어 이미지 생성에 영향을 주게 됩니다. Lora는 작은 변화 요소만 담았기 때문에 체크포인트 모델에 비해 용량이 아주 작습니다. Lora를 활용하면 기존 체크포인트 모델에서 약간의 이미지를 원하는 만큼 변형할 수 있습니다. Lora 모델 또한 체크포인트 모델 다운로드 사이트에서 다운로드 받을 수 있습니다.
이미지 출력 처리
프롬프트에 의해 생성된 이미지가 생성되어 출력되는 공간입니다.
①: 이미지가 저장된 폴더를 열어줍니다.
②: 이미지를 다른 곳에 저장할 수 있씁니다.
③: 이미지를 압축합니다.
④: img2img로 이미지를 보냅니다.
⑤: img2img의 inpaint 항목으로 이미지를 보냅니다.
⑥: Extras로 이미지를 보냅니다.
⑦: 이미지 수정을 위한 수정 설정 페이지로 이동합니다.
마치며
지금까지 스테이블 디퓨전 WebUI 화면의 주요 설정과 각 기능들을 살펴 보았습니다. 이미지 생성 시 본인에게 맞는 설정 방법을 적용하여 이미지를 원활하게 생성하시기 바랍니다.
처음 이미지를 생성할 때는 많은 어려움이 있습니다. 어떤 프롬프트를 사용해야 하고 어떻게 이미지를 만들어야 하는지 감이 오지 않는 분이 많습니다.
이럴 땐 위에 소개해드린 civitai.com 사이트나 프롬프트 예시 사이트를 방문하셔서 다른 사람이 생성한 이미지와 프롬프트를 참조하여 이미지를 생성해 보시기 바랍니다.
그럼 다음 편에서는 프롬프트 예시 사이트를 소개하겠습니다.