TL;DR. Trace4D teaches a VLM to first write down where things are at each annotated frame, as a 4D state sequence of 2D boxes and 3D centroids, and then reason over how those states change, checking each change against what is visible in the video before answering.
Trace4D predicts where the boxer and the referee are at five annotated frames. Its reasoning puts their centroid distance at about 0.27 at frame 0, 0.11 at frame 8, and 0.17 at frame 31. It matches this to the visible approach and the later separation and answers B: closer together, then farther apart. Qwen3-VL and MLLM-4D both answer wrong.
| Frame | Boxer (x, y, z) | Referee (x, y, z) |
|---|---|---|
| 0 | (−0.05, −0.01, 1.00) | (−0.16, 0.01, 0.75) |
| 8 | (−0.01, 0.04, 0.92) | (−0.04, 0.02, 0.82) |
| 16 | (−0.05, 0.02, 0.89) | (0.01, 0.02, 0.80) |
| 23 | (−0.11, 0.02, 0.86) | (0.03, 0.03, 0.79) |
| 31 | (−0.16, 0.04, 0.82) | (0.01, 0.02, 0.79) |
Predicted 3D centroids in the camera frame at each timestep (x right, y down, z forward). Boxes in the video are the predicted bbox_2d, interpolated between annotated frames.
Abstract
Understanding how objects and their spatial relationships evolve over time remains challenging for vision-language models (VLMs), particularly under changing viewpoints. Recent approaches incorporate explicit 4D information into model responses, but how this information supports the final answer can remain implicit. We present Trace4D, a framework that trains VLMs to use predicted 4D state changes and temporal visual observations as joint evidence for video reasoning. Its 4D-grounded chain-of-thought (CoT) consists of a structured 4D state sequence, temporal visual analysis, and 4D-grounded reasoning that connects state changes to observations of the same targets over matching intervals and explains how they support the answer. From in-the-wild videos, we construct Trace4D-Train with 600K 4D perception examples and approximately 70K grounded question–answer (QA) examples with 4D-grounded CoT supervision. Joint supervised fine-tuning learns state prediction and grounded reasoning together, followed by geometry-aware GRPO that refines responses using answer correctness and reference 4D state agreement. At inference, Trace4D predicts its own 4D states and reasoning from video, without reference annotations or an external geometric model. Experiments on our held-out Trace4D-Bench and the external VLM4D benchmark show improved QA accuracy over the base VLMs and demonstrate the benefit of combining 4D state changes with temporal visual evidence.
Trace4D on held-out clips
Each clip is shown with its question, Trace4D's answer, and the predicted 4D values the reasoning cites. All Trace4D-Bench clips come from source videos excluded from training.
A response that shows its geometry
Every Trace4D answer is generated as y = [s; o; r; a]: the model writes its own 4D state sequence, describes what it sees phase by phase, links the two, and only then answers. The predicted states stay in context, so later reasoning can cite exact positions and their changes.
Structured 4D state sequence
For each annotated frame, every queried entity gets a label, a normalized 2D box, and a 3D centroid. The camera appears as cam when the question needs it.
Temporal visual analysis
Question-relevant observations across temporal phases: actions, interactions, and occlusions that geometry alone does not capture.
4D-grounded reasoning
Each visual observation is tied to the matching state change for the same target, interval, and coordinate frame, then used to justify the option.
Q. Following the camera, how does the distance between the boxer with initial bounding box [281,127,504,888] and the referee change?
- A. They stay about the same distance apart, then move closer together.
- B. They move closer together, then move farther apart.
- C. They move farther apart, then stay about the same distance apart.
- D. They move farther apart, then move closer together.
[{"frame": 0, "entities": [
{"label": "boxer", "bbox_2d": [281, 128, 505, 889], "centroid": [-0.05, -0.009, 1.0]},
{"label": "referee", "bbox_2d": [0, 128, 208, 997], "centroid": [-0.161, 0.011, 0.751]}]},
…
{"frame": 8, "entities": [
{"label": "boxer", "bbox_2d": [423, 200, 517, 997], "centroid": [-0.013, 0.036, 0.917]},
{"label": "referee", "bbox_2d": [309, 175, 473, 997], "centroid": [-0.041, 0.018, 0.819]}]},
{"frame": 16, "entities": [
{"label": "boxer", "bbox_2d": [302, 183, 447, 997], "centroid": [-0.047, 0.024, 0.887]},
{"label": "referee", "bbox_2d": [375, 178, 595, 997], "centroid": [0.005, 0.022, 0.801]}]},
{"frame": 23, "entities": [
{"label": "boxer", "bbox_2d": [83, 189, 325, 997], "centroid": [-0.108, 0.019, 0.856]},
{"label": "referee", "bbox_2d": [525, 172, 658, 997], "centroid": [0.032, 0.025, 0.787]}]},
{"frame": 31, "entities": [
{"label": "boxer", "bbox_2d": [0, 469, 158, 997], "centroid": [-0.161, 0.043, 0.819]},
{"label": "referee", "bbox_2d": [408, 161, 603, 997], "centroid": [0.008, 0.021, 0.791]}]}]At first, the boxer and referee are close together near the left side of the ring, with the referee reaching toward the boxer and their silhouettes partly overlapping. As they walk leftward, the referee remains immediately beside the boxer, so the visible gap stays small and changes only slightly through the middle of the clip. In the later phase, the boxer continues toward the left edge while the referee stays nearer the center, producing a clear increase in their separation. They never make contact again, and the referee’s arm remains extended toward the boxer without occluding the growing gap; the camera follows the action, but the ring ropes and corner post still show their increasing separation.
During the initial close phase, the visible overlap and small gap correspond to a centroid distance of about 0.27 at frame 0, which falls to about 0.11 at frame 8. During the middle phase, they remain visibly adjacent while walking, and the 4D distance stays near 0.11 at frame 16 and 0.15 at frame 23, indicating only modest fluctuation rather than a sustained change. In the final phase, the boxer visibly pulls away toward the left while the referee remains behind, and the centroid distance rises to about 0.17 at frame 31. Thus, the closest available description is that they first move closer together and then move farther apart.
<answer>B</answer>
Two-stage training
Stage 1: Joint SFT. Starting from the base VLM, we train in one mix on 600K perception examples, whose target is the <4d> block alone, and about 70K grounded QA examples, whose target is the full response.
Stage 2: Geometry-aware GRPO. On about 7K QA examples, the policy is rewarded for the correct answer and for predicted states that agree with the reference: position error per timestep (Rpos), the displacement vector between consecutive timesteps (RΔ), and box IoU (Rbbox). Reference states are used only to compute rewards. At inference the model sees just the video and the question, with no external geometric model.
Trace4D-Train and Trace4D-Bench
Source videos come from Koala-36M, selected for observable scene or object dynamics. Grounding DINO and SAM 2 track the entities, and Pi3 lifts them to 3D point maps and camera poses. Object centroids are the mean of reconstructed points inside each mask. After box-size checks and a multimodal verifier, the retained tracks become reference 4D states.
Questions come in two coordinate conventions. Relative questions use the camera frame at each timestep. Absolute questions use a fixed anchor-camera frame, so motion can be compared over time. The held-out Trace4D-Bench has 1,200 questions, 100 for each of 12 types. Splits are made at the source-video level, so no benchmark source is used in SFT, GRPO, or any ablation.
Trace4D-Bench and VLM4D
Multiple-choice accuracy (%). Open-source models decoded greedily.
Trace4D-Bench, per question type
Trace4D improves on its Qwen3-VL-4B-Instruct base model by 40.33 points and beats every evaluated baseline on all 12 question types.
| Model | Relative | Absolute | Overall | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Spd | Spd Comp | DistCam | DistObj | DirCam | DirObj | Avg. | Spd | Spd Comp | DistCam | DirCam | DirObj | Motion | Avg. | ||
Show all baselines
VLM4D
On VLM4D's real and synthetic videos, Trace4D ranks first among non-proprietary models, 8.92 points above its Qwen3-VL-4B-Instruct base model. Most of the gain comes from the synthetic split.
| Model | Syn. | Real | Avg. |
|---|---|---|---|
| Proprietary | |||
| GPT-4o | 54.38 | 56.02 | 55.62 |
| GPT-5 | 62.70 | 74.69 | 71.75 |
| Open source | |||
| Qwen3-VL-4B-Instruct | 48.76 | 57.55 | 55.40 |
| Qwen3-VL-8B-Instruct | 55.73 | 60.25 | 59.14 |
| VG-LLM-8B | 34.83 | 48.87 | 45.43 |
| VLM-3R-7B | 35.28 | 52.88 | 48.57 |
| MLLM-4D-8B | 55.05 | 63.09 | 61.12 |
| GSM-7B | 50.11 | 47.56 | 48.18 |
| 4DThinker-3B | 24.72 | 38.95 | 35.46 |
| Trace4D (Qwen3-VL-4B-Instruct) | 77.30 | 60.10 | 64.32 |
Bold and underline mark the best and second-best non-proprietary scores.
Predicted states
We evaluated the final 4B model's own <4d> output on all 1,200 benchmark questions. Errors are larger in the Absolute setting, where objects must be placed in one fixed scene frame.
| Setting | IoU ↑ | Centroid err. ↓ | Traj. L2 ↓ |
|---|---|---|---|
| Relative | 0.7556 | 0.0994 | 0.0852 |
| Absolute | 0.7176 | 0.2654 | 0.1428 |
Better states go with better answers. Grouping responses into thirds by trajectory error:
| QA acc. (%) | Low L2 | Mid L2 | High L2 |
|---|---|---|---|
| Relative | 89.90 | 81.37 | 71.72 |
| Absolute | 91.92 | 75.00 | 65.66 |
Citation
@article{trace4d2026,
title = {Trace4D: Grounded Spatiotemporal Reasoning via 4D State Sequences},
author = {Jang, Wooseok and Kim, Seungryong and Lu, Yan and Ji, Lei},
journal = {arXiv preprint},
year = {2026}
}