Where Did the Light Come From? Diagnosing Cast-Shadow Reasoning in VLMs and Borrowing the Missing Shadow Prior from Image Generation Models
Organizations: DFKI, Germany · RPTU Kaiserslautern-Landau, Germany · Hosei University, Japan
Abstract
Shadows are observable consequences of latent physical causes, arising from the interaction between illumination, object geometry, and scene structure. A model that understands shadows should be able not only to read a shadow's direction, but also to infer where a shadow should fall when it is absent, and to judge whether a shadow is physically consistent with the scene. We introduce ShadowBench, built from real photographs, which poses these three questions to vision-language models (VLMs). From each scene, we build a correct-shadow, a shadow-removed, and a human-annotated wrong-direction state. Evaluating 19 open VLMs (2B to 78B) and frontier proprietary models, we find that VLMs read a visible shadow's direction well above chance and improve with scale, yet infer the absent direction only weakly and fall to chance at judging physical consistency even under a bias-free two-alternative test that removes the yes-bias of single-image naturalness questions. Only Gemini-3.1-pro exceeds chance on validity, and even then only modestly and far below humans. Chain-of-Thought (CoT) does not help. The missing ingredient is not reasoning but knowledge that image generation models (IGMs) already hold. Routing a VLM through an IGM lifts its inference well above its direct attempt and helps it flag the wrong-direction shadows it otherwise accepts. Cast-shadow direction is a single facet of illumination understanding, but the sharp gap it reveals between VLMs and IGMs suggests image-generation or reconstruction objectives as a route toward illumination-aware VLMs.
Figures & tables
| State | Source | Shadow | Phys. | Used in |
|---|---|---|---|---|
| composite | correct | correct | Task 1,3 | |
| composite | removed | wrong | Task 2,3 | |
| composite | mirrored | wrong | Task 3 |
| Reading (T1) | Infer (T2) | Validity (T3) | ||||
| Model | 2w | 3w | 5w | 3w | Y/N | 2AFC |
| B (2–4B) | ||||||
| Qwen2-VL-2B | 50.0 | 33.3 | 20.9 | 28.5 | 50.0 | 50.0 |
| Qwen3-VL-2B | 68.4 | 35.7 | 18.1 | 33.0 | 50.0 | 50.0 |
| Qwen2.5-VL-3B | 50.0 | 47.2 | 27.3 | 33.8 | 50.3 | 50.0 |
| Gemma-4-E4B | 69.7 | 61.8 | 33.7 | 34.4 | 49.7 | 50.0 |
| Direction 3-way | Validity Y/N | Validity 2AFC | ||||||
| Model | Read | Infer | top | bal | top | bal | top | both |
| Gemma-4-12B | 85.8 | 42.0 | R 75 | 50.0 | N 100 | 56.0 | B 52 | 29.2 |
| Gemma-4-26B | 86.6 | 43.8 | R 84 | 52.5 | N 90 | 51.9 | B 68 | 18.8 |
| Qwen3-VL-30B | 63.1 | 37.0 | L 81 | 51.4 | Y 94 | 52.5 | B 93 | 9.4 |
| Gemma-4-31B | 86.8 | 42.0 | R 87 | 51.3 | N 50 | 50.3 | B 98 | 2.2 |
| InternVL3-38B | 58.4 | 33.6 | R 98 | 51.6 | Y 76 | 51.4 | B 93 | 7.5 |
| Task | Chance | Base | ZS-CoT | Ctx-CoT |
|---|---|---|---|---|
| Reading 2-way | 50.0 | 66.5 | ||
| Reading 3-way | 33.3 | 50.1 | ||
| Reading 5-way | 20.0 | 33.9 | ||
| Inference 3-way | 33.3 | 35.6 | ||
| Validity Y/N | 50.0 | 50.6 | ||
| Validity 2AFC | 50.0 | 51.4 |
| Direction inference | Physical validity | |||||
| Model | Direct | Gen | Direct | Gen | ||
| B (2–4B) | ||||||
| Qwen2-VL-2B | 28.5 | 33.3 | 50.0 | 50.0 | ||
| Qwen3-VL-2B | 33.0 | 33.6 | 50.0 | 65.9 | ||
| Qwen2.5-VL-3B | 33.8 | 47.6 | 50.0 | 50.0 | ||
| Gemma-4-E4B | 34.4 | 52.1 | 50.0 | 69.7 | ||
| Model | |||
|---|---|---|---|
| Qwen2-VL-2B | 33.3 | 33.3 | |
| Qwen3-VL-2B | 33.3 | 35.7 | |
| Qwen2.5-VL-3B | 46.7 | 47.2 | |
| Gemma-4-E4B | 59.1 | 61.8 | |
| Qwen2-VL-7B | 73.2 | 71.6 | |
| Qwen2.5-VL-7B | 49.8 | 48.1 |
| Shadow length | |||
|---|---|---|---|
| Task | short | long | chance |
| Reading 2-way | 73.9 | 75.1 | 50.0 |
| Reading 3-way | 61.0 | 64.4 | 33.3 |
| Inference 3-way | 36.5 | 41.9 | 33.3 |
| Presence | Direction | ||
| Model | 2AFC | 2AFC | |
| Qwen2-VL-2B | 58.0 | 50.0 | |
| Qwen3-VL-2B | 51.9 | 50.0 | |
| Qwen2.5-VL-3B | 54.7 | 50.0 | |
| Gemma-4-E4B | 85.0 | 50.0 | |
| Qwen2-VL-7B | 84.6 | 51.3 |
| Direction 3-way | Validity Y/N | Validity 2AFC | |||||||
| Model | Read | Infer | rec L/D/R | top | bal | top | bal | top | both |
| Qwen2-VL-2B | 33.3 | 28.5 | 0/67/18 | D 73 | 50.0 | Y 100 | 50.0 | A 100 | 0.0 |
| Qwen3-VL-2B | 35.7 | 33.0 | 0/0/99 | R 100 | 50.0 | Y 100 | 50.0 | B 100 | 0.0 |
| Qwen2.5-VL-3B | 47.2 | 33.8 | 1/1/100 | R 100 | 50.3 | Y 100 | 50.0 | A 100 | 0.3 |
| Gemma-4-E4B | 61.8 | 34.4 | 0/5/98 | R 96 | 49.7 | Y 62 | 50.0 | B 100 | 0.0 |
| Qwen2-VL-7B | 71.6 | 41.7 | 9/59/57 | R 51 | 50.6 | Y 98 | 51.3 | A 84 | 9.4 |
| Inference 3-way | Validity Y/N | Validity 2AFC | |||||||
|---|---|---|---|---|---|---|---|---|---|
| Model | Base | ZS- | Ctx- | Base | ZS- | Ctx- | Base | ZS- | Ctx- |
| Qwen2-VL-2B | 28.5 | 50.0 | 50.0 | ||||||
| Qwen3-VL-2B | 33.0 | 50.0 | 50.0 | ||||||
| Qwen2.5-VL-3B | 33.8 | 50.3 | 50.0 | ||||||
| Gemma-4-E4B | 34.4 | 49.7 | 50.0 | ||||||
| Qwen2-VL-7B | 41.7 | 50.6 | 51.3 | ||||||
| Editor | Type | 3-way |
|---|---|---|
| FLUX.1-Kontext-dev | open | 79.7 |
| OmniGen2 | open | 61.0 |
| gpt-image-2 | prop. | 73.4 |
| Gemini-3-pro-image | prop. | 79.0 |
| Chance | 33.3 |
| Curation level | Pooled panel | Top-5 models |
| None (1,374 pairs) | 64.0 | 76.8 |
| Shadow mass (200) | 60.7 | 69.2 |
| clean compositing (112) | 57.1 | 62.4 |
| Editor-refined (1,374) | 56.3 | 63.8 |
| shadow mass (358) | 54.6 | 58.3 |
| artifact-free (98) | 52.3 | 55.1 |
| Reading 3-way | Inference 3-way | |||
|---|---|---|---|---|
| Model | fixed | shuffled | fixed | shuffled |
| Qwen2-VL-2B | 33.3 | 33.9 | 28.5 | 32.0 |
| Qwen3-VL-2B | 35.7 | 34.0 | 33.0 | 33.1 |
| Qwen2.5-VL-3B | 47.2 | 46.3 | 33.8 | 32.3 |
| Gemma-4-E4B | 61.8 | 59.1 | 34.4 | 35.4 |
| Qwen2-VL-7B | 71.6 | 68.4 | 41.7 | 36.4 |
| Random direction | GT comp. | IGM (FLUX) | ||
|---|---|---|---|---|
| Model | vs. GT | vs. injected | vs. GT | vs. GT |
| Gemma-4-E4B | 32.0 | 49.9 | 61.8 | 52.1 |
| Qwen2.5-VL-7B | 28.8 | 41.3 | 48.1 | 50.4 |
| Qwen3-VL-8B | 29.7 | 50.9 | 66.7 | 63.0 |
| Gemma-4-12B | 32.4 | 67.2 | 85.8 | 77.2 |
| Pixtral-12B | 30.7 | 38.4 | 45.6 | 51.3 |
| Edit set | Human 3-way acc. (%) |
|---|---|
| Synthesis (FLUX) | 85.9 |
| Repair (FLUX) | 83.2 |
VLM Reasoning
Vision-language model reasoning studies how multimodal systems use visual evidence and language to answer questions, plan, and explain.
See all 853 papers