레이블이 WebUI LoRA인 게시물을 표시합니다. 모든 게시물 표시
레이블이 WebUI LoRA인 게시물을 표시합니다. 모든 게시물 표시

2025년 3월 4일 화요일

Stable Diffusion WebUI에서 LoRA로 캐릭터 커스터마이징하는 방법 (초보자 가이드)

Stable Diffusion WebUI에서 LoRA로 캐릭터 커스터마이징하는 방법

Stable Diffusion은 텍스트 프롬프트를 기반으로 이미지를 생성하는 AI 모델이며, WebUI를 활용하면 다양한 설정을 조정하여 원하는 스타일의 이미지를 얻을 수 있습니다. 특히, LoRA (Low-Rank Adaptation) 기술을 사용하면 특정 캐릭터나 스타일을 모델에 학습시켜 더욱 정밀한 커스터마이징이 가능합니다.

이번 가이드에서는 Stable Diffusion WebUI에서 LoRA를 활용해 캐릭터 커스터마이징하는 방법을 단계별로 설명하겠습니다.


1. LoRA란 무엇인가?

LoRA는 모델의 가중치를 최소한으로 조정하여 새로운 스타일이나 특정 캐릭터를 학습시키는 방법입니다. 기존 모델을 그대로 유지하면서 추가적인 정보를 반영할 수 있어 적은 리소스로도 효과적인 학습이 가능합니다.

LoRA의 장점:

  • 기존 모델보다 가벼운 학습 방식
  • 원본 모델을 유지하면서 추가적인 학습 가능
  • 다양한 스타일과 캐릭터 적용 가능

2. LoRA 모델 다운로드 및 적용 방법

Stable Diffusion WebUI에서 LoRA를 활용하려면 먼저 적절한 LoRA 모델을 다운로드해야 합니다.

(1) LoRA 모델 다운로드

다음과 같은 사이트에서 원하는 캐릭터 또는 스타일의 LoRA 모델을 찾을 수 있습니다.

다운로드한 .safetensors 파일을 Stable Diffusion WebUI의 models/Lora/ 폴더에 저장합니다.

(2) WebUI에서 LoRA 적용하기

  1. Stable Diffusion WebUI를 실행합니다.
  2. txt2img 또는 img2img 탭으로 이동합니다.
  3. 프롬프트 입력창 하단의 LoRA 버튼을 클릭합니다.
  4. 다운로드한 LoRA 모델을 선택하고 가중치를 조절합니다.
    • 예제: <lora:캐릭터이름:0.8> (0.8은 가중치, 숫자가 클수록 강한 효과)

3. LoRA를 활용한 캐릭터 커스터마이징 프롬프트 예제

LoRA를 사용하여 원하는 캐릭터를 생성하려면 적절한 프롬프트를 설정해야 합니다.

  • 기본 프롬프트 예제

masterpiece, best quality, ultra-detailed, (anime style:1.2), full body, solo, smiling, beautiful lighting, dynamic pose  
<lora:character_name:0.8>  

  • 네거티브 프롬프트 예제
low quality, blurry, extra fingers, disfigured, bad anatomy, watermark 
  • 특정 스타일 적용 예제
masterpiece, best quality, (cyberpunk style:1.3), neon lights, futuristic city background  
<lora:cyberpunk_character:0.7>  

4. LoRA 학습을 직접 해보고 싶다면? (커스텀 LoRA 제작)

기존 LoRA 모델을 활용하는 것 외에도, 직접 특정 캐릭터를 학습시켜 자신만의 LoRA 모델을 만들 수도 있습니다.

(1) 학습 준비

  • 필요한 이미지 10~20장을 준비 (다양한 각도와 포즈)
  • WebUI의 kohya_ss LoRA 학습 스크립트 설치
  • 적절한 학습 설정을 조정하여 학습 시작

(2) 학습 후 결과 확인

  • 생성된 LoRA 모델을 WebUI에 적용하여 테스트
  • 프롬프트를 조정하며 원하는 스타일을 조율

5. 결론

Stable Diffusion WebUI에서 LoRA를 활용하면 원하는 캐릭터를 손쉽게 커스터마이징할 수 있습니다. 이미 학습된 LoRA 모델을 활용하는 것뿐만 아니라, 직접 LoRA 모델을 학습하여 자신만의 캐릭터를 만들 수도 있습니다.

추천 링크:


스테이블 디퓨젼 캐릭터 학습 가이드: LoRA & ControlNet 활용법 완벽 정리

스테이블 디퓨젼에서 캐릭터 학습 및 LoRA, ControlNet을 활용한 단계별 튜토리얼


1. 스테이블 디퓨젼에서 캐릭터 학습시키는 방법 (LoRA 활용)

 개요

캐릭터 학습이란 특정 스타일, 얼굴, 복장 등을 AI가 인식하도록 훈련하여 프롬프트를 입력했을 때 원하는 결과를 얻는 과정입니다. 가장 많이 사용되는 방법은 **LoRA(Low-Rank Adaptation)**을 활용한 학습이며, 이는 기존 모델을 변형하지 않고 가볍게 학습시킬 수 있는 방법입니다.


 1단계: 학습 환경 준비하기

먼저 학습을 진행할 환경을 설정합니다.

(1) 필수 도구 설치

  • Stable Diffusion WebUI (AUTOMATIC1111)
  • Python 3.10+
  • CUDA 지원 NVIDIA GPU
  • xFormers (VRAM 최적화용, 선택사항)

설치 방법은 [AUTOMATIC1111 GitHub]를 참고하세요.

(2) 필요한 라이브러리 설치

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

pip install -r requirements.txt


 2단계: 학습용 데이터셋 준비

캐릭터 학습을 위해 고품질의 이미지 데이터셋을 준비해야 합니다.

(1) 이미지 수집

  • 최소 20~50장 이상의 이미지 필요
  • 동일한 조명, 스타일, 얼굴이 잘 보이는 이미지 선택
  • 이미지 크기: 512x512 또는 768x768로 리사이징
  • 배경이 복잡한 경우 rembg (배경제거 도구) 사용 추천

(2) 태그 추가 (DeepDanbooru 활용)

AI가 특징을 학습하기 위해 **태그(Labeling)**가 필요합니다.

  • WebUI의 DeepDanbooru 확장 기능을 설치하여 자동 태깅
  • 예제 태그:

 1girl, blonde hair, blue eyes, smile, anime style, school uniform


 3단계: LoRA 학습 실행

(1) 학습 스크립트 실행

AUTOMATIC1111의 WebUI에서 kohya-ss/sd-scripts를 활용하여 학습할 수 있습니다.

  •  LoRA 학습 스크립트 다운로드

git clone https://github.com/kohya-ss/sd-scripts.git

cd sd-scripts

pip install -r requirements.txt

  •  LoRA 학습 실행 예제

accelerate launch train_network.py \

  --pretrained_model_name_or_path="your_model_path" \

  --train_data_dir="your_dataset_path" \

  --output_dir="your_lora_output_path" \

  --resolution=512,512 \

  --batch_size=2 \

  --max_train_steps=2000 \

  --learning_rate=1e-4 \

  --network_dim=8

  • --max_train_steps=2000: 학습 횟수 (너무 많으면 과적합 주의)
  • --network_dim=8: LoRA의 압축 정도 (높을수록 원본 모델 변화가 적음)

 4단계: WebUI에서 LoRA 사용 방법

(1) LoRA 적용 방법

  1. WebUI 실행 후 "txt2img" 탭으로 이동
  2. "Stable Diffusion checkpoint"에서 원하는 기본 모델 선택
  3. "Additional Networks" 확장 기능에서 학습한 LoRA 파일 선택
  4. 프롬프트에 LoRA 적용

 <lora:your_lora_model:0.8>, 1girl, blonde hair, blue eyes, smile, anime style

(2) 사용자가 흔히 하는 실수

 잘못된 프롬프트 사용 → LoRA 태그를 넣지 않으면 적용되지 않음
과적합된 LoRA 사용 → 너무 강하게 적용하면 다른 스타일이 섞이지 않음
VRAM 부족 문제 → --network_dim 값을 조정하여 가볍게 학습


2. 스테이블 디퓨젼 학습 준비 단계별 가이드

데이터셋 준비 및 구조

학습용 데이터셋은 폴더 구조를 올바르게 구성해야 합니다.

📂 your_dataset_path/
 ├── 00001.jpg
 ├── 00002.jpg
 ├── captions/
 │ ├── 00001.txt (1girl, red hair, happy face)
│ ├──
00002.txt (blonde hair, blue eyes, school uniform)

이미지명과 캡션명이 동일해야 학습이 정상적으로 진행됩니다.


3. ControlNet과 LoRA 조합 튜토리얼

ControlNet은 기본 이미지의 포즈, 구조 등을 유지하면서 스타일을 변경하는 기능입니다.

1단계: ControlNet 확장 기능 설치

  1. WebUI 실행 후 Extensions → Available → "sd-webui-controlnet" 설치
  2. "Apply and Restart UI" 버튼 클릭

 2단계: ControlNet 설정 방법

  1. Base Model 선택 (SDXL or SD 1.5)
  2. ControlNet 활성화 (Enable 체크)
  3. Control Type 선택
  • Canny (윤곽선 유지)
  • Depth (깊이 정보 유지)
  • Pose (인체 포즈 유지)
  1. Reference Image 업로드

      5.   LoRA 적용 후 프롬프트 입력


 <lora:your_character:0.7>, 1girl, anime, red hair, cheerful

 3단계: ControlNet + LoRA 결과 예시

  • 기존 캐릭터 포즈를 유지하면서 스타일 변경 가능
  • 포즈, 윤곽선, 배경 조합하여 더 정교한 이미지 생성

Recommended Posts

Love is taking responsibility till the end

  I created a campaign called "Don't Abandon Your Beloved Dog" with Stable Diffusion. I tried creating it several times, but i...