Controllable Text-to-Motion Generation via Modular Body-Part Phase Control
Organizations: Fudan University · Shanghai Jiao Tong University · HKUST · Shanghai AI Laboratory · The University of Hong Kong
Abstract
Text-to-motion (T2M) generation is becoming a practical tool for animation and interactive avatars. However, modifying specific body parts while maintaining overall motion coherence remains challenging. Existing methods typically rely on cumbersome, high-dimensional joint constraints (e.g., trajectories), which hinder user-friendly, iterative refinement. To address this, we propose Modular Body-Part Phase Control, a plug-and-play framework enabling structured, localized editing via a compact, scalar-based phase interface. By modeling body-part latent motion channels as sinusoidal phase signals characterized by amplitude, frequency, phase shift, and offset, we extract interpretable codes that capture part-specific dynamics. A modular Phase ControlNet branch then injects this signal via residual feature modulation, seamlessly decoupling control from the generative backbone. Experiments on both diffusion- and flow-based models demonstrate that our approach provides predictable and fine-grained control over motion magnitude, speed, and timing. It preserves global motion coherence and offers a practical paradigm for controllable T2M generation. Project page: https://jixiii.github.io/bp-phase-project-page/
Figures & tables
| Methods | AITS | R-Precision | FID | MM Dist | Diversity | ||
|---|---|---|---|---|---|---|---|
| Top 1 | Top 2 | Top 3 | |||||
| Real | – | 0.511\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | 0.703\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | 0.797\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.002\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.000} | 2.974\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.008} | 9.503\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.065} |
| Seq2Seq [ 21 ] | – | 0.180\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.300\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.396\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 11.75\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.035} | 5.529\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.007} | 6.223\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.061} |
| JL2P [ 1 ] | – | 0.246\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.387\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.486\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 11.02\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.046} | 5.296\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.008} | 7.676\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.058} |
| T2G [ 5 ] | – | 0.165\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.001} | 0.267\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.345\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 7.664\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.030} | 6.030\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.008} | 6.409\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.071} |
| Hier [ 9 ] | – | 0.301\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.425\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.552\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.004} | 6.532\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.024} | 5.012\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.018} | 8.332\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.042} |
| Methods | R-Precision | FID | MM Dist | Diversity | ||
|---|---|---|---|---|---|---|
| Top 1 | Top 2 | Top 3 | ||||
| Real | 0.511\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | 0.703\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | 0.797\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.002\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.000} | 2.974\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.008} | 9.503\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.065} |
| Base (no scaling) | 0.503\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.701\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.796\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.004} | 0.465\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.022} | 3.000\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.013} | 9.496\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.078} |
| A-global | 0.507\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.006} | 0.705\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.004} | 0.799\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.305\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.014} | 2.971\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.018} | 9.489\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.077} |
| A-LL | 0.504\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.699\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.006} | 0.796\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.428\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.022} | 3.005\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.015} | 9.514\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.079} |
| A-RU | 0.503\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.006} | 0.701\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.795\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.390\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.019} | 2.982\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.016} | 9.470\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.082} |
| Methods | R-Precision | FID | MM Dist | Diversity | ||
|---|---|---|---|---|---|---|
| Top 1 | Top 2 | Top 3 | ||||
| Real | 0.511\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | 0.703\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | 0.797\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | 0.002\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.000} | 2.974\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.008} | 9.503\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.065} |
| Flow (Phase Cond.) | 0.524\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | 0.718\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | \mathbf{0.815}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.002} | \mathbf{0.100}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.003} | 2.886\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.008} | \mathbf{9.337}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.089} |
| Ours (Flow) | \mathbf{0.531}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.006} | \mathbf{0.719}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.004} | 0.808\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.146\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.007} | \mathbf{2.880}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.018} | 9.318\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.055} |
| Ours (MotionLCM, Whole) | 0.467\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.006} | 0.653\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 0.752\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | 1.287\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.033} | 3.310\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.021} | 9.103\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.084} |
| Ours (MotionLCM) | \mathbf{0.503}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | \mathbf{0.701}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.005} | \mathbf{0.796}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.004} | \mathbf{0.465}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.022} | \mathbf{3.000}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.013} | \mathbf{9.496}\raisebox{2.15277pt}{\scriptsize\scriptscriptstyle\pm!.078} |