You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
video diffusion 모델을 활용하여 audio-driven talking head generation을 해결하는 방법론. 이때, 그 동안 less explored였던 audio knowledge를 fully leverage하는 접근법 제안.
motivation: Audio-driven talking head generation 기존 work들은 movement를 안정화시키기 위해 motion frames를 활용하거나 frame을 overlap하여 spatial knowledge를 활용하는 경우가 많았음. 이는 동영상의 자연스러움이나 temporal consistency를 떨어뜨리는 문제로 이어지곤 함.
audio-driven이라는 특성 상, visual signal보다도 audio가 결국에는 가장 중요한 prior로 작용해야 한다는 점에서 착안하여 audio의 global perception을 탐색하여 audio-driven animation으로 문제를 shift.
approach: global audio knowledge를 보다 효과적으로 활용하기 위해, inter-clip과 intra-clip으로 audio perception의 수준을 쪼개고 이 두 가지를 적절히 interact시켜서 audio perception을 향상시키고자 함. -> intra-clip의 경우에는 context-enhanced audio learning과 motion-decoupled controller를 제안. inter-clip의 경우에는 time-aware position shift fusion을 제안.
결과: lip sync, facial expression의 생생함, head motion의 다양성, long video generation에서 좋은 결과를 보여줌.
Method Highlights
참고로 여기서 말하는 intra clip의 경우에는, video diffusion이 한 번에 generate할 수 있는 frame 수인 25 프레임의 동영상 내부에서의 interaction을 의미함.
Context-enhanced audio learning
요약: audio에서 정보를 적절히 추출해서 audio와 strongly correlated되어 있는 temporal movements를 학습하는 역할을 함.
video diffusion의 spatial attention과 temporal attention를 alpha blending해서 활용하는데, 이때 각 spatial attention과 temporal attention은 audio의 정보를 cross attention으로 받게 됨. 이를 self-attention 결과값과 add하는 형식으로 combine (즉, ip-adapter의 형식으로 최종 formulate)
spatial attention 같은 경우에는 talking face area에 집중하기 위해 core latent feature에는 얼굴 bbox 좌표로 결정되는 mask $M$으로 마스킹하여줌. Temporal attention 같은 경우에는 audio embedding을 $\mathbb{R}^{b \times 1 \times d \times c}$으로 time 축에 대해 pooling 후, repeat and expand 시켜서 cross attention에 K,V로 feed
-> spatial, temporal이라는 워딩에 집중한다기보다는 그냥 기존의 video diffusion 모델에서의 spatial, temporal에 audio embedding과의 연관성을 적절히 끼얹어주었다 정도로 생각하면 좋을 것 같음.
Motion-decoupled controller
요약: audio와 weakly correlated되어 있는 temporal movements (습관적인 head movements라든지 perspective에 있어서 random한 변화를 학습하게 됨. 뭔가 약간 비유를 하자면, context-enhanced audio learning은 분포에서 mean과 같은 mode를 학습하는 형태라면 motion-decoupled controller는 분포의 deviation을 학습하는 형태 정도로 이해? 모르겠네)
Training phase
Inference phase
여기서 이해가 안가는 점은 inference 시에 저렇게 한다고 했을 때, training과 너무 관련이 없어보인다는 것임.
-> ResNetBlocks에 add되면서 뭔가 영향을 미치는 건가.. 아직 inference code만 나와서 모든 게 파악이 안됨.
결론적으로는 time step에 vector 형태로 time embedding 느낌으로 들어감 (이 부분에서 background가 부족해서 이해가 다 안되는 걸 수도 있음)
Time-aware Position Shift Fusion
time축에 따라서 audio를 shift해서 feed함
-> 이렇게 되면 shift된 position index가 원래의 오디오 길이를 넘어가는 순간이 오는데, 그 경우를 대비하여 circular padding을 적용함.
Q. 이게 왜 효과적일까? (실은 원래 long term video를 만들 때 어떻게 만드는지 감이 잘 안와서..)
한 번에 25개 프레임을 생성할 수 있도록 학습된 video diffusion은 100개의 프레임으로 구성된 영상을 만들기 위해 4번의 inference를 거쳐야 함. 하지만, temporal consistency를 (각 inference마다 독립적이게 되면 consistency가 떨어질 수 있지) 보장하기 위해서 overlap을 한다거나 이전 프레임의 정보를 준다거나 하는 방식. sonic은 근데 결국에 circular queue처럼 audio를 회전시키면서 한 번에 25프레임밖에 처리를 못하더라도 결국에 전체 length의 오디오를 다 perceive하는 형태로 비디오를 생성하게 되는 것임. denoising time-step 별로 shift를 한 거긴 한데, 왜 time-aware하게 디자인을 했을지? 그게 궁금함.
Experiment Highlights
Qualitative Results
데모 확인해보면 정성 결과는 굿임. 학습된 도메인이 아니더라도 잘 됨 (다만, 동물은 잘 안됨)
Quantitive Results
achieved best or second-best
Ablations
CelebV-HQ에서의 결과를 봤을 때, motion controller가 상당히 중요한 영향을 미치는 듯함 (CelebV-HQ 자체가 audio와 연관이 적은 movement가 많아서 그런 걸로 추정).
그림에서 보면, temporal audio attention의 경우에는 micro expression을 효과적으로 컨트롤하는 것으로 보이고, motion controller는 agility와 expressiveness에 critical한 걸로 보임 (전체적으로 좀 더 역동적인 움직임을 의미하는 거겠지. 그러니까 dynamic scale도 거기에 넣어놨을 거고)
time-aware position shift fusion의 경우에는 좀 더 부드러운 head motion과 long-term consistency를 보여준다.
Strengths
좋은 퀄리티
아이디어 굿 & simple
inference 속도가 decent
Weaknesses
circular padding하면 오디오의 시작과 끝이 한 번에 처리될 때가 있을텐데 이게 왜곡을 주지는 않을까?
왜 time-aware shifted windows로 디자인을 했을까? 왜 "time-aware"할까? denoising time step에 따라서 window를 shift하는 게 어떤 이득을 가져다준 건지에 대한 설명이 있거나 했으면 좋았을 듯
runtime이 여전히 느리긴 하다는 점 -> diffusion에서 비롯되는 latency로 보임
The text was updated successfully, but these errors were encountered:
Summary
video diffusion 모델을 활용하여 audio-driven talking head generation을 해결하는 방법론. 이때, 그 동안 less explored였던 audio knowledge를 fully leverage하는 접근법 제안.
motivation: Audio-driven talking head generation 기존 work들은 movement를 안정화시키기 위해 motion frames를 활용하거나 frame을 overlap하여 spatial knowledge를 활용하는 경우가 많았음. 이는 동영상의 자연스러움이나 temporal consistency를 떨어뜨리는 문제로 이어지곤 함.
audio-driven이라는 특성 상, visual signal보다도 audio가 결국에는 가장 중요한 prior로 작용해야 한다는 점에서 착안하여 audio의 global perception을 탐색하여 audio-driven animation으로 문제를 shift.
approach: global audio knowledge를 보다 효과적으로 활용하기 위해, inter-clip과 intra-clip으로 audio perception의 수준을 쪼개고 이 두 가지를 적절히 interact시켜서 audio perception을 향상시키고자 함. -> intra-clip의 경우에는 context-enhanced audio learning과 motion-decoupled controller를 제안. inter-clip의 경우에는 time-aware position shift fusion을 제안.
결과: lip sync, facial expression의 생생함, head motion의 다양성, long video generation에서 좋은 결과를 보여줌.

Method Highlights
참고로 여기서 말하는 intra clip의 경우에는, video diffusion이 한 번에 generate할 수 있는 frame 수인 25 프레임의 동영상 내부에서의 interaction을 의미함.
Context-enhanced audio learning
요약: audio에서 정보를 적절히 추출해서 audio와 strongly correlated되어 있는 temporal movements를 학습하는 역할을 함.
video diffusion의 spatial attention과 temporal attention를 alpha blending해서 활용하는데, 이때 각 spatial attention과 temporal attention은 audio의 정보를 cross attention으로 받게 됨. 이를 self-attention 결과값과 add하는 형식으로 combine (즉, ip-adapter의 형식으로 최종 formulate)
spatial attention 같은 경우에는 talking face area에 집중하기 위해 core latent feature에는 얼굴 bbox 좌표로 결정되는 mask$M$ 으로 마스킹하여줌. Temporal attention 같은 경우에는 audio embedding을 $\mathbb{R}^{b \times 1 \times d \times c}$ 으로 time 축에 대해 pooling 후, repeat and expand 시켜서 cross attention에 K,V로 feed
-> spatial, temporal이라는 워딩에 집중한다기보다는 그냥 기존의 video diffusion 모델에서의 spatial, temporal에 audio embedding과의 연관성을 적절히 끼얹어주었다 정도로 생각하면 좋을 것 같음.
Motion-decoupled controller
요약: audio와 weakly correlated되어 있는 temporal movements (습관적인 head movements라든지 perspective에 있어서 random한 변화를 학습하게 됨. 뭔가 약간 비유를 하자면, context-enhanced audio learning은 분포에서 mean과 같은 mode를 학습하는 형태라면 motion-decoupled controller는 분포의 deviation을 학습하는 형태 정도로 이해? 모르겠네)
여기서 이해가 안가는 점은 inference 시에 저렇게 한다고 했을 때, training과 너무 관련이 없어보인다는 것임.
-> ResNetBlocks에 add되면서 뭔가 영향을 미치는 건가.. 아직 inference code만 나와서 모든 게 파악이 안됨.
결론적으로는 time step에 vector 형태로 time embedding 느낌으로 들어감 (이 부분에서 background가 부족해서 이해가 다 안되는 걸 수도 있음)
Time-aware Position Shift Fusion
time축에 따라서 audio를 shift해서 feed함
-> 이렇게 되면 shift된 position index가 원래의 오디오 길이를 넘어가는 순간이 오는데, 그 경우를 대비하여 circular padding을 적용함.
Q. 이게 왜 효과적일까? (실은 원래 long term video를 만들 때 어떻게 만드는지 감이 잘 안와서..)
한 번에 25개 프레임을 생성할 수 있도록 학습된 video diffusion은 100개의 프레임으로 구성된 영상을 만들기 위해 4번의 inference를 거쳐야 함. 하지만, temporal consistency를 (각 inference마다 독립적이게 되면 consistency가 떨어질 수 있지) 보장하기 위해서 overlap을 한다거나 이전 프레임의 정보를 준다거나 하는 방식. sonic은 근데 결국에 circular queue처럼 audio를 회전시키면서 한 번에 25프레임밖에 처리를 못하더라도 결국에 전체 length의 오디오를 다 perceive하는 형태로 비디오를 생성하게 되는 것임. denoising time-step 별로 shift를 한 거긴 한데, 왜 time-aware하게 디자인을 했을지? 그게 궁금함.
Experiment Highlights
Qualitative Results
데모 확인해보면 정성 결과는 굿임. 학습된 도메인이 아니더라도 잘 됨 (다만, 동물은 잘 안됨)
Quantitive Results
achieved best or second-best

Ablations
CelebV-HQ에서의 결과를 봤을 때, motion controller가 상당히 중요한 영향을 미치는 듯함 (CelebV-HQ 자체가 audio와 연관이 적은 movement가 많아서 그런 걸로 추정).
그림에서 보면, temporal audio attention의 경우에는 micro expression을 효과적으로 컨트롤하는 것으로 보이고, motion controller는 agility와 expressiveness에 critical한 걸로 보임 (전체적으로 좀 더 역동적인 움직임을 의미하는 거겠지. 그러니까 dynamic scale도 거기에 넣어놨을 거고)
time-aware position shift fusion의 경우에는 좀 더 부드러운 head motion과 long-term consistency를 보여준다.
Strengths
Weaknesses
The text was updated successfully, but these errors were encountered: