
오디오 기반 토킹 헤드 합성의 목표: 주어진 음성 오디오에 맞춰 입술 움직임이 동기화된 얼굴 이미지를 생성하는 것을 목표로 한다. 초기 연구에서는 주로 입술 영역의 움직임 제어에 초점을 맞추었으며, 다른 얼굴 부분은 변경하지 않고 유지하는 방식이었다.
기존 연구의 확장:
감정 표현 제어의 어려움:
선행 연구 GC-AVT의 접근 방식: 최근 연구인 GC-AVT [34]는 'in-the-wild' 데이터(제한되지 않은 실제 환경에서 수집된 데이터)를 활용하여 표현력이 풍부한 토킹 헤드 합성을 시도한다. 이 방법은 입술 움직임과 다른 얼굴 표현을 분리하기 위해 입 영역 데이터 증강(mouth-region data augmentation)을 도입하여 감정 표현에 대한 disentangled control을 달성한다.
본 논문(PD-FGC)의 차별점:
워핑 기반 방법 (Warping-based methods)
합성 기반 접근법 (Synthesis-based approaches)
본 논문의 접근 방식:
얼굴의 Disentangled Representation Learning은 얼굴 이미지나 비디오에서 여러 시각적 요소를 독립적인 잠재 표현으로 분리하여 학습하는 연구 분야이다. 이 연구는 오랫동안 지속되어 왔으며 다양한 접근 방식이 탐구되어 왔다.
비지도 표현 학습(Unsupervised representation learning) 방법:
사전 학습된 2D GAN 잠재 공간 편집(Latent space editing of pre-trained 2D GAN) 방법:
강력한 사전 지식(Prior knowledge) 활용 방법:
본 논문의 접근 방식:
연구 목표
제안하는 방법론: Progressive Disentangled Representation Learning
1단계: Appearance 및 Motion Disentanglement (Sec. 3.1)
2단계: Fine-Grained Motion Disentanglement (Sec. 3.2)
3단계: Expression Disentanglement (Sec. 3.3)
이 섹션은 정교하게 제어 가능한 Talking Head를 합성하기 위한 첫 번째 단계인 '외모(Appearance)'와 '움직임(Motion)'을 분리하는 과정에 대해 설명한다.
목표:
주요 구성 요소 및 학습 방법:
움직임 재구성 손실():

이 부분은 통일된 모션 특징(unified motion feature)으로부터 입술 움직임 특징(lip motion feature)을 분리하는 방법에 대해 설명한다.
목표: 이전 단계에서 얻은 통일된 모션 특징에서 입술 움직임, 눈 움직임(시선 및 깜빡임), 머리 자세 특징을 더 세부적으로 추출하는 것이 목표이다. 특히 이 단계에서는 감정 표현(expression)을 분리하지 않는데, 이는 감정 표현이 다른 요소들과 강하게 얽혀 있기 때문이며, 이는 최종 단계(3.3절)에서 다루어진다.
핵심 아이디어: 각 모션의 고유한 특성을 기반으로 모션별 대비 학습(motion-specific contrastive learning)을 설계하거나, 모션을 잘 설명하는 사전 모델(prior model)의 도움을 받는다.
positive pair 유사도를 높이고, 분모의 positive pair와 negative pair 유사도 합에서 positive pair 유사도의 비율을 높이는 방식으로 작동한다. 이는 positive pair의 유사도를 최대화하고 negative pair의 유사도를 최소화하는 효과를 가져온다.기여 및 활용: 이 손실 함수는 와 에 의해 예측된 입술 움직임 특징이 상응하는 비디오 프레임과 오디오에 대해 서로 가깝도록 보장한다. 오디오 신호는 주로 입술 움직임 정보만 포함하고 있기 때문에, 이 과정은 더 나은 요소 분리(factor disentanglement)에 도움이 된다. 또한, 학습된 오디오 인코더는 오디오 구동 입술 움직임 합성(audio-driven lip motion synthesis)에 활용될 수 있다.
핵심 아이디어: 눈 움직임(눈 응시 및 깜빡임)은 얼굴의 다른 부위에 미치는 영향이 적은 국소적인 움직임이라는 점에 기반한다.
합성 이미지 생성: 두 개의 원본 드라이빙 프레임 v1과 v2가 주어졌을 때, v1의 눈 영역과 v2의 다른 얼굴 영역을 합성하여 새로운 '앵커 프레임' va를 생성한다.
특징 추출: 별도의 눈 움직임 인코더 Eeye를 사용하여 v1, v2, va로부터 각각의 눈 움직임 특징인 를 추출한다.
대조 쌍 구성:
InfoNCE 손실 함수: 이러한 쌍들을 사용하여 InfoNCE 손실 ()을 적용한다. 이 손실은 긍정 쌍의 유사성은 최대화하고 부정 쌍의 유사성은 최소화하여, Eeye가 오직 눈 영역의 움직임에만 집중하고 다른 얼굴 영역의 변화에는 둔감하도록 학습시킨다.
수식 설명:
샘플링된 프레임의 연속성 및 무작위성
배치 내 Positive/Negative 샘플 생성 및 개수
데이터셋 규모와 이터레이션 수
머리 자세 학습 (Head pose learning)
핵심 아이디어: 머리 자세(Head pose)는 피치(pitch), 요(yaw), 롤(roll)의 세 가지 오일러 각(Euler angles)과 3D 변환으로 구성된 6차원(6D) 파라미터로 명확하게 정의될 수 있다는 점을 활용한다.
회귀 학습: 머리 자세 인코더 Epose는 이러한 6D 파라미터를 직접 회귀(regress)하도록 학습된다.
3D Face Prior 모델 활용: 학습 과정에서는 외부의 3D 얼굴 재구성 모델 [15]이 제공하는 ground truth 머리 자세 파라미터()를 가이드로 사용한다.
L1 손실 함수: Epose가 예측한 머리 자세 파라미터()와 ground truth 파라미터() 사이의 L1 거리(절대 오차)를 최소화하는 방식으로 학습이 진행된다.
수식 설명:

Progressive Disentangled Representation Learning의 세 번째이자 마지막 단계는 표정(Emotional Expression)을 다른 모션 요인들과 분리하는 것이다.
도전 과제
해결 전략
이러한 도전 과제를 해결하기 위해, 이 방법은 "feature-level decorrelation" 전략과 "self-reconstruction"을 통한 보완 학습을 제안한다. 핵심 가설은 추출된 표정 특징이 다른 모션 특징과 독립적이면서도, 이들을 결합했을 때 원본 driving 신호의 모든 얼굴 움직임을 충실하게 재구성할 수 있다면, 그것이 정확한 표정의 잠재 표현이라는 것이다.
In-window decorrelation (윈도우 내 상관관계 제거)
Lip-motion decorrelation (입술 움직임 상관관계 제거)
이 부분은 표현 특징(expression feature)과 립 모션 특징(lip motion feature, 오디오 특징으로 간주됨) 간의 독립성을 강화하여, 감정 표현을 다른 얼굴 움직임으로부터 더 잘 분리(disentanglement)하기 위해 도입된 손실 함수에 대해 설명하고 있다. 감정 표현은 입술 움직임과 본질적으로 얽혀 있기 때문에(예: 같은 말을 해도 감정에 따라 입 모양이 다를 수 있음) 이를 분리하는 것은 매우 어려운 과제이다. 이 손실은 이러한 얽힘을 줄이는 데 도움을 준다.
손실 함수는 다음과 같다:
: 립 모션 디코릴레이션 손실이다. 이 값이 낮을수록 표현 특징과 립 모션 특징 간의 상관관계가 적다는 것을 의미하며, 이는 두 특징이 서로 독립적으로 분리되었음을 나타낸다.
: 배치(batch) 크기 를 가진 평균 표현 특징들의 행렬이다. 차원은 이다.
: 대응하는 오디오 특징들의 행렬이다. 이 역시 차원은 이다. 오디오 신호는 주로 립 모션 정보만을 포함한다고 가정하기 때문에, 립 모션 특징으로 간주된다.
: 특징 벡터의 차원이다. 즉, 각 특징( 또는 )이 가지고 있는 값의 개수이다.
: 두 행렬 간의 특징 차원(feature dimension) 상관관계를 계산하는 함수이다. 이 함수는 와 의 각 차원(예: 첫 번째 특징 차원끼리, 두 번째 특징 차원끼리 등) 사이의 상관계수를 계산한다.
: 는 배치 크기, 는 특징 차원을 의미하며, 이 기호는 배치 내의 모든 특징 차원에 걸쳐 상관관계의 제곱을 합산한다는 것을 나타낸다. 상관관계의 제곱을 사용함으로써 양의 상관관계와 음의 상관관계 모두를 최소화하려는 목표이다.
: 상관관계 값에 제곱을 하여, 상관관계의 절댓값을 최소화하도록 강제한다. 즉, 양의 상관관계든 음의 상관관계든 모두 0에 가깝게 만들어서 두 특징이 서로 독립적이 되도록 만든다.
슬라이딩 윈도우: 이 윈도우는 비디오 시퀀스를 따라 순차적으로 이동한다. 즉, 다음 중심 프레임을 위해 윈도우가 한 칸씩 이동하며 위 과정을 반복한다.
손실 함수의 작동 방식 및 중요성:
독립성 강제: 이 손실 함수는 와 사이의 상관관계를 0으로 만들려고 시도한다. 즉, 오디오 신호가 주로 립 모션에 대한 정보를 포함하고 있으므로, 표현 특징이 립 모션 특징과 무관해지도록 학습시킨다. 이는 감정 표현이 입술 움직임에 얽매이지 않고 독립적으로 제어될 수 있도록 돕는다.
실용적인 고려사항: 메모리 뱅크: 일반적으로 두 변수 간의 상관관계를 정확하게 계산하기 위해서는 매우 큰 배치 크기가 필요하다. 하지만 딥러닝 모델 훈련 시 메모리 제한으로 인해 큰 배치 크기를 유지하기 어렵다. 이 논문에서는 이 문제를 해결하기 위해 두 개의 메모리 뱅크(memory banks)를 사용한다.
메모리 뱅크는 현재 배치 외에 이전 반복(iteration)에서 얻은 개의 최신 특징들을 저장한다. 이 은 현재 배치 크기보다 훨씬 크다.
따라서 상관관계 계산 시에는 현재 배치 특징과 메모리 뱅크에 저장된 이전 특징들을 함께 사용하여 더 많은 데이터를 기반으로 정확한 상관관계를 추정한다.
* 하지만 네트워크 가중치 업데이트를 위한 그래디언트(gradient)는 현재 배치 특징을 통해서만 역전파(back-propagate)된다. 이는 메모리 사용을 효율적으로 관리하면서도 안정적인 학습을 가능하게 한다.
이 "립 모션 디코릴레이션" 전략은 표현과 립 모션이라는 두 가지 중요한 얼굴 움직임 요소가 서로에게 미치는 영향을 최소화하여, 각 요소를 독립적으로 제어할 수 있는 기반을 마련한다.
상관관계 cor를 구하는 건 코사인 유사도 기반인가?
는 프레임별 피처를 평균낸 거니까, 에서 D를 구성하는 피처는 모두 동일한 값인가?
첫 번째 아이디어: "더 많은 데이터를 기반으로 정확한 상관관계를 추정한다." (메모리 뱅크 사용)
두 번째 아이디어: "네트워크 가중치 업데이트를 위한 그래디언트(gradient)는 현재 배치 특징을 통해서만 역전파(back-propagate)된다."
Complementary learning via self-reconstruction (자가 재구성을 통한 보완 학습)
개념: 위 두 가지 상관관계 제거 전략이 특징의 독립성을 보장하지만, 추출된 표정 특징 자체의 의미론적 의미는 부족할 수 있다. 이를 위해 이미지 생성기 를 활용하여 표정 특징에 의미론적 의미를 부여한다.
작동 방식: 이미지 생성기 는 외모 특징, 다른 모션 특징(입술 움직임, 머리 포즈, 시선/눈 깜빡임)과 함께 표정 특징을 입력받아, driving 프레임을 자가 재구성하도록 학습된다.
이 과정에서 표정 인코더 는 다른 모든 모션 특징에 포함되지 않은 (즉, 순수한) 표정 정보를 학습하도록 강제된다.
여러 손실 함수가 와 를 학습하는 데 사용된다.
VGG Loss (): 합성된 이미지()와 Ground Truth 이미지() 간의 VGG 특징 맵 차이를 측정하여 이미지의 시각적 유사성을 높인다.
Adversarial Loss 및 Discriminator Feature Matching Loss: [6]에 따라 적용되어 합성된 이미지의 품질을 개선한다.
Motion-level consistency loss (): 합성된 이미지가 driving 프레임의 모든 얼굴 움직임을 잘 따르도록 보장한다.
결론: 이러한 자가 재구성 과정은 특징 수준의 상관관계 제거 전략과 결합되어 표정 특징을 통합 모션 특징으로부터 성공적으로 분리한다. 또한, 이 단계에서 학습된 이미지 생성기 는 분리된 모든 모션 특징과 외모 특징을 입력으로 받아 세밀하게 제어 가능한 Talking Head 합성을 가능하게 한다.