ESC
输入关键词搜索文章
目录

Teller

CVPR 2025 · Real-Time Streaming Portrait Animation
把 talking head 的运动先 token 化,再像语言模型一样逐块生成

论文信息

系列说明:本文属于 AI / 数字人系列论文精读。Teller 讨论的不是"离线生成一段好看的 talking head",而是更苛刻的交互式问题:语音流不断进来,数字人视频必须边听边动、低延迟输出。
第一章
引言:Talking Head 的实时之难

音频驱动的肖像动画(talking head)在虚拟数字人、视频会议和娱乐场景中有广泛应用。核心挑战有两层:第一,生成高质量肖像动画需要协调唇形运动、面部表情和头部姿态,计算量大;第二,现有高质量方法几乎全部依赖扩散模型,而扩散模型的多步去噪推理使得实时交互成为空谈 #Zhen-et-al.-2025

Teller 提出了一个新的解法:把面部运动先离散化为 motion token,再用自回归 Transformer 来预测 token 流——这样把"视频生成"重新表述为"语言模型式的 next-token prediction",从而大幅加速推理。论文还引入 Efficient Temporal Module(ETM)专门修复脖子、耳环等小部位的时序一致性,解决了现有快速方法忽略的第二个问题 #Zhen-et-al.-2025

Teller teaser framework and latency breakdown
图 1:Teller 的两阶段框架与延迟拆解。论文报告 200ms audio chunk 下 Whisper 编码 7ms、Stage 1 106ms、Stage 2 71ms,总推理时间低于 200ms(来源:Zhen et al., 2025, Fig.1)。
一句话概括:Teller 把人脸运动从连续隐式关键点空间压缩成离散 motion tokens,再用 AR Transformer 按音频块预测未来运动,最后用 ETM 补齐身体小部位的时序细节。
第二章
问题剖析:扩散模型的速度-质量困境

现有方法的核心矛盾

近年来,基于扩散模型的方法(如 HalloAniPortraitEchoMimic)在 talking head 质量上取得了显著进展,但推理速度成了无法绕开的瓶颈。以 Hallo 为例,生成 1 秒 25 fps 的视频需要 20.93 秒;Teller 把同样的任务压缩到 0.92 秒,加速比约为 22×。这不是工程优化的差距,而是算法路线的本质差距 #Zhen-et-al.-2025

另一个被忽视的问题是细节运动真实性。当现有快速方法(如早期的关键点驱动类方法)只聚焦于脸部时,脖子肌肉、耳环、项链这类受语音节奏驱动的细小运动往往显得僵硬或跳跃。Teller 的论文用可视化展示了这一问题:同一段音频,SadTalker 和 EchoMimic 的颈部和耳环运动明显不自然,而 Teller 通过 ETM 二阶段修复后的一致性更接近真实视频 #Zhen-et-al.-2025

Teller 的核心 Insight

解决方案的关键在于换一个表示空间:把连续的面部运动 latent 量化成有限码本的离散 token,问题就从"生成连续高维特征"变成了"预测离散序列"——而后者正是自回归语言模型擅长的事情。一旦完成这个转换,200ms 的音频块对应 32 个 motion token,AR Transformer 在极短时间内就能完成预测,完全满足流式输出的延迟要求。

Teller fine motion details visualization
图 2:细部运动真实性对比。Teller 的 ETM 修复了颈部肌肉和耳环的自然运动,明显优于其他方法(来源:Zhen et al., 2025, Fig.7)。
第三章
模型结构:从 Motion Latent 到 Token 流再到视频帧

前置知识:隐式关键点运动 Latent

Teller 站在 LivePortrait 等隐式关键点模型的肩膀上。这类模型将人脸运动表示为三个分量的拼接,共 \(25 \times 3\)#Zhen-et-al.-2025

$$m = [\delta_1, \delta_2, \dots, \delta_{21},\; r_1, r_2, r_3,\; t] \in \mathbb{R}^{25 \times 3}$$

其中 \(\delta_1\)\(\delta_{21}\) 是 21 个隐式关键点的表情形变向量(每个 \(\mathbb{R}^3\)),\(r_1, r_2, r_3\) 是三个头部旋转向量(头部姿态),\(t \in \mathbb{R}^3\) 是整体表情形变偏移。这 75 个实数构成一帧的完整面部运动描述子。

FMLG:RVQ 离散化运动 Token

FMLG(Facial Motion Latent Generation)的第一步是把连续的 motion latent 量化成离散 token。Teller 采用 Residual Vector Quantization(RVQ),将 \(T\) 帧的运动序列编码后与码本对齐。量化损失由两项构成 #Zhen-et-al.-2025

$$\mathcal{L}_{vq} = \sum_{t=1}^{T} \left[\underbrace{\|m - \mathrm{FFN}_{dec}(z_t + \mathrm{sg}[\hat{z}_t - z_t])\|_2^2}_{\mathcal{L}_{\text{recon}}} + \underbrace{\|z_t - \mathrm{sg}[\hat{z}_t]\|_2^2}_{\mathcal{L}_{\text{commit}}}\right]$$

其中 \(z_t = \mathrm{FFN}_{enc}(m)\) 是编码后的 latent,\(\hat{z}_t\) 是量化后的 latent,\(\mathrm{sg}\) 是 stop-gradient 操作。\(\mathcal{L}_{\text{recon}}\) 保证解码可以还原原始运动;\(\mathcal{L}_{\text{commit}}\) 则迫使编码结果稳定在码本附近,避免飘移 #Zhen-et-al.-2025

经过 RVQ 超参数实验(图 4),论文选择 4 帧压缩为 32 个 token 作为质量与速度的折中:4 帧的运动信息(\(4 \times 25 \times 3 = 300\) 个实数)被映射到 32 个离散 token 索引,随后插值到 5 帧输出,实现比真实帧率略快的生成节奏 #Zhen-et-al.-2025

Motion token

这里的 token 不是文本 token,而是被 RVQ 离散化的人脸运动片段。它把连续关键点运动变成有限码本索引,使音频到运动可以被写成 next-token prediction 问题。

AR Transformer:音频条件下的 Token 流预测

有了离散 token,Teller 把运动生成改写成条件自回归建模。给定音频条件 \(c\) 和过去的 motion tokens,预测下一个 token 的分布 \(P(t_i \mid c, t_{<i})\)。音频由 Whisper encoder 提取;为了满足实时流式,音频和视频都按 200ms 分块处理,每个音频块变成 \([10 \times 512]\) embedding,每个视频块对应 32 个 RVQ tokens #Zhen-et-al.-2025

为了加速 token 生成,Teller 不是一次预测一个 token,而是让输入由 token pair 构成,并用两个 LM head 预测一对输出 token。每个 head 的损失分别为 #Zhen-et-al.-2025

$$\mathcal{L}_{\text{head0}_j} = \mathrm{CE}(\mathrm{label}_j[0],\; \mathbf{T}(\mathrm{input}_j[0] \mid \mathrm{input}_{<j}))$$
$$\mathcal{L}_{\text{head1}_j} = \mathrm{CE}(\mathrm{label}_j[1],\; \mathbf{T}(\mathrm{input}_j[1] \mid \mathrm{input}_{<j}))$$

总体训练损失加入正则项以平衡两个 head 的学习速度 #Zhen-et-al.-2025

$$\mathcal{L}_{ar} = \sum_{j=1}^{I/2} \left[\mathcal{L}_{\text{head0}_j} + \mathcal{L}_{\text{head1}_j} + \|\mathcal{L}_{\text{head0}_j} - \mathcal{L}_{\text{head1}_j}\|_2^2\right]$$

正则项 \(\|\mathcal{L}_{\text{head0}} - \mathcal{L}_{\text{head1}}\|_2^2\) 确保两个 head 平衡训练,避免一个 head 显著弱于另一个。每个输入位置对应一个 token pair,embedding 是两个 token embedding 相加再叠加一个 BERT 风格的可学习位置偏置 #Zhen-et-al.-2025

Teller AR Transformer architecture
图 3:AR Transformer 架构。每个输入位置处理一对 token,两个 LM head 同时预测下一对,实现两倍吞吐(来源:Zhen et al., 2025, Fig.3)。

ETM:身体细节的单步时序修复

Stage 1 解决了"实时生成脸部运动"的主问题,但论文认为颈部肌肉、耳环等细节仍会显得僵硬。Teller 因此引入 Efficient Temporal Module:先用 VAE encoder 编码视频帧得到特征张量 \(x \in \mathbb{R}^{b \times t \times h \times w \times c}\),再 reshape 为 \((b \times h \times w) \times t \times c\) 送入 3D U-Net,让 self-attention 沿时间维 \(t\) 捕捉帧间依赖,最后通过 residual connection 合回空间特征 #Zhen-et-al.-2025

ETM 的重建损失定义在第 6–10 帧(前 5 帧为真实帧,后 5 帧为 Stage 1 重建帧)上 #Zhen-et-al.-2025

$$\mathcal{L}_{\text{recon}} = \sum_{i=6}^{10} \|x_{\mathrm{gt}_i} - f(x_i \mid x_{\mathrm{gt}_{<6}})\|_2^2$$

为了突出颈部、耳环等重点区域,ETM 还引入 region-specific mask 损失 #Zhen-et-al.-2025

$$\mathcal{L}_{\text{ETM}} = \sum_{i=6}^{10} \|x_{\mathrm{gt}_i} \odot \mathrm{mask}_i - f(x_i \mid x_{\mathrm{gt}_{<6}}) \odot \mathrm{mask}_i\|_2^2$$

mask 由 MediaPipe landmark 的 bounding box 定义(关键点索引 [93, 323, 152]),覆盖颈部和耳环所在区域;区域内为 1,区域外为 0 #Zhen-et-al.-2025。与扩散模型的时序层不同,ETM 只需单步前向,维持实时性的同时修复了细节一致性。

Teller overall framework
图 4:Teller 总体框架。Stage 1 生成离散 motion tokens 并由 AR Transformer 预测;Stage 2 使用 Efficient Temporal Module 对细小身体和饰品运动做时序细化(来源:Zhen et al., 2025, Fig.2)。
第四章
Training Pipeline:两阶段独立训练

Stage 1:FMLG 预训练 + SFT

Stage 1 的任务是学习 Facial Motion Latent Generation。训练数据为 AV Speech(过滤后 662 小时)和 VFHQ(过滤后 2 小时)用于预训练,另有 32 小时互联网 talking-head 视频用于 supervised fine-tuning(SFT);验证使用 HDTF(过滤后 0.83 小时)、RAVDESS(过滤后 0.55 小时)和 0.49 小时互联网数据 #Zhen-et-al.-2025

数据质量控制采用双重过滤:MediaPipe 人脸检测过滤掉面部运动幅度超过 50% 的片段,再用 Sync-C 和 Sync-D 分数过滤掉唇形同步质量差的样本 #Zhen-et-al.-2025

Stage 2:ETM 训练

ETM 使用真实序列的前 5 帧和 Stage 1 重建的后续帧配对训练,同时施加整体重建损失和 region-specific mask 损失(详见第三章公式)。整体训练在 8×8 A800 机器上完成 30 epochs #Zhen-et-al.-2025

配置项披露状态值 / 说明
训练数据已披露AV Speech 662h + VFHQ 2h(预训练);互联网 talking-head 32h(SFT)
训练硬件已披露8×8 NVIDIA A800(Stage 1 预训练 + SFT + Stage 2)
优化器已披露AdamW(Stage 1 预训练、SFT、Stage 2 均使用)
学习率已披露预训练 1e-4 → 1e-6(cosine);SFT 1e-5 → 1e-6(cosine);Stage 2 1e-4 → 1e-6(cosine)
Batch size已披露预训练 1024;SFT 512;Stage 2 1024
训练步数 / 轮数已披露预训练 40 epochs;SFT 10 epochs;Stage 2 30 epochs
训练时长未披露原文未给出
模型参数量部分披露Stage 1 AR Transformer 参照 Qwen1.5-4B 架构(随机初始化);总参数未明确
精度格式未披露原文未明确(未提及 FP16/BF16)
Checkpoint 策略未披露原文未给出选择标准
AR Transformer 初始化已披露参照 Qwen1.5-4B 架构,参数随机初始化(非迁移学习)
数据过滤策略已披露MediaPipe 过滤面部运动 >50%;Sync-C/D 过滤低唇形同步样本
训练配置披露表:Stage 1 AR Transformer 配置充分,训练时长和精度格式未披露。
第五章
Inference Pipeline:200ms Chunk 下的两阶段流式输出

Teller 的推理链路可以拆成四步。第一步,Whisper encoder 将当前 200ms 音频块编码为 \([10 \times 512]\) audio embedding(平均耗时 7ms)。第二步,AR Transformer 根据历史 motion tokens 和当前音频条件预测新的 RVQ motion tokens(Stage 1 平均 106ms,其中 AR Transformer 每 16 tokens 约 6ms,motion decoder 约 10ms)。第三步,motion decoder 把 tokens 还原为连续 motion latent,并驱动隐式关键点动画模型生成初步视频帧。第四步,ETM 对连续帧进行时序细化,修复脖子、耳环和细小身体运动(Stage 2 平均 71ms,VAE encoder/decoder 约 25ms,Temporal Module 约 21ms)#Zhen-et-al.-2025

flowchart TD
  A["200ms audio chunk"] --> B["Whisper encoder\n7ms → 10×512 embedding"]
  B --> C["AR Transformer\nStage 1: 106ms total"]
  D["previous motion tokens\n(历史状态)"] --> C
  C --> E["32 RVQ motion tokens"]
  E --> F["motion decoder\n~10ms"]
  F --> G["implicit-keypoint animation\nLivePortrait 驱动"]
  G --> H["Stage 1 frames\n(粗糙,细节不足)"]
  H --> I["ETM temporal refinement\nStage 2: 71ms total"]
  I --> J["streaming portrait video\n≤200ms 总延迟,可达 25 FPS"]
  

Streaming Inference Pipeline

流式场景的关键约束是:每个 chunk 的处理时间必须低于 chunk 自身的时长(200ms)。各阶段延迟分布如下:Whisper 7ms + Stage 1 106ms + Stage 2 71ms = 184ms,略低于 200ms 阈值,因此系统可以按 200ms 粒度持续输出,实现最高 25 FPS #Zhen-et-al.-2025

与扩散模型的本质区别在于:Teller 的 Stage 1 只做一次自回归预测(非迭代去噪),Stage 2 也只做一次前向传播(非多步 DDIM/DDPM)。这使得"单步生成"在算法上成为可能,而不只是工程加速 #Zhen-et-al.-2025

工程注意:25 FPS 与低于 200ms 的 chunk 延迟是在 4 NVIDIA H800 推理设置下报告的,消费级显卡、端侧设备或云端多租户场景都需要重新实测。
第六章
实验:速度领先,质量有取舍
配置项披露状态值 / 说明
评测数据集已披露HDTF(0.83h)、RAVDESS(0.55h)、互联网数据(0.49h,仅定性对比)
评测指标已披露FID↓(图像质量)、FVD↓(视频质量)、Sync-C↑(唇形同步内容)、Sync-D↓(唇形同步动态)
Baseline 方法已披露SadTalker、EchoMimic、AniPortrait、Hallo;同时与 Real video 参考值对比
推理硬件已披露4 NVIDIA H800
推理分辨率未披露原文未明确给出输出分辨率
推理环境未披露原文未给出 PyTorch 版本或 CUDA 版本
实验配置表。推理硬件为 4 NVIDIA H800,输出分辨率和推理框架版本均未披露。

HDTF 定量结果

HDTF 表格中,Teller 的 FVD 为 173.463(最优),低于 Hallo 的 174.191;Sync-C 为 7.696(最优),Sync-D 为 7.536(最优);FID 为 21.352,略差于 Hallo 的 20.639。最关键的速度对比:Teller 1 秒视频生成时间为 0.92s,Hallo 为 20.93s,加速比约 22× #Zhen-et-al.-2025

HDTFFID↓FVD↓Sync-C↑Sync-D↓Time(1s 视频)
SadTalker22.177233.6737.3267.84818.89s
EchoMimic23.049290.1906.6648.83931.10s
AniPortrait28.161235.0994.54710.65729.36s
Hallo20.639174.1917.4977.74120.93s
Teller(ours)21.352173.4637.6967.5360.92s
Real video8.0946.976

RAVDESS 定量结果

RAVDESS 表格中,Teller 报告 FID 20.352、FVD 429.288(最优)、Sync-C 4.496(最优)、Sync-D 7.936。它在 FVD 和 Sync-C 上领先,FID 略差于 Hallo 的 19.826,Sync-D 略差于 SadTalker 的 7.621 #Zhen-et-al.-2025。RAVDESS 包含 angry、disgust 等情绪,进一步验证了 Teller 在情绪表达场景的鲁棒性。

RAVDESSFID↓FVD↓Sync-C↑Sync-D↓
SadTalker32.343487.9244.3047.621
EchoMimic21.058668.6753.2929.096
AniPortrait30.696476.1972.32111.542
Hallo19.826537.4784.0628.552
Teller(ours)20.352429.2884.4967.936
Real video5.2237.069
表 1:HDTF 与 RAVDESS 定量结果。Teller 在速度和时序一致性上领先,FID 略低于 Hallo(来源:Zhen et al., 2025, Table 1-2)。

人工评测

人工评测由 30 位参与者(66.7% 年龄 24–30,33.3% 年龄 30–40;30% 男性,70% 女性;83.3% 有 AIGC 模型使用经验)对 100 段视频进行 5 点 Likert 评分,聚焦于唇形同步、身体运动真实性和时序一致性三个维度。Teller 在三个维度均排名最高,且得分方差较小,说明其生成质量具有一致性 #Zhen-et-al.-2025

Teller human evaluation results
图 5:人工评测结果。Teller 在唇形同步、身体运动真实性和时序一致性三个维度均排名最高(来源:Zhen et al., 2025, Fig.8)。

消融:Whisper vs funcodec,单头 vs 多头

音频条件编码器消融显示,Whisper(ASR 模型)的 Sync-C / Sync-D 为 7.696 / 7.536,而 funcodec(TTS 模型)为 4.286 / 10.373。差距显著,论文认为 ASR 模型捕捉语音细节的能力更适合精确唇形同步 #Zhen-et-al.-2025

单头与多头架构消融更微妙:single-head 的 FID 22.110、FVD 172.553、Sync-C 7.790、Sync-D 7.474;multi-head 为 FID 21.352、FVD 173.463、Sync-C 7.696、Sync-D 7.536。single-head 在同步指标上略优,但 multi-head 在 FID 上更好,且并行预测两个 token 提供了更强的实时生成潜力,论文最终选择多头方案 #Zhen-et-al.-2025

音频编码器Sync-C↑Sync-D↓
funcodec(TTS)4.28610.373
Whisper(ASR)7.6967.536
架构FID↓FVD↓Sync-C↑Sync-D↓
Single-Head22.110172.5537.7907.474
Multi-Head21.352173.4637.6967.536
表 2:音频编码器与单头/多头消融。Whisper 明显优于 funcodec;single-head 同步略好,multi-head 更利于实时生成(来源:Zhen et al., 2025, Table 3-4)。
Teller stage ablation
图 6:Stage ablation。Stage 2 的 ETM 主要修复脖子、耳环等小部位的时序运动一致性(来源:Zhen et al., 2025, Fig.10)。
Teller RVQ token frame tradeoff
图 7:RVQ token/frame tradeoff。论文选择 4 frames / 32 tokens 作为质量和速度折中(来源:Zhen et al., 2025, Fig.11)。
第七章
讨论与启发:运动 Token 化是否是通用路线?

竞品对比

方法核心路线速度(1s 视频)实时性细节运动
SadTalker3DMM + 关键点 ODE18.89s基础
AniPortrait音频 → 3D + 扩散29.36s中等
Hallo分层音频扩散20.93s
EchoMimic音频扩散31.10s中等
TellerRVQ token + AR Transformer + ETM0.92s✅ 25 FPS好(ETM 修复)
竞品对比:Teller 在速度上相比扩散模型有数量级优势,同时通过 ETM 保持了细节运动质量。

Teller 的启发

Teller 值得放进数字人系列,是因为它把 talking head 从"视频生成模型"重新表述为"音频条件下的运动 token 流生成"。这个改写很重要:一旦运动被离散化,系统就可以借鉴语言模型的自回归预测、chunk streaming、top-k sampling 和多头并行预测;视频生成不再每次都从像素或 latent diffusion 开始 #Zhen-et-al.-2025

论文还指出 AR Transformer 架构与现有统一多模态语言模型兼容,意味着未来可以把 motion token 直接插进大语言模型的 token 流中,实现"对话 + 生成数字人视频"的统一建模 #Zhen-et-al.-2025。这是扩散模型路线难以轻松实现的特性。

局限性

局限也很清楚。第一,CVF 页面和论文没有给出官方代码仓库,源码级实现仍需等待公开。第二,25 FPS 与低于 200ms 的 chunk 延迟是在 4×H800 推理设置下报告的,消费级显卡、端侧设备或云端多租户服务都需要重新实测。第三,ETM 虽然修复小部位运动,但依赖额外二阶段模型和 MediaPipe 区域 mask,工程链路比单纯的隐式关键点驱动更复杂。第四,RVQ 量化会引入信息损失,论文未讨论量化误差对极端表情(如大幅度恐惧、愤怒)的影响边界 #Zhen-et-al.-2025

复习速查

  • 核心路线:隐式关键点 motion latent → RVQ motion tokens → AR Transformer → ETM。
  • 实时关键:200ms chunk,Whisper 7ms + Stage 1 106ms + Stage 2 71ms,低于 chunk 时长。
  • 代表数字:Hallo 20.93s vs Teller 0.92s for one second video generation;最高 25 FPS。
  • 量化配置:4 帧(\(4 \times 25 \times 3\) latent)压缩为 32 个 RVQ token,再插值到 5 帧。
  • 主要风险:多卡 H800 环境、无公开源码、ETM 增加工程复杂度。
← Hallo 数字人系列总览 FLAP

参考来源

  1. Zhen, D., Yin, S., Qin, S., Yi, H., Zhang, Z., Liu, S., Qi, G., & Tao, M. (2025). Teller: Real-Time Streaming Audio-Driven Portrait Animation with Autoregressive Motion Generation. CVPR 2025, pp. 21075–21085. CVF HTML · PDF
  2. Guo, J. et al. (2024). LivePortrait: Efficient Portrait Animation with Stitching and Retargeting Control. arXiv:2407.03168. arXiv · 精读 →
  3. Xu, M. et al. (2024). Hallo: Hierarchical Audio-Driven Visual Synthesis for Portrait Image Animation. arXiv:2406.08801. arXiv · 精读 →
  4. Wei, H. et al. (2024). AniPortrait: Audio-Driven Synthesis of Photorealistic Portrait Animation. arXiv:2403.17694. arXiv
  5. Zhang, Z. et al. (2021). Flow-guided One-shot Talking Face Generation with a High-resolution Audio-visual Dataset. CVPR 2021. (HDTF dataset)
  6. Livingstone, S. R. & Russo, F. A. (2018). The Ryerson Audio-Visual Database of Emotional Speech and Song (RAVDESS). PLOS ONE. Zenodo