Learning Physics From Video: Unsupervised Physical Parameter Estimation for Continuous Dynamical Systems

Alejandro Castañeda Garcia, J. V. Gemert, Daan Brinks, Nergis Tömen
2/9/2026

No official code found. Best implementation: Alejandro-neuro/Learning_physics_from_video (22 stars, last commit 2025-09-01).

Abstract

Extracting physical dynamical system parameters from recorded observations is key in natural science. Current methods for automatic parameter estimation from video train supervised deep networks on large datasets. Such datasets require labels, which are difficult to acquire. While some unsupervised techniques–which depend on frame prediction–exist, they suffer from long training times, initialization in-stabilities, only consider motion-based dynamical systems, and are evaluated mainly on synthetic data. In this work, we propose an unsupervised method to estimate the physical parameters of known, continuous governing equations from single videos suitable for different dynamical systems beyond motion and robust to initialization. Moreover, we remove the need for frame prediction by implementing a KL-divergence-based loss function in the latent space, which avoids convergence to trivial solutions and reduces model size and compute. We first evaluate our model on synthetic data, as commonly done. After which, we take the field closer to reality by recording Delfys75: our own real-world dataset of 75 videos for five different types of dynamical systems to evaluate our method and others. Our method compares favorably to others. Code and data are available online: https://github.com/Alejandro-neuro/Learning_physics_from_video.

View on arXivView PDF

Code Implementations(1)

222Shell, PythonNov 21, 20241 years ago

Similar Papers

Cite this paper

@article{garcia2026learning,
  title  = {Learning Physics From Video: Unsupervised Physical Parameter Estimation for Continuous Dynamical Systems},
  author = {Alejandro Castañeda Garcia and J. V. Gemert and Daan Brinks and Nergis Tömen},
  year   = {2026},
  eprint = {2410.01376},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/2410.01376},
  journal = {CVPR 2024 2024}
}

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/2410.01376.svg)](https://codeofpaper.com/paper/2410.01376)

Discussion