요약
기존의 personalization 방법은 test 시점에서의 finetuning, multiple input images의 요구, 낮은 identity preservation, 생성된 결과물의 제한된 다양성 문제가 있다. 이런 문제를 해결하기 위해 단일 face image에서 personalized image generation을 위한 diversity와 identity preservation을 향상시키는 tuning-free 접근 방식인 IDAdapter를 제안한다. IDAdapter는 text와 visual 주입 및 face identity loss의 결합을 통해 generation 과정에 personalized concept을 통합한다. 학습 단계에서는 특정 identity의 multiple reference images에서 혼합된 features를 통합하여 identity와 관련된 content details를 풍부하게 하여 이전 작업들에 비해 더 다양한 style, expression의 이미지를 생성하도록 모델을 가이드한다.
Introduction
기존 personalization은 주로 pretrained model을 활용하여 특정 reference images 세트를 사용해 finetuning하는 방식으로 이루어졌다. 이런 접근 방식은 computing resources가 많이 필요하고, 시간이 많이 필요해 사용자 중심 어플리케이션에는 적합하지 않다. 이를 해결하기 위해 IDAdapter를 도입해 단일 reference images로도 다양하고 높은 fidelity의 이미지를 생성할 수 있는 방법을 제안한다.
방법론
T2I diffusion model $\epsilon_\theta$는 noise map $\epsilon \in \mathbb{R}^{h \times w}$ 를 텍스트 프롬프트 $T$를 기반으로 이미지 $x_0$를 디노이징한다.
1. Facial Features
- 입력 이미지에서 얼굴 특징을 추출하고, 이를 text prompt로 표시된 style 정보와 결합해 다양한 이미지를 생성한다. 텍스트 공간 임베딩을 통해 얼굴 이미지를 학습하고 이를 Stable Diffusion의 생성 과정에 삽입해 특정 식별자 단어를 통해 사람의 이미지 생성을 제어할 수 있다.
- 일반적인 CLIP 이미지 인코더와 face recognition 네트워크의 feature vector 인코더: non-identity 정보(facial pose, expressions)에 강하게 결합되어 있다. 이로 인해 생성된 이미지가 person-level에서 다양성이 부족할 수 있다.
- Mixed Facial Features(MFF) 모듈: ID와 non-ID features를 분리하여 생성 과정에서 더 높은 다양성을 가능하게 한다.
2. Mixed Facial Features(MFF)
- MFF는 여러 reference images에서 많은 세부정보를 활용하여 IDAdapter가 identity features를 더 잘 추출하고 얼굴 fidelity를 달성하도록 돕는다. 이는 단일 얼굴 이미지에서 단순히 학습하는 대신, 여러 얼굴 이미지의 특징을 결합하여 identity 정보를 강화하고 다양한 생성 결과를 도출한다.
- 다양한 데이터 증강 기법: N개의 face images $x(1), x(2), ..., x(N)$를 사용하여 text prompt $T$와 결합한다.
- Patch features $f_v$와 class embedding $f_c$: 모든 reference images의 특징을 결합하여 풍부한 identity 관련 content details를 제공한다.
- Vision embedding $E_r$: MFF 모듈에서 추출된 features를 통해 Stable Diffusion 모델의 latent space에 적응시킨다.
3. Personalized Concept Integration
- Textual injection과 Visual injection을 통해 Stable Diffusion의 "dictionary"에 새로운 personalized concept을 주입한다. 모든 reference images의 얼굴을 "[class noun]"(ex. "woman", "man")으로 라벨링하고 "sks"라는 식별자 단어를 사용한다. 이 텍스트 임베딩을 통해 얼굴 특징을 UNet의 cross-attention layer에 주입하여 personalized된 개념을 통합한다.
- Textual injection: 모든 reference images의 얼굴을 "[class noun]"으로 라벨링하고 "sks"라는 식별자 단어를 사용한다. 이를 통해 얼굴 특징을 UNet의 cross-attention layer에 주입하여 personalized concept을 통합한다.
- Visual injection: MFF vision embedding $E_r$을 self-attention layer와 cross-attention layer 사이에 주입한다.
- Face Identity loss: 얼굴 identity를 유지하기 위해 pretrained face recognition모델을 사용하여 face identity loss $L_{id}$를 도입한다.