Evaluates vision-language models' ability to count objects and reason about spatial relationships (depth, distance, relative position) in images. It probes segmentation capabilities, attention alignment, and robustness to linguistic variations (out-of-distribution shifts). Use when the user wants to benchmark on CLEVR_CoGenT_ValB, CVBench, Pixmo-Count, Static Spatial Reasoning (SAT), VSR, VC Bench, or asks about evaluating this task. Reports Accuracy.
Scanned 9/11/2026
Install to Claude Code
npx -y skills add qhjqhj00/research-skills-pool --skill spatial_reasoning_eval --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Spatial Reasoning Eval?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/qhjqhj00-spatial-reasoning-eval-research-skills-pool)More formats (shields.io, HTML) on the badges page.
---
name: spatial_reasoning_eval
description: Evaluates vision-language models' ability to count objects and reason about spatial relationships (depth, distance, relative position) in images. It probes segmentation capabilities, attention alignment, and robustness to linguistic variations (out-of-distribution shifts). Use when the user wants to benchmark on CLEVR_CoGenT_ValB, CVBench, Pixmo-Count, Static Spatial Reasoning (SAT), VSR, VC Bench, or asks about evaluating this task. Reports Accuracy.
metadata:
skill_kind: dataset_eval
source_arxiv: 2507.13362
bibtex_key: ji2025enhancing
confidence: high
---
# spatial_reasoning_eval
> Enhancing Spatial Reasoning in Vision-Language Models via Chain-of-Thought Prompting and Reinforcement Learning — Binbin Ji et al. (arXiv:2507.13362, 2025)
## What this evaluates
Evaluates vision-language models' ability to count objects and reason about spatial relationships (depth, distance, relative position) in images. It probes segmentation capabilities, attention alignment, and robustness to linguistic variations (out-of-distribution shifts).
## Datasets
- **CLEVR_CoGenT_ValB** — total ?; splits: val (-1)
- **CVBench** — total ?; splits: test (-1)
- **Pixmo-Count** — total ?; splits: test (-1)
- **Static Spatial Reasoning (SAT)** — total ?; splits: val (-1)
- **VSR** — total ?; splits: val (-1)
- **VC Bench** — total ?; splits: test (-1)
## Metrics
- `Accuracy` **(primary)** — range: percent
- The percentage of predictions that exactly match the ground truth count or answer.
- `Close-Call Percentage` — range: percent
- The percentage of incorrect predictions that are off by exactly one: |{i:|ŷ_i−y_i|=1 and ŷ_i≠y_i}| / |{i:ŷ_i≠y_i}| × 100%.
- `Pass@1 accuracy` — range: percent
- Accuracy computed over a single generation per query.
- `Pass@4 accuracy` — range: percent
- Accuracy computed as the average correctness over four independent generations per query.
## Input / output format
**Input**: RGB image and a natural language question (e.g., 'Which object is closer to the camera?' or 'How many red cubes are there?').
**Output**: A single predicted answer (e.g., object ID/name or count), or a structured Scene Graph followed by the answer when using Chain-of-Thought prompting.
## Scoring recipe
```python
def compute_metrics(predictions, ground_truths):
correct = sum(1 for p, g in zip(predictions, ground_truths) if p == g)
off_by_one = sum(1 for p, g in zip(predictions, ground_truths) if p != g and abs(p - g) == 1)
incorrect = sum(1 for p, g in zip(predictions, ground_truths) if p != g)
accuracy = (correct / len(predictions)) * 100
close_call_pct = (off_by_one / incorrect) * 100 if incorrect > 0 else 0.0
return accuracy, close_call_pct
```
## Common pitfalls
- Confusing Pass@1 (single generation accuracy) with Pass@4 (average accuracy over 4 samples), which show different trade-offs between SFT and GRPO.
- Overlooking the out-of-distribution (OOD) evaluation protocol, which requires rephrasing test queries from 'close to' to 'far from' to test semantic generalization rather than surface memorization.
- Assuming standard Chain-of-Thought improves performance; the paper finds naive CoT degrades spatial reasoning and requires a structured two-step Scene Graph prompt to avoid reward hacking.
## Evidence (verbatim from paper)
> To test this, we evaluate performance using two complementary metrics on our counting dataset: Accuracy: The percentage of predictions that exactly match the ground truth count. Close-Call Percentage: Defined as |{i:|ŷ_i−y_i|=1 and ŷ_i≠y_i}| / |{i:ŷ_i≠y_i}| × 100%, where ŷ_i is the model’s predicted count and y_i is the ground truth.
## Citation
```bibtex
@misc{ji2025enhancing,
title={Enhancing Spatial Reasoning in Vision-Language Models via Chain-of-Thought Prompting and Reinforcement Learning},
author={Binbin Ji et al.},
year={2025},
note={arXiv:2507.13362}
}
```
- arXiv: 2507.13362
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!