DeepGesture: A conversational gesture synthesis system based on emotions and semantics

Thanh Hoang-Minh
7/3/2025
cs.HCcs.CLcs.LG

No official code found. Best implementation: DeepGesture/DeepGesture-Unity (1 star, last commit 2024-12-19).

Abstract

Along with the explosion of large language models, improvements in speech synthesis, advancements in hardware, and the evolution of computer graphics, the current bottleneck in creating digital humans lies in generating character movements that correspond naturally to text or speech inputs. In this work, we present DeepGesture, a diffusion-based gesture synthesis framework for generating expressive co-speech gestures conditioned on multimodal signals - text, speech, emotion, and seed motion. Built upon the DiffuseStyleGesture model, DeepGesture introduces novel architectural enhancements that improve semantic alignment and emotional expressiveness in generated gestures. Specifically, we integrate fast text transcriptions as semantic conditioning and implement emotion-guided classifier-free diffusion to support controllable gesture generation across affective states. To visualize results, we implement a full rendering pipeline in Unity based on BVH output from the model. Evaluation on the ZeroEGGS dataset shows that DeepGesture produces gestures with improved human-likeness and contextual appropriateness. Our system supports interpolation between emotional states and demonstrates generalization to out-of-distribution speech, including synthetic voices - marking a step forward toward fully multimodal, emotionally aware digital humans. Project page: https://deepgesture.github.io

View on arXivView PDF

Code Implementations(1)

DeepGesture Unity

10C#, HLSLSep 1, 20241 years ago
deepgesturegesturegesture-generationunity

Similar Papers

Cite this paper

@article{hoangminh2025deepgesture,
  title  = {DeepGesture: A conversational gesture synthesis system based on emotions and semantics},
  author = {Thanh Hoang-Minh},
  year   = {2025},
  eprint = {2507.03147},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2507.03147v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2507.03147.svg)](https://codeofpaper.com/paper/2507.03147)

Discussion