EgoPC: Internalizing Plan-Perceive-Compose for Spatial Reasoning in Egocentric Video
Organizations: Arizona State University · Meta
Abstract
Answering complex spatial reasoning questions from egocentric video requires determining what evidence is needed, acquiring targeted observations, and combining them through multiple reasoning steps. Existing vision-language models (VLMs) struggle to perform this process reliably. Agentic systems address this challenge by querying external vision and geometry tools, but training their reasoning leaves these tools unchanged, so inaccurate observations can still lead to incorrect answers. We introduce EgoPC, a framework that internalizes a plan-perceive-compose process within a single VLM. To this end, we first train specialized Planner and Perception teachers using separate adapters (Dual-LoRA), then fine-tune the corresponding experts in a mixture-of-experts (MoE) student under their supervision. We subsequently train the student on trajectories generated by its current policy using a segment-level extension of multi-teacher on-policy distillation (MOPD), assigning different trajectory segments to different supervisors. The Planner teacher supervises which evidence-seeking questions to ask, when to stop gathering evidence, and how to compose the final answer. The Perception teacher supervises the video-grounded answers to those questions. At inference, the student executes this adaptive workflow end-to-end, without external spatial tools. Across three spatial reasoning benchmarks, EgoPC students built from Qwen3-VL-8B and SenseNova-SI-1.3-8B outperform their base models by an average of 9.2 and 7.5 percentage points, respectively. Across both backbones, EgoPC reduces inference FLOPs by 65.8-66.3% and achieves - speedups over their shared Dual-LoRA teacher.
Figures & tables
| # | Method | VSI-Bench | EgoProx | R3D-Bench | Avg. |
| Agentic Systems (w/ tools) | |||||
| 1 | SpatialClaw Gemma4-31B ( Cho et al., 2026 ) | 48.5 | 47.9 | 40.7 | 45.7 |
| 2 | Think3D Gemini 2.5 Pro ( Zhang et al., 2026b ) | 62.0 | 42.1 | 43.4 | 49.2 |
| 3 | S-Agent Qwen3-VL-8B ( Dai et al., 2026 ) | 56.3 | 30.2 | 33.9 | 40.1 |
| 4 | S-Agent Qwen3-VL-30B-A3B ( Dai et al., 2026 ) | 64.8 | 42.7 | 41.4 | 49.6 |
| 5 | S-Agent GPT-5.4 ( Dai et al., 2026 ) | 66.7 | 49.8 | 45.9 | 54.1 |
| Method | TFLOPs | Latency (s) | Generated tokens | Latency/token (ms) |
| Dual-LoRA SenseNova-SI | 165.7 | 9.4 | 353.1 | 26.6 |
| EgoP 2 C Qwen3-VL | 55.9 (-66.3%) | 7.3 (-22.3%) | 315.4 (-10.7%) | 23.1 (-13.2%) |
| EgoP 2 C SenseNova-SI | 56.6 (-65.8%) | 6.3 (-33.0%) | 276.8 (-21.6%) | 22.8 (-14.3%) |
| Method | VSI-Bench | EgoProx | R3D-Bench | Avg. |
| Dual-LoRA teachers | 67.6 | 49.0 | 44.8 | 53.8 |
| EgoP 2 C | 66.9 | 47.2 | 44.5 | 52.9 |
| EgoP 2 C additional SFT | 67.5 | 49.8 | 46.4 | 54.6 |
| Method | Training | VSI-Bench | EgoProx | R3D-Bench |
| Base | – | 64.8 | 34.2 | 37.1 |
| Joint LoRA | SFT | 62.1 | 37.9 | 37.7 |
| Perception-only LoRA | SFT | 65.4 | 39.0 | 39.2 |
| Planner-only LoRA | SFT | 61.8 | 43.9 | 41.0 |
| Dual-LoRA | SFT | 65.8 | 46.7 | 43.2 |
| Joint LoRA | SFT + GRPO | 62.6 | 36.3 | 37.3 |
| Configuration | VSI-Bench | EgoProx | R3D-Bench |
| Qwen3-VL-8B | 57.9 | 31.0 | 35.2 |
| Dense MOPD | 58.4 | 36.3 | 32.8 |
| Dense SFT MOPD | 59.8 | 38.6 | 35.1 |
| MoE MOPD | 60.4 | 40.4 | 39.6 |
| MoE role initialization | 60.8 | 42.7 | 41.0 |
| MoE role initialization offline distillation | 61.3 | 43.3 | 41.2 |
Appendix figures & tables16 assets
Supplementary material from the paper’s appendix.
Appendix
| SFT | GRPO | |||
| Source | Perception | Planner | Perception | Planner |
| ADT | 27,279 | 6,926 | 1,085 | 1,900 |
| Ego-Exo4D | 1,167 | 2,600 | 1,004 | 778 |
| VSI-590K | 5,502 | 3,777 | 535 | 896 |
| SPAR-7M | 1,863 | 1,792 | 536 | 298 |
| Ego4D | – | 2,722 | – | – |
| Type | Samples | Type | Samples |
| Bearing | 12,283 | Count | 1,330 |
| Distance | 11,339 | Other | 1,820 |
| Camera distance | 2,732 | Identity | 711 |
| Size | 2,609 | Egomotion bearing | 580 |
| Object location | 2,255 | Egomotion distance | 152 |
| Component | Parameter | Value |
| LoRA alpha (teachers / student residuals) | ||
| GRPO KL coefficient (Planner / Perception) | ||
| No-ground-truth reward scale | ||
| Necessity (necessary / redundant / default) | ||
| Teacher-reference downweight | ||
| Missing-weight fallback |
| Backbone | Benchmark | Gain | 95% CI |
| Qwen3-VL-8B | VSI-Bench | 4.2 | [+3.4, +5.0] |
| EgoProx | 14.9 | [+12.7, +17.1] | |
| R3D-Bench | 8.5 | [+7.2, +9.7] | |
| SenseNova-SI-1.3-8B | VSI-Bench | 2.1 | [+1.6, +2.6] |
| EgoProx | 13.0 | [+10.8, +15.3] | |
| R3D-Bench | 7.4 | [+6.3, +8.5] |
| Qwen3-VL-8B | SenseNova-SI-1.3-8B | ||||||
| Subtask | Base | EgoP 2 C | Base | EgoP 2 C | |||
| Object Relative Direction | 968 | 57.23 | 58.88 | 63.33 | 63.74 | ||
| Object Size Estimation | 953 | 84.66 | 85.04 | 84.93 | 85.05 | ||
| Object Absolute Distance | 834 | 42.49 | 49.65 | 45.97 | 50.36 | ||
| Object Relative Distance | 710 | 48.03 | 53.66 | 59.15 | 62.39 | ||
| Object Appearance Order | 618 | 69.42 | 70.23 | 74.60 | 74.92 | ||
| Qwen3-VL-8B | SenseNova-SI-1.3-8B | ||||||
| Subtask | Base | EgoP 2 C | Base | EgoP 2 C | |||
| Exploitation Relative | 693 | 34.63 | 46.75 | 34.92 | 49.64 | ||
| Exploitation Approx | 422 | 37.68 | 46.21 | 41.47 | 47.16 | ||
| Intention Approx | 386 | 32.64 | 42.23 | 41.45 | 49.48 | ||
| Intention Relative | 342 | 29.24 | 52.34 | 30.70 | 50.58 | ||
| Exploration Relative | 191 | 17.28 | 46.60 | 15.71 | 39.79 | ||
| Qwen3-VL-8B | SenseNova-SI-1.3-8B | ||||||
| Subtask | Base | EgoP 2 C | Base | EgoP 2 C | |||
| Total Walk Distance | 228 | 6.36 | 19.08 | 7.28 | 19.08 | ||
| Total Fly Distance | 228 | 9.56 | 27.28 | 10.04 | 24.82 | ||
| Global How Far | 228 | 27.19 | 39.69 | 33.25 | 44.04 | ||
| Global How Far From Me | 228 | 25.57 | 34.30 | 33.99 | 43.77 | ||
| Global How Long | 228 | 48.95 | 62.06 | 63.38 | 72.15 | ||
| VSI-Bench | EgoProx | R3D-Bench | ||||
| Method | Score | [95% CI] | Score | [95% CI] | Score | [95% CI] |
| Base | 64.8 | – | 34.2 | – | 37.1 | – |
| Direct-answer SFT | 65.4 | – | 39.8 | – | 39.3 | – |
| Direct-answer SFT + GRPO | 65.5 | – | 40.7 | – | 40.1 | – |
| Dual-LoRA teachers | 67.6 | [ , ] | 49.0 | [ , ] | 44.8 | [ , ] |
| EgoP 2 C | 66.9 | [ , ] | 47.2 | [ , ] | 44.5 | [ , ] |
| Method | TFLOPs | Latency (s) | Generated tokens | Latency/token (ms) |
| Subset matched to the Qwen3-VL student | ||||
| Dual-LoRA SenseNova-SI | 162.1 | 8.8 | 298.4 | 29.5 |
| EgoP 2 C Qwen3-VL | 51.0 | 5.8 | 248.5 | 23.3 |
| Subset matched to the SenseNova-SI student | ||||
| Dual-LoRA SenseNova-SI | 156.3 | 8.6 | 277.5 | 31.0 |
| EgoP 2 C SenseNova-SI | 49.7 | 4.9 | 219.0 | 22.4 |
Visual Spatial Reasoning
Visual spatial reasoning studies how AI systems infer geometry, object relations, viewpoints, and physical change from images and video.
See all 244 papers