InstantID 상세 분석

안녕하세요. 9기 HuggingFace 세션에 참여 중인 너순 입니다.

본 포스팅 에서는 HuggingFace에 있는 InstantID 모델의 활용법에 대해 좀 더 자세히 적어 보려고 합니다.

주요 내용은 아래와 같습니다.

  • 목차

    • InstantID 개요

    • 화면 구성

    • 기본 사용법

    • 프롬프트

    • 기본 옵션

    • 컨트롤넷 옵션

    • 세부 옵션

  • InstantID 개요

    • 인물의 Identity를 유지 하면서 이미지를 생성해 주는 모델 (Zero-shot Identity-Preserving Generation in Seconds)

    • 베이징에 기반을 둔 스타트업인 인스턴트X에서 제작 하였으며 2달 전 신규로 공개된 따끈 따끈한 이미지 생성 AI 모델 (https://github.com/InstantID/InstantID)

  • 화면 구성

    1. 인물 이미지 업로드

    2. 포즈 이미지 업로드

    3. 프롬프트 입력

    4. 이미지 생성 실행

    5. 기본 옵션

    6. 컨트롤넷 옵션

    7. 세부 옵션

  • 기본 사용법

    • HuggingFace Spaces에서 사용 가능 (https://huggingface.co/spaces/InstantX/InstantID)

    • 작업 순서

      1. 변경 하고 싶은 원본 인물 이미지 선택

      2. (옵션) 인물 포즈 이미지 선택

      3. 이미지 변형 시 적용할 프롬프트 입력

      4. (옵션) 어떤 스타일을 적용할지 미리 적용해 놓은 템플릿 선택

      5. Submit 버튼을 누르면 이미지가 생성됨


  • 프롬프트

    • 인물에 적용하고 싶은 스타일을 지정

    • 프롬프트 쉽게 적용하는 방법

      • 원하는 스타일의 이미지 선택 및 프롬프트 복사

      • 복사한 프롬프트를 붙여넣기 한 후 submit 버튼 선택 (이때 Style templete은 No style로 선택되어 있어야 함)


  • 기본 옵션

    • Enable Fast Inference with LCM

      • 해당 옵션 체크 시 이미지 생성 속도가 빨라지나 퀄리티는 일부 저하 됨 (LCM speeds up the inference step, the trade-off is the quality of the generated image. It performs better with portrait face images rather than distant faces)

    • Style template

      • No Style 상태에서 Prompt를 통해 Film Noir에 정의된 스타일 적용

    • IdentityNet strength (for fidelity) ← 충실도

      • 인물 Identity 강도 조절 (기본값 0.8)

      • 0.1

      • 1.0

    • Image adapter strength (for detail)

      • 디테일 강도 조절 (기본값 0.8)

      • 0.1

      • 1.0


  • 컨트롤넷 옵션

    • Pose strength

      • 인물의 동작을 추출하여 반영 (기본값 0.4)

      • 0.1

      • 1.0

    • Canny strength

      • 원본 이미지에서 주요 외곽선을 추출하여 반영 (기본값 0.4)

      • 0.1

      • 1.0

    • Depth Strength

      • depth map을 추출하여 적용 (기본값 0.4)

      • 0.1

      • 1.0


  • 세부 옵션

    • Negative Prompt

      • 위에서 설명한 Prompt(Positive Prompt)와 반대 되는 항목으로 이미지 생성 지 제외 시키고자 하는 항목들을 정의

    • Number of sample steps

      • denosing 과정을 몇 번 반복할 것인지 설정 (기본값 30)

      • 1

      • 5

      • 30

      • 60

    • Guidance scale

      • 프롬프트에 입력한 내용을 얼마나 충실하게 적용할 지 설정 (기본값 5)

      • 1

      • 5

      • 10

    • Seed

      • 이미지 생성의 기초가 되는 Seed 값을 직접 지정

    • Schedulers

      • 이미지 생성 과정에서 사용되는 알고리즘을 지정

    • Randomize seed

      • 선택 시 이미지 생성할 때 마다 random seed 적용

      • 동일한 이미지를 옵션을 통해 튜닝하고 싶다면 해당 옵션을 체크하지 말아야 함

    • Enhance non-face region

      • 이미지 생성 시 얼굴 이외의 영역까지 적용 범위를 확장하여 품질을 향상 시켜 줌

InstantID는 별도의 LoRA 모델 없이 인물의 Identity를 유지한 상태로 변형할 수 있는 신규 이미지 생성 모델로 실제 테스트를 해본 결과 다양한 스타일의 결과물을 확인할 수 있었습니다.

생성형 이미지에 관심 있으신 분들은 위의 내용을 참고로 이런 저런 테스트를 해보시면 재미 있는 결과물을 얻으실 수 있으리라 생각됩니다.

이상으로 포스팅을 마칩니다.

#9기HuggingFace

11
12개의 답글

(채용) 콘텐츠 마케터, AI 엔지니어, 백엔드 개발자

지피터스의 수 천개 AI 활용 사례 데이터를 AI로 재가공 할 인재를 찾습니다

👉 이 게시글도 읽어보세요