Akapulu Labs logo Akapulu Labs Research

TalkSHOW

Generating Holistic 3D Human Motion from Speech

TalkSHOW — method overview

TalkSHOW generates natural and diverse 3D holistic human motions, including body poses, hand gestures, and facial expressions, directly from speech. It models face motion deterministically and body-hand motion stochastically to capture their different relationships to speech, enabling realistic synchronized animation.

  • speech-driven
  • gesture
  • co-speech
  • full-body
  • face-animation
  • audio-driven
  • 3d-avatar
  • autoregressive

Demos

These demos illustrate TalkSHOW's ability to generate realistic and diverse 3D holistic human motions—including body poses, hand gestures, and facial expressions—from speech. Key evaluation points are the natural coordination of face articulation with speech, the coherence of body and hand gestures, and the diversity of generated motion styles across different characters and languages without fine-tuning. Comparisons with prior methods highlight TalkSHOW's state-of-the-art performance in synchronous holistic motion synthesis.

Authors: Hongwei Yi, Hualin Liang, Yifei Liu, Qiong Cao, Yandong Wen, Timo Bolkart, Dacheng Tao, Michael J. Black

Categories: cs.CV, cs.GR

Comment: Project Webpage: https://talkshow.is.tue.mpg.de; CVPR2023

Published 2022-12-08 · Updated 2023-06-17

Abstract

This work addresses the problem of generating 3D holistic body motions from human speech. Given a speech recording, we synthesize sequences of 3D body poses, hand gestures, and facial expressions that are realistic and diverse. To achieve this, we first build a high-quality dataset of 3D holistic body meshes with synchronous speech. We then define a novel speech-to-motion generation framework in which the face, body, and hands are modeled separately. The separated modeling stems from the fact that face articulation strongly correlates with human speech, while body poses and hand gestures are less correlated. Specifically, we employ an autoencoder for face motions, and a compositional vector-quantized variational autoencoder (VQ-VAE) for the body and hand motions. The compositional VQ-VAE is key to generating diverse results. Additionally, we propose a cross-conditional autoregressive model that generates body poses and hand gestures, leading to coherent and realistic motions. Extensive experiments and user studies demonstrate that our proposed approach achieves state-of-the-art performance both qualitatively and quantitatively. Our novel dataset and code will be released for research purposes at https://talkshow.is.tue.mpg.de.


Introduction

This paper studies speech-to-motion generation at the level of a full expressive human figure: given only an audio recording, the system synthesizes a sequence of 3D body poses, hand gestures, and facial expressions. The central thesis is that these body parts should not be modeled identically: facial motion is tightly coupled to speech acoustics and phonemes, whereas body posture and hand gestures are more weakly correlated and therefore require a more stochastic, multimodal generator.

The paper makes two coupled contributions. First, it constructs a new in-the-wild audiovisual dataset of 3D holistic body meshes with synchronized speech. Second, it proposes a two-stage framework: a reconstruction pipeline called SHOW for building pseudo ground truth from videos, and a speech-to-motion model called TalkSHOW for generating holistic motion from audio. The authors position this as the first approach to generate connected 3D body, hand, and face motion from speech in a unified SMPL-X representation.

Paper figure 'teaser'
Paper figure 'teaser'

The design is motivated by a practical observation: a speaker’s lips need fine-grained audio-phoneme alignment, while body and hand motion should preserve realism, temporal coherence, and diversity without being forced into a deterministic mapping. The paper therefore separates the problem into a deterministic face generator and a generative body-and-hand model.

  • Dataset contribution: 26.9 hours of in-the-wild talking video from 4 speakers, reconstructed into temporally coherent SMPL-X whole-body pseudo ground truth at 30 fps with synchronized 22 kHz audio.
  • Reconstruction contribution: a stronger optimization-based pipeline for whole-body reconstruction from video, improving initialization, data terms, smoothness, and facial detail.
  • Generation contribution: a split architecture with a wav2vec-based face generator, compositional VQ-VAEs for body and hands, and a cross-conditional autoregressive prior for coherent multimodal gesture synthesis.

Dataset and reconstruction pipeline

The dataset is built from in-the-wild talk-show style videos and uses the same source pool as prior speech-to-gesture work for direct comparison. The authors manually filter out low-resolution videos, clips with occluded hands, and invalid links. After filtering, the dataset contains 26.9 hours of video from 4 speakers. Videos are split into short clips shorter than 10 seconds to support minibatch processing and temporal modeling.

The pseudo ground truth is represented in the SMPL-X parameterization, so the reconstruction preserves a connected 3D mesh for the face, hands, and body rather than disconnected keypoints. For each frame, the paper represents the holistic motion as a shared body shape $\beta$ over time, per-frame poses $\theta_t$, a camera pose, a translation, and facial expression parameters $\psi_t$. In the simplified motion decomposition used for generation, a facial motion is represented as $m_t^f = [\theta_t^{\text{jaw}}, \psi_t] \in \mathbb{R}^{103}$, the body motion as $m_t^b \in \mathbb{R}^{63}$, and the hand motion as $m_t^h \in \mathbb{R}^{90}$.

The paper’s reconstruction system, SHOW, adapts SMPLify-X to talking-person videos and improves it with a careful initialization and more informative losses. Initialization comes from three pretrained regression systems: PIXIE for body and camera, PyMAF-X for hand pose, and DECA for jaw pose and facial expression. This is important because SMPLify-X is sensitive to initialization and to noisy 2D detections.

Paper figure 'overview'
Paper figure 'overview'

The data term is expanded beyond the standard keypoint reprojection loss. The authors add: (1) a silhouette constraint using body masks from DeepLab V3, (2) a facial-shape term that aligns the SMPL-X face with MICA facial geometry, (3) a facial-landmark term using 105 MediaPipe landmarks, and (4) a photometric face-rendering loss to capture high-frequency facial detail. In addition, they use temporal regularizers for body and hand pose smoothness, a constant-velocity penalty on joints, and a collision penalty to reduce self-intersections.

The full objective can be summarized as

$$ E = \sum_{t=1}^{T} E_{\text{SMPLify-X}}(t) + \lambda_{FE}\mathcal{L}_{FE} + \lambda_{FS}\mathcal{L}_{FS} + \lambda_{FR}\mathcal{L}_{FR} + \lambda_{mb}\mathcal{M}_{b} + \lambda_{mh}\mathcal{M}_{h} + \lambda_{mj}\mathcal{M}_{j} + \lambda_{sil}\mathcal{L}_{sil} + \lambda_{pen}\mathcal{L}_{pen}, $$

where the additional terms capture facial landmark alignment, facial-shape alignment, rendered-face photometric error, body/hand smoothness, joint constant-velocity smoothness, silhouette consistency, and collision avoidance. Optimization uses limited-memory BFGS with strong Wolfe line search in a five-stage fitting procedure. The paper reports a batch size of 50 on a Tesla V100 for this reconstruction stage.

The reconstructed meshes are visibly more temporally stable and better aligned to the image than the alternatives the paper compares against. The authors note that the reconstruction still assumes a static camera and can struggle under heavy occlusion and extreme hand deformation.

Composed from two image with a 3-frame interval. The columns from left to right are: original video, our reconstruction result, visualization from [19], and SMPLX result obtained from inverse kinematics of [19]. It can be seen that [19] and its inverse kinematics results contain some obvious detection errors (such as the left hand of [19]), show significant jitter when observed over time dimension, and exhibit changes in body shape information such as bone length. In contrast, our results consider shape consistency and thus are more reasonable and smooth visually and qualitatively.
Composed from two image with a 3-frame interval. The columns from left to right are: original video, our reconstruction result, visualization from [19], and SMPLX result obtained from inverse kinematics of [19]. It can be seen that [19] and its inverse kinematics results contain some obvious detection errors (such as the left hand of [19]), show significant jitter when observed over time dimension, and exhibit changes in body shape information such as bone length. In contrast, our results consider shape consistency and thus are more reasonable and smooth visually and qualitatively.

Speech-to-motion architecture

TalkSHOW generates whole-body motion from audio by explicitly separating the modeling of face, body, and hands. The key modeling assumption is that the face should be tightly synchronized with speech acoustics, while body and hand gestures are multimodal and can vary substantially for the same utterance. That assumption leads to different representations and different learning objectives for the two parts of the body.

Paper figure 'architecture'
Paper figure 'architecture'

Preliminaries and motion representation

The input to the generation model is a speech sequence $A_{1:T}$ and a speaker identity $I$. The output is a sequence of expressive holistic motions $M^f_{1:T}$, $M^b_{1:T}$, and $M^h_{1:T}$. The motion is expressed in SMPL-X parameter space, but the model treats face, body, and hands separately in order to exploit their different relationships to speech.

For the body-and-hand generator, the audio is represented with 64-dimensional MFCC features, which the paper argues are sufficient because body gestures are driven more by rhythm and beat than by phoneme-level detail. For the face generator, the model uses a pretrained speech representation from wav2vec 2.0.

Face generator

The face branch is a deterministic encoder-decoder model. A wav2vec 2.0 frontend extracts speech features, a transformer encoder produces a 768-dimensional contextual representation, and a linear projection reduces this to 256 dimensions. The projected audio feature is concatenated with a one-hot speaker identity vector and passed to a temporal-convolutional decoder.

The decoder consists of six temporal convolutional layers followed by a fully connected layer. The architecture is intentionally simple, because facial motion is treated as the most directly audio-driven component. The face generator is trained with mean squared error loss on the facial motion sequence.

The paper reports that using wav2vec features improves face synthesis over MFCC features, with the appendix table showing smaller errors for the wav2vec-based model: Jaw L1 $0.0007$ vs. $0.0009$ and expression-landmark L1 $0.1358$ vs. $0.1679$.

Paper figure 'face-detail'
Paper figure 'face-detail'

Body and hand generator

Body and hand motion is treated as a stochastic generation problem. Instead of directly regressing future poses, the model first learns discrete motion spaces with two VQ-VAEs, one for body motion and one for hand motion. This compositional design increases the number of recoverable motion combinations to $|\mathcal{Z}^b| \times |\mathcal{Z}^h|$ and is the main mechanism behind the model’s diversity.

The motion sequence is downsampled into windows of size $w = 4$, so each latent token summarizes four consecutive poses. The body encoder produces embeddings $E^b_{1:\tau}$ and the hand encoder produces embeddings $E^h_{1:\tau}$, where $\tau = T/w$. Quantization maps each embedding to its nearest codebook entry:

$$ z_t^b = \arg\min_{z_k^b \in \mathcal{Z}^b} \lVert e_t^b - z_k^b \rVert, \qquad z_t^h = \arg\min_{z_k^h \in \mathcal{Z}^h} \lVert e_t^h - z_k^h \rVert. $$

Training uses the standard VQ-VAE objective: reconstruction loss plus a codebook loss and a commitment loss. The paper writes this as an MSE reconstruction term together with stop-gradient codebook updates and a commitment penalty weighted by $\beta$.

After discrete motion tokens are learned, the paper trains a cross-conditional autoregressive prior over the body and hand token streams. The factorization is

$$ p(C^b_{1:\tau}, C^h_{1:\tau} \mid A_{1:\tau}, I) = \prod_{t=1}^{\tau} p(c_t^b \mid c_{

This cross-conditioning is the main mechanism for body-hand coherence: the body predicts the hand, and the hand history is also part of the conditioning context. The autoregressive prior is implemented with a masked Gated PixelCNN and a teacher-forcing training scheme with cross-entropy loss. At inference time, the model samples code indices from multinomial distributions, looks up the corresponding codes, and decodes them into continuous body and hand motion.

The authors emphasize that this design is different from a deterministic encoder-decoder: it enables diverse outputs for the same speech input while preserving synchronization across body parts.

Training and implementation details

The paper provides separate training settings for the face generator, the VQ-VAEs, and the autoregressive model. The face generator is trained with SGD with momentum and learning rate $0.001$ for 100 epochs, using batch size 1 and full-length audio-motion pairs. The face encoder uses zero-mean, unit-variance normalized audio and interpolates extracted features to the target frame rate.

The body-and-hand VQ-VAEs are trained with Adam ($\beta_1 = 0.9$, $\beta_2 = 0.999$) and learning rate $10^{-4}$, with commitment weight $\beta = 0.25$, batch size 128, sequence length 88 frames, and 100 epochs. Their encoders use three residual stages with temporal convolutions, batch normalization, and Leaky ReLU activations. The autoregressive prior uses the same optimizer and batch size, a 15-layer Gated PixelCNN, and the same 88-frame training length for 100 epochs.

The paper also reports that the face and body branches use different audio features for a reason: wav2vec is better suited to lip synchronization, while MFCC is adequate for rhythm-driven gesture generation and converges more reliably for body motion.

Experiments

The paper evaluates motion generation on the dataset it constructed. Clips longer than 3 seconds are split into train/validation/test with an 80%/10%/10% split. The authors compare against the prior SOTA speech-to-motion method of Habibie et al. and against several baselines for the body-and-hand generation branch.

Evaluation metrics

  • L2: landmark distance for facial motion, including jaw and lip landmarks.
  • LVD: landmark velocity difference, used to assess temporal synchronization between speech and facial motion.
  • RS: a learned realism score for body and hand motions based on a binary real/fake classifier.
  • Variation: diversity measured from the variance across 16 generated motion samples for the same audio.
  • FGD: Frechet Gesture Distance, reported in the appendix for motion realism.
  • BC: beat consistency, used to measure alignment between generated body motion and the audio beat.

Main quantitative comparison

The main comparison shows that TalkSHOW improves both face accuracy and body/hand realism over Habibie et al. The strongest gains are in body/hand realism and diversity, consistent with the paper’s claim that discrete compositional latent codes and cross-conditional prediction are essential for multimodal gesture synthesis.

Method Face L2 ↓ Face LVD ↓ Body & Hands RS ↑ Variation ↑
Habibie et al. 0.139 0.257 0.146 0
TalkSHOW (ours) 0.130 0.248 0.414 0.821

On body and hand motion, the paper also compares against three generative baselines. The deterministic audio encoder-decoder achieves zero diversity, the Audio VAE improves diversity slightly, and the Audio+Motion VAE improves further. TalkSHOW’s VQ-VAE-based body/hand branch is the strongest overall in realism and diversity trade-off.

Method Realism RS ↑ Syncing SLVD ↓ Diversity Dist. ↑
Audio Encoder-Decoder0.21410.33210
Audio VAE0.18200.26961.7420
Audio+Motion VAE0.23970.28753.7560
VQ-VAE without body-hand conditioning0.40930.462811.0852
VQ-VAE with body-hand conditioning0.41370.34459.4585

The appendix adds more metrics and compares TalkSHOW with Habibie et al., Audio VAE, Audio+Motion VAE, and Audio2Gesture. Under these additional metrics, the cross-conditional model achieves the strongest overall trade-off: FGD is lowest at $74.88$, variation remains high at $0.821$, and beat consistency is $0.872$, close to the reported ground truth value of $0.868$.

Method FGD ↓ Variance ↑ BC ↑
Habibie et al.239.3200.948
Audio VAE121.010.0440.746
Audio+Motion VAE166.650.1760.822
Audio2Gesture203.990.2400.943
Ours without cross-conditioning147.810.9220.851
Ours with cross-conditioning74.880.8210.872

Qualitative results

The qualitative examples emphasize two main behaviors. First, the face branch produces lip motion consistent with phonemes such as /f/, /t/, /b/, and /æ/. Second, the body-and-hand generator produces multiple plausible gesture variants for the same speech, including different hand selections and different motion amplitudes. The paper highlights that the generated motions can reflect prosodic emphasis, such as the stressed word “But”.

Paper figure 'comparison'
Paper figure 'comparison'

The authors also report that the face generator generalizes to unseen languages and audio types, including French speech and songs, although the paper still frames the face branch as mainly a lip-synchronization model rather than a full emotion model.

Paper figure 'capacity'
Paper figure 'capacity'

Ablation studies

The paper’s ablations isolate three core design decisions: wav2vec features for the face generator, compositional VQ-VAEs for body and hands, and cross-conditional body-hand prediction.

Compositional codebooks. The capacity experiment shows that two separate codebooks for body and hands consistently outperform a single VQ-VAE with a larger codebook, indicating that the compositional latent space better captures the diversity of motion patterns. For example, at codebook size 1024 the single-codebook VQ-VAE has capacity distance $6.2518$, while the compositional VQ-VAEs reduce this to $5.0106$. The same pattern holds across all reported sizes.

Method Capacity Dist. ↓
VQ-VAE, |Z| = 10246.2518
VQ-VAE, |Z| = 20485.6415
VQ-VAE, |Z| = 40965.6232
VQ-VAE, |Z| = 81926.1790
VQ-VAE, |Z| = 163845.7019
VQ-VAEs, |ZH| = |ZB| = 10245.0106
VQ-VAEs, |ZH| = |ZB| = 20484.8137
VQ-VAEs, |ZH| = |ZB| = 40964.8556
VQ-VAEs, |ZH| = |ZB| = 81924.8599
VQ-VAEs, |ZH| = |ZB| = 163844.8353

Cross-conditional modeling. Removing body-hand conditioning slightly increases raw diversity but hurts realism and synchronization. The reported values are RS $0.4093$ vs. $0.4137$ and SLVD $0.4628$ vs. $0.3445$ for without vs. with cross-conditioning, respectively. In the extended metrics table, the same trend appears in FGD and beat consistency.

Motion diversity vs. realism. The paper’s ablations show that purely deterministic or weakly stochastic models produce motion that is either too rigid or not realistic enough. The VQ-VAE approach provides the most useful balance: it keeps the motion plausible while allowing multiple samples for the same audio input.

User studies

The authors complement the quantitative evaluation with two user studies using Google Forms. For reconstruction, 10 participants assess 40 randomly sampled videos. For generation, participants perform A/B comparisons over 40 sampled outputs per method.

Method Face match Body match Hands match Holistic match
PyMAF-X 0.323 0.500 0.438 0.193
SHOW (ours) 0.898 0.738 0.800 0.768

In generation A/B testing, participants prefer TalkSHOW over Habibie et al. with very high margins: $0.888$ for face, $0.910$ for body-and-hands, and $0.913$ for the holistic body. When compared to the p-GT, TalkSHOW is preferred less often than the real data, but still obtains substantially better scores than the prior method.

Comparison Face Body and hands Holistic body
Habibie et al. vs. p-GT0.1530.1410.169
TalkSHOW vs. p-GT0.4780.4640.458
TalkSHOW vs. Habibie et al.0.8880.9100.913
Paper figure 'perceptual_question'
Paper figure 'perceptual_question'

Applications

Because TalkSHOW outputs a temporally coherent SMPL-X mesh sequence, it can feed downstream neural renderers. The paper demonstrates this with SMPLpix, where the generated mesh vertices and vertex colors are projected onto the image plane and rendered into photo-realistic human avatars. This example is important because it shows that the motion generator is not limited to abstract pose prediction: it can act as a front-end for controllable talking-head or talking-avatar synthesis.

Paper figure 'smplpix_merge1'
Paper figure 'smplpix_merge1'

Limitations, risks, and conclusion

The paper is explicit about several limitations. On the reconstruction side, the pipeline remains sensitive to severe hand deformation and heavy occlusion, and it currently assumes a static camera. On the generation side, the face branch focuses mainly on speech-linked mouth motion and does not fully model complex emotion-driven facial behavior. The authors also note that the precise correspondence between words and gestures remains open.

There is also a stated misuse risk: because the system can generate realistic 3D talking humans from audio, it could be used to fabricate convincing motion for speech that never occurred. The paper therefore frames the work as a research tool that should be used responsibly.

In summary, the paper’s main technical lesson is that hierarchical modeling matters: use a high-quality whole-body dataset, reconstruct connected SMPL-X pseudo ground truth carefully, model face and body with different inductive biases, and use discrete compositional latent spaces plus cross-conditioning to obtain diversity without sacrificing coherence. The experiments and user studies consistently support that design choice.