Stable Diffusion checkpoint
txt2img 탭을 구성하는 prompt, negative 입력 창
stable diffusion의 메인 기능인 txt2img 기능 관련 항목입니다.
윗쪽의 Prompt 칸은 이미지 생성 시 반영하고 싶은 내용, 아래쪽의 Negative prompt 칸은 이미지에서 제외하고 싶은 내용을 입력합니다.
우측의 Generate 버튼을 클릭하면 작성한 프롬프트 내용을 기반으로 이미지 생성을 수행합니다.
Sampling 관련 method 및 step 설정
Sampling method : 각 종류별로 적합한 이미지 종류가 다릅니다. 이 중 가장 많이 사용되는 두 가지인 DPM++ SDE Karras, DPM++ 2M Karras 메소드의 경우 사실적인 이미지에 잘 어울리는 메소드입니다.
Sampling steps : 기본값은 20이며 수치가 커질수록 더 좋은 퀄리티의 이미지를 생성할 수 있다고 하나, 결과물을 보면 잘 체감이 되지는 않습니다. 기본값인 20 그대로 사용하거나 civitai 등에서 보이는 샘플 설정의 step을 참조하여 사용하며 됩니다. 속도를 중시한다면 10까지 낮추어서 사용하는 것도 가능합니다.
이미지 생성 시 추가 옵션 : Restore faces, Tiling, Hires. fix
Restore faces : 이미지 생성 후 얼굴 부분이 이상하게 표현되는 경우가 있는데 얼굴 부분만 보정 처리를 진행해 주는 옵션입니다. 실제 Full Body 등을 뽑는 경우 얼굴이 이상한 형태로 출력되는 경우가 많은데, 그런 경우에는 DDetailer를 따로 사용합니다.
Tiling : 생성된 이미지에 타일같은 패턴 처리를 한다고 하는데, 거의 사용되지 않습니다.
Hires. fix : 1차 이미지 생성 후 고해상도로 이미지 해상도 변경 + 세부적인 디테일을 향상 시킵니다. 출력 속도를 높이기 위해 기본 이미지 출력 해상도를 조금 낮추고 Hires. fix 또는 extra기능을 이용해 원하는 최종적인 해상도로 이미지를 생성하면서 디테일을 추가합니다.
Hire. fix 세부 선택 화면입니다. extras 메뉴도 구성 및 선택 화면은 비슷합니다.
Upscaler : 애니풍의 이미지에는 R-ESRGAN 4x+ Anime6B / 실사풍의 이미지에는 R-ESRGAN General WDN 4xV3 를 주로 사용합니다.
Hires steps : 기본 권장 수치는 기본 이미지 생성 시 Sampling steps와 같은 수치로 설정하는 것입니다.
Denoising strength : 디테일을 추가하면서 원본의 이미지를 얼마나 변화시키는 지와 연관된 수치입니다. 0.3은 원본 이미지와 거의 동일한 이미지를 생성하고 값이 커질수록 원본 이미지에서 변형되는 부분이 커집니다.
Upscale 사이즈 설정
Upscale by : 원본 이미지에 값을 곱해서 최종 이미지의 사이즈가 결정됩니다. 예) 원본 width X height가 512이고 Upscale by가 2라면 최종 이미지 사이즈는 1024 X 1024가 됩니다.
Resize width + height to : 원하는 최종 이미지의 사이즈를 직접 입력합니다.
이미지 생성 기본 사이즈 및 출력 이미지 숫자 설정
Width Height : 이미지의 가로, 세로 사이즈를 입력합니다. 우측의 교환 버튼으로 너비와 높이 사이즈 값을 교환할 수 있습니다.
Batch count : 몇 번의 이미지 생성 일괄 처리를 할 지 입력합니다.
Batch size : 한 번의 일괄 처리에서 몇 장의 이미지를 생성할 지 입력하는 항목입니다.
count 와 size를 곱한만큼의 이미지가 생성됩니다.
다만 Batch size는 그래픽카드의 vram과 관련되기에 지나치게 높은 값은 생성 작업 중 오류를 증가시킬 수 있습니다.
CFG Scale : 입력된 프롬프트를 얼마나 강하게 반영할 지 나타내는 값입니다. 일반적으로는 7~11 정도의 값으로 설정해 주면 됩니다. 저는 주로 10으로 놓고 사용합니다.
seed 값 및 사용 방법
AI 모델이 이미지를 생성하면서 부여되는 값입니다.
기본값인 -1은 무작위로 이미지를 생성하며 생성된 이미지는 특정한 seed 값을 갖게 됩니다. 이러한 결과 seed 값을 모든 설정이 동일한 상태에서 입력 후 이미지를 생성하면 완전히 동일한 이미지가 생성됩니다.
활용 방법 : 이미지 생성 후 세부 내역을 보면 좌측 이미지와 같이 Seed 값이 표시됩니다. 마음에 드는 이미지의 seed값 및 기타 입력 내용을 동일하게 설정한 상태에서 prompt 등 일부 내용을 조금씩 수정하면서 좀 더 디테일하게 원하는 결과물 생성에 접근할 수 있습니다.
아이콘 버튼 및 이미지 생성 버튼
Generate 버튼은 생략하고 좌측부터 설명합니다.
화살표 : 현재 결과물로 선택되어 있는 이미지의 설정을 가져옵니다. seed값을 활용할 때 사용할 수 있습니다.
휴지통 : 현재 입력되어 있는 prompt, negative prompt의 내용을 모두 지웁니다.
화투패 : 사용가능한 checkpoint, Lora 등 extra networks 내용들을 표시합니다.
파일철 : 아랫쪽의 Styles 리스트 박스에서 선택된 항목의 설정 내용을 로드합니다.
저장아이콘 : 선택하면 제목을 입력하는 팝업창이 뜨며, 현재 입력된 내용을 Style로 저장합니다.
대부분의 AI 모델에 적용되는 내용이지만 원하는 이미지의 내용을 최대한 디테일하게 작성하는 것이 중요합니다. 저의 경우는 원하는 프롬프트가 떠오르지 않을 때는 랜덤 프롬프트를 사용해서 일괄 배치로 많은 수의 이미지를 생성하기도 하고 위에 적은 seed 활용 방법을 사용하기도 합니다.
스테이블 디퓨전의 프롬프트는 chatGPT처럼 문장이 아니라 키워드로 작성해야 합니다. 각각의 키워드는 쉼표로 구분합니다.
중요한 키워드를 앞에 위치시킵니다. 강조(우선 반영)하고자 하는 키워드는 ()로 묶습니다. 예) (masterpiece)
숫자로 가중치를 적용하는 것이 가능합니다. ()는 1.0의 가중치 값(디폴트)을 가집니다.보통 0.1에서 1.8까지의 값을 사용합니다. 예) (masterpiece:0.5)
{keyword1 | keyword2} 입력으로 여러 개의 항목들 중 랜덤하게 선택하여 이미지 생성이 가능합니다. 예) {white dress | blue dress}
civitai에 있는 샘플 이미지에서 프롬프트 확인이 가능합니다. 내용을 분석해 보고 적극적으로 활용해 봅시다.
본인이 선호하는 품질에 대한 키워드(masterpiece, uhd, 4k 등)와 negative(bad anatomy, bad hands, too many fingers)가 정해지면 이는 기본적인 항목으로 모든 이미지 생성에 적용하는 것이 가능합니다.