Physics-Grounded Shadow Generation from Monocular 3D Geometry Priors and Approximate Light Direction

Shilin Hu, Jingyi Xu, Akshat Dave, Dimitris Samaras, Hieu Le
12/5/2025
cs.CV

No official code found. Best implementation: cvlab-stonybrook/ShadowGeneration (2 stars, MIT, last commit 2026-03-20).

Abstract

Shadow generation aims to produce photorealistic shadows that are visually consistent with object geometry and scene illumination. In the physics of shadow formation, the occluder blocks some light rays casting from the light source that would otherwise arrive at the surface, creating a shadow that follows the silhouette of the occluder. However, such explicit physical modeling has rarely been used in deep-learning-based shadow generation. In this paper, we propose a novel framework that embeds explicit physical modeling - geometry and illumination - into deep-learning-based shadow generation. First, given a monocular RGB image, we obtain approximate 3D geometry in the form of dense point maps and predict a single dominant light direction. These signals allow us to recover fairly accurate shadow location and shape based on the physics of shadow formation. We then integrate this physics-based initial estimate into a diffusion framework that refines the shadow into a realistic, high-fidelity appearance while ensuring consistency with scene geometry and illumination. Trained on DESOBAV2, our model produces shadows that are both visually realistic and physically coherent, outperforming existing approaches, especially in scenes with complex geometry or ambiguous lighting.

View on arXivView PDF

Code Implementations(1)

MIT

Physics-Grounded Shadow Generation from Monocular 3D Geometry Priors and Approximate Light Direction

20Jan 22, 20267 months agoMIT

Similar Papers

Cite this paper

@article{hu2025physicsgrounded,
  title  = {Physics-Grounded Shadow Generation from Monocular 3D Geometry Priors and Approximate Light Direction},
  author = {Shilin Hu and Jingyi Xu and Akshat Dave and Dimitris Samaras and Hieu Le},
  year   = {2025},
  eprint = {2512.06174},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2512.06174v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2512.06174.svg)](https://codeofpaper.com/paper/2512.06174)

Discussion