← Latest papers
💻 computer science

DiMo: Discrete Diffusion Modeling for Motion Generation and Understanding

DiMo introduces a unified discrete diffusion framework that extends masked modeling to bidirectional text-motion understanding and generation, enabling flexible quality-latency trade-offs and diverse motion tasks through iterative token refinement, residual vector quantization, and Group Relative Policy Optimization.

Original authors: Ning Zhang, Zhengyu Li, Kwong Weng Loh, Mingxi Xu, Qi Wang, Zhengyu Wen, Xiaoyu He, Wei Zhao, Kehong Gong, Mingyuan Zhang

Published 2026-02-09
📖 4 min read☕ Coffee break read

Original authors: Ning Zhang, Zhengyu Li, Kwong Weng Loh, Mingxi Xu, Qi Wang, Zhengyu Wen, Xiaoyu He, Wei Zhao, Kehong Gong, Mingyuan Zhang

Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine you have a giant, magical sketchbook. In the past, if you wanted to draw a person dancing based on a description, or write a story based on a dance video, you had to use two different sketchbooks, or one very rigid one that could only draw one stroke at a time, from left to right. If you made a mistake in the first stroke, the whole picture was doomed, and you couldn't easily go back and fix it without starting over.

DiMo is a new kind of "smart sketchbook" that changes the rules. It's a single system that can do two things at once:

  1. Read a description and draw the motion (Text-to-Motion).
  2. Watch a motion and write a description (Motion-to-Text).

Here is how it works, using some everyday analogies:

1. The "Blurry Photo" Game (How it Generates)

Most old methods work like a person writing a sentence one word at a time. Once they write a word, they can't change it. If they write "The dog ran," they can't easily go back and change "ran" to "jumped" without rewriting the whole sentence.

DiMo works differently. Imagine you have a photo of a dancer, but it's completely covered in static noise (like a blurry TV screen).

  • The Process: DiMo doesn't draw the dancer stroke-by-stroke. Instead, it looks at the whole blurry picture at once. It guesses what the dancer looks like, then makes a guess at what the next version should look like, and keeps refining the image over and over again.
  • The Magic: It can fix mistakes anywhere in the picture instantly. If the left arm looks weird, it can fix just the left arm without messing up the right leg. It does this by "denoising" the image in parallel steps, like sharpening a blurry photo until it's crystal clear.

2. The "Speed vs. Quality" Dial

Because DiMo refines the image in steps, you get to choose how fast you want the result.

  • Need it fast? You can stop the process early (say, after 5 steps). The dancer will look a bit rough, but you get the result instantly.
  • Need it perfect? You let it run for more steps (say, 30). The dancer will look incredibly realistic and smooth.
    It's like a camera with a "Speed vs. Quality" dial. You can slide it to get exactly what you need for the moment.

3. The "High-Definition" Translator (RVQ)

To make the dancer look real, DiMo uses a special tool called Residual Vector Quantization (RVQ).

  • The Analogy: Imagine trying to describe a complex painting using only 10 colors. It would look blocky and ugly. Now imagine you have a palette with 1,000 colors, but you use them in layers. First, you lay down the big shapes (the body), then you add the muscles, then the tiny details like hair strands.
  • The Result: DiMo breaks the motion down into these layers. This allows it to capture the "coarse" movements (like walking) and the "fine" details (like a finger twitch) separately, resulting in much smoother, more realistic animations.

4. The "Smart Coach" (GRPO)

Sometimes, even if the motion looks good, it might not match the story you told it (e.g., the text says "jump," but the character "walks").

  • The Analogy: DiMo has a built-in "coach" (called GRPO). After DiMo makes a move, the coach checks: "Does this match the text?" If not, the coach gives a gentle nudge to the system to try again. Over time, DiMo learns to listen to the coach better, ensuring the dance matches the story perfectly.

What Can It Actually Do?

According to the paper, this single system is a Swiss Army knife for motion and text:

  • Text to Motion: You type "A person is doing a backflip," and it generates the video.
  • Motion to Text: You upload a video of a dance, and it writes a caption like "The dancer spins and jumps."
  • Fixing Mistakes: If you have a video with a missing part (like a cut in the middle), DiMo can fill in the gap without needing new instructions.
  • Correcting Captions: If you have a video and a caption that doesn't quite match, DiMo can fix the caption to describe what's actually happening.

The Bottom Line

The paper claims that DiMo is better than previous methods because it doesn't get stuck making one mistake at the beginning. It can look at the whole picture, fix errors anywhere, and let you choose how fast or how high-quality you want the result. It has been tested on standard datasets (HumanML3D and KIT-ML) and shows it can create high-quality dances and write accurate descriptions, all within one unified framework.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →