카테고리 없음

스테이블 디퓨전(Comfyui) 속성 값(seed, control after generate, steps, cfg, sampler name, scheduler, denoise) 정리-1

인공지능(AI) 수험생 2024. 4. 22. 13:34
반응형

스테이블 디퓨전을 통해 원하는 결과를 얻기위해 스테이블 디퓨전의 text to image 에 필요한 기본 속성을 정리하였습니다.

 

sampler name, scheduler 등을 이해하기 위해선 스테이블 디퓨전의 작동원리에 대해 알아야겠다고 생각을 했습니다.

실제 값을 바꿔가며 이미지를 생성해보니 각 값이 주는 의미를 알수 있었습니다.

 

비교를 위해 comfyui 기본 워크플로우로 사용하겠습니다.

"Clear" 후 "Load Default"를 통해 불러온 기본 워크플로우

 

Seed 고정 후 생성된 이미지

 

생성된 이미지. 대조군

기본이미지 설정값

seed : 184392836312706

control_after_generate : fixed

steps : 20

cfg : 8.0

sampler_name : euler

scheduler : nomal

denoise : 1.00

 

속성별 비교

 

1. Seed(시드) : 이미지의 시작점이 되는 난수
이 숫자에 따라 결과 이미지가 달라지며, 같은 숫자를 넣으면 이전의 이미지를 재현할 수 있습니다.

Seed 변경 184392836312706 vs184392836312999

 

 

2. control_after_generate : 이미지 생성시 시드를 변경 여부 및 변경 방법을 결정

 . fixed : 이미지 생성시 seed(시드) 를 변경하지 않음
 . increment : 이미시 생성시 seed(시드) 를 한 자리씩 올림

 . decrement : 이미시 생성시 seed(시드) 를 한 자리씩 내림

 . randomize :  이미시 생성시 seed(시드) 를 무작위로 변경

control_after_generate 의 설정에 따른 seed(시드) 변화

주의사항)

"queue prompt" 버튼을 누르면 기존의 seed(시드) 값은 바로 변경됩니다.
따라서, control_after_generate 가 "fixed" 로 되어있지 않다면, 이미지 생성 후 "랜덤(randomize)"에서 "고정(fixed)"으로 바꾸어도 이미 이미지가 생성된 이후이기 때문에 화면에 보이는 생성 결과물과 시드는 다른 값을 가지게 됩니다.

 

ramdomize가 아닐경우 시드를 조정할 수 있지만, ramdomize로 생성되 이미지의 시드를 다시 알기 위해선 생성한 이미지를 프로그램으로 다시 끌어 넣으면(drag) 시드를 복원할 수 있습니다.

 

3. Sampling Steps : 무작위 노이즈에서 인식 가능한 이미지로 전환하기 위해 스테이블 디퓨전이 실행하는 반복 횟수

Step 이 높을 수록 더 섬세한 이미지가 나오지만, 생성 시간도 길어집니다. 20-30단계 정도가 적당합니다.

각각 step 값을 1, 10,  50, 100 으로 설정하여 출력한 값

 

4. CFG Scale : 프롬프트를 AI가 얼마나 잘 따를지 조절하는 설정

숫자가 높을수록 프롬프트를 더 잘따르게 됩니다. 0~100 사이의 값을 가집니다.

각각 cfg 값을 0, 8, 50, 100 으로 설정하여 출력한 값

 


5. Sampler_name : 이미지를 생성하는 방식으로 추후 다룰예정
DDPM, DDIM, PLMS, Euler, Heun, LMS, DPM, DPM2, DPM++, DPM-Solver, UniPC, DPM adaptive, Euler A, DPM2 A, DPM++ 2S A, DPM++ 2M A, LMS Karras, DPM2 Karras, DPM++ 2S A Karras, DPM++ 2M Karras, DPM++ SDE, DPM++ 2M SDE, and DPM++ SDE Karras 등의 방식으로 이미지를 생성할 수 있다.


6. scheduler : 모델의 출력과 시간 간격을 사용하여 노이즈 제거된 샘플을 반환하는 함수입니다

 

7. denoise : 출력 생성 시 입력 이미지에 추가되는 노이즈의 양을 제어하는 값

denoise 값은 0에서 1 사이이며, 0은 노이즈가 추가되지 않고(실제 입력은 0이상 가능) 1은 입력을 완전히 대체. 기본값은 0.75

denoise값을 0.1, 0.5, 1.0으로 준 값의 결과물

반응형