Home
Login

AUTOMATIC1111의 Stable Diffusion WebUI에 ControlNet 지원을 제공하는 확장 플러그인

GPL-3.0Python 17.7kMikubillsd-webui-controlnet Last Updated: 2024-08-12

sd-webui-controlnet 프로젝트 상세 소개

프로젝트 개요

sd-webui-controlnet는 AUTOMATIC1111의 Stable Diffusion WebUI를 위해 개발된 ControlNet 확장 플러그인입니다. 이 프로젝트는 Mikubill이 유지 관리하며, 현재 가장 인기 있고 기능이 완전한 ControlNet WebUI 확장 중 하나입니다.

프로젝트 정보

핵심 기능

1. ControlNet 통합

  • ControlNet 1.0 및 1.1 버전 완벽 지원
  • ControlNet을 원본 Stable Diffusion 모델에 즉시 추가, 병합 불필요
  • 다양한 제어 모델 유형 지원

2. 전처리기 지원

다양한 이미지 전처리기 지원:

  • Canny: 엣지 검출
  • Depth: 깊이 맵 생성 (Midas, Depth Anything V2 포함)
  • OpenPose: 인체 자세 검출
  • Scribble: 낙서 제어
  • Segmentation: 이미지 분할
  • Normal: 법선 맵
  • Lineart: 선화 추출
  • MLSD: 직선 검출
  • HED: 홀로그래픽 중첩 엣지 검출
  • Reference-only: 참조 이미지 모드

3. 고급 기능

다중 ControlNet 지원
  • 단일 생성 시 여러 ControlNet 입력 동시 사용 가능
  • 설정에서 최대 모델 수 조정 가능
제어 모드
  • 균형 모드: ControlNet이 CFG 비율 양쪽에서 작동
  • 프롬프트가 더 중요: ControlNet의 영향 점진적으로 감소
  • ControlNet이 더 중요: CFG의 조건 측에서만 작동
픽셀 완벽 모드
  • 최적의 전처리기 해상도 자동 계산
  • 모든 픽셀이 Stable Diffusion과 완벽하게 일치하도록 보장

4. T2I-Adapter 지원

TencentARC의 T2I-Adapter 모델 완벽 지원, 다음 포함:

  • Color Adapter
  • Style Adapter
  • Sketch Adapter
  • Depth Adapter

5. IP-Adapter 기능

  • 이미지 프롬프트 어댑터
  • CLIP 마스크 지원
  • IP-Adapter 자동 전처리기
  • 고급 가중치 제어

기술 특성

스마트 이미지 재샘플링

  • 고해상도 복원 시 두 개의 제어 이미지 출력
  • 작은 이미지는 기본 생성에 사용, 큰 이미지는 고해상도 복원에 사용
  • 스마트 알고리즘으로 고품질 제어 이미지 재샘플링 보장

마스크 통합

  • A1111의 다양한 마스크 유형 완벽 지원
  • "Inpaint masked"/"Inpaint not masked" 지원
  • "Whole picture"/"Only masked" 지원
  • A1111의 크기 조정 옵션과 완벽하게 일치

배치 처리 모드

  • 이미지 일괄 처리 지원
  • 각 유닛에 대한 배치 처리 디렉토리 지정
  • txt2img 및 img2img 탭에서 사용 가능

설치 방법

WebUI를 통한 설치

  1. "Extensions" 탭 열기
  2. "Install from URL" 하위 탭 열기
  3. "URL for extension's git repository"에 다음 입력:
    https://github.com/Mikubill/sd-webui-controlnet.git
    
  4. "Install" 버튼 클릭
  5. 설치 완료 후 WebUI 재시작

모델 다운로드

API 지원

REST API

  • WebUI 시작 시 --api 파라미터 사용
  • http://webui-address/docs에서 API 문서 확인
  • txt2img 및 img2img 작업 지원

외부 호출

  • 다른 스크립트에서 이 확장 프로그램 제어 지원
  • 설정에서 "Allow other scripts to control this extension" 활성화 필요

명령줄 파라미터

확장 프로그램에 다음 명령줄 파라미터 추가:

--controlnet-dir <path>                           # ControlNet 모델 디렉토리 추가
--controlnet-annotator-models-path <path>        # 전처리기 모델 디렉토리 설정
--no-half-controlnet                             # ControlNet 모델을 전체 정밀도로 로드
--controlnet-preprocessor-cache-size             # 전처리기 결과 캐시 크기
--controlnet-loglevel                            # ControlNet 확장 프로그램 로그 레벨
--controlnet-tracemalloc                         # 메모리 할당 추적 활성화

시스템 요구 사항

최소 사양

  • Windows/Linux/macOS
  • NVIDIA GPU (4GB+ VRAM 권장)
  • Python 3.8+
  • AUTOMATIC1111 WebUI

성능 최적화

  • --xformers 파라미터를 사용하여 성능 향상
  • 낮은 VRAM 장치에 적합한 "Low VRAM" 모드 활성화
  • 최대 768x832 해상도 지원 (4GB VRAM)

사용 예시

기본 사용

  1. WebUI에서 ControlNet 활성화
  2. 전처리기 유형 선택 (예: Canny, Depth 등)
  3. 제어 이미지 업로드 또는 전처리기에서 자동 생성
  4. 가중치 및 안내 강도 조정
  5. 이미지 생성

다중 ControlNet 사용

  1. 설정에서 최대 모델 수 늘리기
  2. 여러 ControlNet 유닛을 동시에 활성화
  3. 각 유닛에 대해 다른 전처리기 및 가중치 설정
  4. 다양한 제어 조건을 조합하여 이미지 생성

요약

sd-webui-controlnet는 Stable Diffusion 생태계에서 가장 중요한 확장 프로그램 중 하나이며, AI 이미지 생성의 제어 가능성과 정확성을 크게 확장합니다. 전문 예술가이든 아마추어이든 이 확장 프로그램을 통해 보다 정확한 이미지 제어와 더 풍부한 창작 가능성을 실현할 수 있습니다.

Star History Chart