SphMind: Towards Robust, Training-Free VLM-based Spatial Reasoning with a 360 Camera
Organizations: IHPC, A*STAR, Singapore
Abstract
Omnidirectional or 360 cameras provide embodied AI agents with a holistic, wide field-of-view (FoV) view of their surroundings, motivating the use of Multi-modal Large Language Models (MLLMs) for omnidirectional spatial reasoning. However, most MLLMs are trained on conventional 2D perspective images and struggle with the severe distortions and wrap-around discontinuities induced by spherical geometry. Enabling them to generalize to non-Euclidean 3D spaces without retraining therefore remains challenging. We propose SphMind, a training-free, plug-and-play framework that decouples semantic perception from geometric reasoning. Rather than requiring MLLMs to learn spherical geometry internally, SphMind preserves their semantic capabilities while handling geometry externally. We introduce a Spherical Harmonics-based Spatial Graph (SHSG) that models spatial relationships through equivariant transformations on the sphere, together with Inference-Time Geometric Grounding (IGG), a model-agnostic closed-loop optimization process that aligns MLLM representations with spherical geometric constraints during inference. Experiments on three benchmarks show that SphMind achieves over 21.4% average improvement in directional reasoning on MP3D and Stanford2D-3D, outperforms prompt-engineering baselines by 8.7% on the real-world ODI-Bench, and improves rotational invariance by 5.9% under panorama rotations, without additional training or dataset-specific tuning. In-the-wild evaluations further show that SphMind resolves directional reasoning queries that baseline vision-language models fail to answer correctly.
Figures & tables
| Model | Type | Category | Matterport3D | Stanford2D | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Scene 1 | Scene 2 | Scene 3 | Scene 4 | Scene 5 | Scene 6 | Scene 1 | Scene 2 | Scene 3 | Scene 4 | |||
| Qwen2.5-7B | Baseline | Overall | 40 | 42.9 | 36.2 | 24.3 | 41.7 | 38.6 | 35.7 | 39.8 | 31.5 | 37.2 |
| Presence | 62.5 | 67.8 | 62.5 | 53.5 | 72.2 | 64.5 | 100 | 70.3 | 58.4 | 66.9 | ||
| Counting | 20 | 10 | 14.2 | 13 | 11.1 | 20 | 8.3 | 17.6 | 9.8 | 15.2 | ||
| Distance | 40 | 40 | 27 | 42.2 | 44.8 | 41.7 | 50 | 45.6 | 34.9 | 43.8 | ||
| Direction | 35.3 | 41.2 | 28.6 | 22.5 | 32.1 | 20.7 | 14.3 | 32.8 | 24.7 | 30.4 | ||
| Config | Ov. | Dir. | Dist. | |
| Full | 58.4 | 53.1 | 64.1 | — |
| Component removal | ||||
| No grad | 50.5 | 46.6 | 54.9 | |
| w/o | 49.8 | 45.6 | 54.0 | |
| SHSG only | 45.1 | 42.5 | 48.5 | |
| Rand | 37.7 | 34.0 | 43.3 | |
Appendix figures & tables13 assets
Supplementary material from the paper’s appendix.
Appendix
| Parameter | Value | Role |
|---|---|---|
| Weight of geometric violation term | ||
| Weight of prior-preservation term | ||
| Softmax temperature for ; raised to maintain gradients across all candidates | ||
| Base guidance scale | ||
| Max correction steps | ||
| Early stopping threshold on |
| Configuration | Distance Acc. | |
|---|---|---|
| Full ( ) | 64.1 | — |
| 63.2 | ||
| 63.7 | ||
| (elev. only) | 61.3 | |
| (density only) | 60.8 | |
| Linear decay vs exp. kernel | 63.9 |
| Method | Dir. | Full | Unk% | |||
|---|---|---|---|---|---|---|
| ERP-Pixel | front | 0.040 | 0.441 | 0.198 | 0.453 | 16.5 |
| left | 0.029 | 0.370 | 0.189 | 0.415 | 30.6 | |
| right | 0.044 | 0.448 | 0.218 | 0.451 | 26.1 | |
| behind | 0.058 | 0.490 | 0.244 | 0.483 | 55.1 | |
| All | 0.043 | 0.437 | 0.212 | 0.451 | 33.4 | |
| SphMind | front | 0.250 | 0.654 | 0.589 | 0.648 | 8.2 |
| Pair type | Direction GA | Distance GA | Overall GA |
|---|---|---|---|
| Matched (same query, rotated scene) | |||
| Unmatched (different query) | |||
| Gap ( ) |
| Parameter | Value | Role |
|---|---|---|
| Weight of geometric violation term in IGG energy; controls how strongly shapes the gradient | ||
| Weight of KL prior-preservation anchor; KL-dominant setting ensures geometry provides a structured correction rather than overriding the VLM distribution | ||
| Softmax temperature for ; raised above default to maintain non-negligible gradients across all candidates | ||
| Base Riemannian step size | ||
| Maximum Riemannian correction steps; early stopping via typically terminates at | ||
| Early stopping threshold on ; prevents unnecessary updates when energy has converged |
| / | Ov. | Dir. | Dist. | |
|---|---|---|---|---|
| 0.2/0.8 | 57.2 | 51.4 | 63.1 | |
| 0.3/0.7 | 58.4 | 53.1 | 64.1 | — |
| 0.4/0.6 | 57.9 | 52.3 | 63.7 | |
| 0.5/0.5 | 57.4 | 51.8 | 63.2 | |
| 0.6/0.4 | 56.6 | 50.7 | 62.4 |