Sonic:自动对齐音频与唇部动作,一键合成配音动画!腾讯与浙大联合推出音频驱动肖像动画生成框架

279 阅读4分钟

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


大家好,我是蚝油菜花,今天跟大家分享一下 Sonic 这个由腾讯和浙江大学联合推出的音频驱动肖像动画框架。

🚀 快速阅读

Sonic 是一个基于全局音频感知的肖像动画生成框架,能够生成逼真的面部表情和动作。

  1. 核心功能:精确的唇部同步、丰富的表情和头部动作、长时间稳定生成。
  2. 技术原理:上下文增强音频学习、运动解耦控制器、时间感知位置偏移融合机制。

Sonic 是什么

Sonic-demo

Sonic 是由腾讯和浙江大学联合开发的音频驱动肖像动画框架,旨在通过全局音频感知生成逼真的面部表情和动作。该框架基于上下文增强音频学习和运动解耦控制器,分别提取音频片段内的长期时间音频知识和独立控制头部与表情运动,增强局部音频感知能力。Sonic 通过时间感知位置偏移融合机制,将局部音频感知扩展到全局,解决了长视频生成中的抖动和突变问题。

Sonic 在视频质量、唇部同步精度、运动多样性和时间连贯性方面优于现有的最先进方法,显著提升了肖像动画的自然性和连贯性。它还支持用户对动画进行精细调整,提供了高度的可定制性。

Sonic 的主要功能

Sonic-show

  • 逼真的唇部同步:精确地将音频与唇部动作对齐,确保说话内容与嘴型高度一致。
  • 丰富的表情和头部动作:生成多样化且自然的面部表情和头部运动,让动画更具生动性和表现力。
  • 长时间稳定生成:在处理长视频时,能保持稳定的输出,避免抖动和突变,确保整体连贯性。
  • 用户可调节性:支持用户基于参数调整控制头部运动、表情强度和唇部同步效果,提供高度的可定制性。

Sonic 的技术原理

Sonic

  • 上下文增强音频学习:提取音频片段内的长期时间音频知识,将音频信号中的语调、语速等信息转化为面部表情和唇部运动的先验知识。Whisper-Tiny 模型提取音频特征,基于多尺度理解将特征与空间交叉注意力层结合,指导空间帧的生成。
  • 运动解耦控制器:将头部运动和表情运动解耦,分别用独立的参数控制,增强动画的多样性和自然性。支持用户自定义夸张运动,基于调整运动桶参数(motion-bucket parameters)控制头部和表情运动的幅度。
  • 时间感知位置偏移融合:基于时间感知的滑动窗口策略,将音频片段的局部感知扩展到全局感知,解决长视频生成中的抖动和突变问题。在每个时间步中,模型从新的位置开始处理音频片段,逐步融合全局音频信息,确保长视频的连贯性。
  • 全局音频驱动:Sonic 完全依赖音频信号驱动动画生成,避免传统方法中对视觉信号(如运动帧)的依赖,提高生成的自然性和时间一致性。音频信号作为全局信号,为面部表情和头部运动提供隐式的先验信息,让生成的动画更加符合音频内容。

如何运行 Sonic

1. 安装环境

  • 安装 PyTorch:
pip3 install -r requirements.txt
  • 下载模型权重:
python3 -m pip install "huggingface_hub[cli]"
huggingface-cli download LeonJoe13/Sonic --local-dir checkpoints
huggingface-cli download stabilityai/stable-video-diffusion-img2vid-xt --local-dir checkpoints/stable-video-diffusion-img2vid-xt
huggingface-cli download openai/whisper-tiny --local-dir checkpoints/whisper-tiny

或手动下载 预训练模型svd-xtcheckpoints/ 目录。

2. 运行示例

python3 demo.py '/path/to/input_image' '/path/to/input_audio' '/path/to/output_video'

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 微信公众号|搜一搜:蚝油菜花 🥦