728x90
반응형
- AI 이미지 생성툴로 완벽한 이미지 생성을 목표로 하지 않는다.
- AI 이미지 툴은 조수이고 그림은 본인이 그린다.
- 다른 이미지 생성툴과의 다른점은 다양한 체크포인트 모델을 통해 자신의 용도에 맞는 이미지 퀄리티를 생성할 수 있음.
- 다른 이미지 생성툴에 비해 Negative prompt의 유무에 따라 이미지 퀄리티가 많이 좌우됨
Web UI
- Slide, Button 등 웹 형태의 UI로 많은 사람들이 사용하고 있음
Comfy UI
GitHub - comfyanonymous/ComfyUI: The most powerful and modular stable diffusion GUI, api and backend with a graph/nodes interfac
The most powerful and modular stable diffusion GUI, api and backend with a graph/nodes interface. - comfyanonymous/ComfyUI
github.com
- 최근들어 사용자가 늘어나고 있는 Stable Diffusion UI
- 노드 형태로 기능들이 모듈화되어 있는 것이 특징
- 사용자가 원하는 대로 커스텀이 쉽게 가능
- 노드에 익숙한 사용자라면 친숙
- Web UI보다 비교적 빠르다는 장점도 있음
- Process
- Prompt 작성으로 이미지 생성기 제작
- ControlNet과 사진 이미지로 원하는 구도대로 이미지 생성
- 포토샵에서 합성 및 보완
- 업스케일링
- (필요한 경우) 포토샵에서 추가 작업
- ControlNet
- 소스로 쓰일 이미지를 생성한 이미지와 합성하는 기능
- Preprocessor와 model을 통해
- 이미지 합성을 컨트롤 할 수 있음
- depth
- Control Weight
- 컨트롤넷의 제어를 얼마나 따를 지에 대한 수치
- 기본은 1. 보통 0.75~0.85도 많이 사용함
- Sampler
- Input
- model
- positive
- negative
- latent_image
- Empty Latent Image 노드를 통해 width, height, batch_size를 설정해준다.
- 보통은 512 기준으로 비율을 맞추는 걸 추천. 이후 Upscaling을 통해 다시 샘플링 해주면 된다.
- steps
- 그림을 얼마나 오래 그릴 지를 결정하는 곳
- 그림에서 너무 일찍 손을 떼면 미완성 그림이 되고 너무 오래 잡고 있으면 별 차이가 없거나 오히려 망치는 경우도 있다.
- Sampler와 비슷. 높을수록 속도 up, 퀄리티 up
- 주로 20-30사이
- 그림을 얼마나 오래 그릴 지를 결정하는 곳
- cfg
- 작성된 Prompt에 얼마나 충실하게 생성할것인지 설정
- 높을수록 속도 up, 밀도/퀄리티 up
- 주로 7.5~8
- sampler_name
- 샘플링 알고리즘
- 모델이나 이미지의 용도에 따라서 설정
- 보통 사용하는 sampler 종류
- Eular a
- DDIM
- DPM++ SDE / Karras(Scheduler)
- Sampler에 대한 고찰
Stable Diffusion Samplers: A Comprehensive Guide - Stable Diffusion Art
Many sampling methods are available in AUTOMATIC1111. Euler a, Heun, DDIM... What are samplers? How do they work? What is the difference between them? Which
stable-diffusion-art.com
- scheduler
- 각 단계별로 노이즈를 얼마나 제거할지 결정
- 매 단계별로 일정한 분량 만큼 제거하는 알고리즘, 처음엔 많이 제거하고 뒤로 갈수록 제거하는 양이 줄어드는 알고리즘등이 있다.
- denoise
- 최초의 noise를 얼마나 제거할지를 결정
- 1 = 전체 제거
- Input
- Model
- 학습 모델이며, 크게 3가지가 있음.
- Base Model
- 프롬프트 해석 방식 및 고해상도 처리 방식 등 이미지 샘플링에 대한 기능적인 부분이 학습된 데이터
- SD v1.4 / SD v1.5 / SDXL … 등이 해당된다.
- 프롬프트 해석 방식 및 고해상도 처리 방식 등 이미지 샘플링에 대한 기능적인 부분이 학습된 데이터
- Checkpoint
- Save Path
- ~ComfyUI\models\checkpoints
- 베이스 모델이나 다른 체크포인트를 기반으로 이미지 데이터를 추가 학습하여 용도에 맞게 커스터마이징한 것
- 파인 튜닝(Fine Tuning)된 모델
- 보통 3~6GB 사이의 용량, ‘ckpt’ 혹은 ‘safetensors’ 확장자를 가짐
- safetensors는 기존 ckpt형식에서 배포용으로 개선된 확장자이며, 모델을 불러오는 속도가 더 빠르고 악성 코드로부터 좀 더 안전. 가급적 safetensors 확장자 사용을 권장
- Save Path
- Extra Networks
- 체크포인트에 추가로 다른 학습 모델을 붙이는 개념
- 체크포인트에 예를 들어 헬멧이라는 개념이 없다면 헬멧이 학습된 확장 모델을 붙여 인물에 헬멧을 씌울 수 있게 된다.
- LoRa, Textual Inversion(임베딩; Embedding), Hyper Networks … 등이 해당된다.
- 체크포인트 모델과 Base Model 버전이 일치해야한다.
Civitai>Bubble Drip - LoRa (Low-Rank Adaption)
- Save Path
- ~ComfyUI\models\loras
- USB로 비유하기도 한다.
- 체크포인트에 자동차가 학습된 Lora를 넣는다면 자동차 이미지를 생성할 수 있다.
- 체크포인트 모델의 Base Model 버전이 일치해야한다.
- <lora:모델명:가중치>를 통해 가중치 입력 가능. 한번에 여러 확장 모델 중복 사용 가능
- Save Path
- Textual Inversion (임베딩; Embedding)
- Save Path
- ~ComfyUI\embeddings (폴더가 없으면 새로 만들고 저장하기)
- 보통 임베딩이라고 부름
- 새로운 데이터를 추가하는 Lora와 다르게 기존 체크포인트 모델에 학습된 데이터의 단어를 새롭게 정의하는 방식이라고 생각하면 된다.
임베딩 설명 - 일반적으로 ‘EasyNegative’와 같이 낮은 품질에 대한 단어가 학습된 Embeddings을 주로 기본으로 사용한다.
- 프롬프트란에 추가해서 사용 (easynegative의 경우 negative 프롬프트란에)
- ex) easynegative
- Save Path
- LoRa (Low-Rank Adaption)
- Base Model
- 학습 모델이며, 크게 3가지가 있음.
- VAE (Variational Auto Encoder)
- Save Path
- ~\models\Vae
- 간단히 용도로 설명하면 이미지의 색감과 선명도를 개선해 주는 후보정용 모델
- VAE 또한 Civitai이나 HuggingFace에서 다운 가능
- 대표적으로 사용 하는 VAE 모델
- vae-ft-mse-84000
- kl-f8-anime2(베리믹스)
- Anything-V3.0
- VAE는 다른 모델과 다르게 이미지 구조에 영향을 주지 않기 때문에 이미지 스타일에 알맞은 모델을 사용하면 된다.
- Save Path
개인적으로 스터디한 내용을 정리하기에 내용이 정확하지 않을수도 있습니다 !!
728x90
'공부 > ComfyUI' 카테고리의 다른 글
[ComfyUI] ComfyUI 디테일하게 정리하기 (2) | 2024.05.07 |
---|---|
[ComfyUI] ComfyUI llama3를 연동해서 자동으로 프롬프트 생성하기 (0) | 2024.05.03 |
[ComfyUI] ComfyUI Reactor 설치 오류 (0) | 2024.04.29 |
[ComfyUI] ComfyUI error case - SetNode, GetNode (0) | 2024.04.26 |
[ComfyUI] Stable Diffusion AI 스터디 - 실제 AI를 접목시켜보기 (2) | 2024.04.03 |