{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/freegave-3d-physics-learning-from-dynamic-1","title":"FreeGave: 3D Physics Learning from Dynamic Videos by Gaussian Velocity","arxiv_id":"2506.07865","date":"2025-06-09","proceeding":"CVPR 2025 1","authors":["Jinxi Li","Ziyang Song","Siyuan Zhou","Bo Yang"],"abstract":"In this paper, we aim to model 3D scene geometry, appearance, and the underlying physics purely from multi-view videos. By applying various governing PDEs as PINN losses or incorporating physics simulation into neural networks, existing works often fail to learn complex physical motions at boundaries or require object priors such as masks or types. In this paper, we propose FreeGave to learn the physics of complex dynamic 3D scenes without needing any object priors. The key to our approach is to introduce a physics code followed by a carefully designed divergence-free module for estimating a per-Gaussian velocity field, without relying on the inefficient PINN losses. Extensive experiments on three public datasets and a newly collected challenging real-world dataset demonstrate the superior performance of our method for future frame extrapolation and motion segmentation. Most notably, our investigation into the learned physics codes reveals that they truly learn meaningful 3D physical motion patterns in the absence of any human labels in training.","url_abs":"https://arxiv.org/abs/2506.07865v1","url_pdf":"https://arxiv.org/pdf/2506.07865v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"freegave-3d-physics-learning-from-dynamic-1","repo_url":"https://github.com/vlar-group/freegave","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"motion-segmentation","task_name":"Motion Segmentation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2506.07865","atlas_url":"https://app.syntology.ai/?focus=2506.07865","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2506.07865"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vlar-group/freegave","reach":null}],"summary":{"ran_draft_wrong":1,"ran":5,"ran_fixture":1,"unverified":1},"by_repo_kind":{"official":{"samples":7,"ran":6,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":8,"samples":[{"code_sha256_prefix":"90ed0313f554ec45","entry":"quaternion_multiply","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_draft_wrong","verification_level":2,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"90ed0313f554ec45"}},{"code_sha256_prefix":"db93d7473c4ddf9a","entry":"CodeField","repo":"vlar-group/freegave","repo_kind":"official","path":"scene/deform_model.py","file_url":"https://github.com/vlar-group/freegave/blob/HEAD/scene/deform_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"db93d7473c4ddf9a"}},{"code_sha256_prefix":"dfbe54630b9d5548","entry":"DeformNetwork","repo":"vlar-group/freegave","repo_kind":"official","path":"scene/deform_model.py","file_url":"https://github.com/vlar-group/freegave/blob/HEAD/scene/deform_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"dfbe54630b9d5548"}},{"code_sha256_prefix":"104aa1b2322b470a","entry":"PositionEncoder","repo":"vlar-group/freegave","repo_kind":"official","path":"scene/deform_model.py","file_url":"https://github.com/vlar-group/freegave/blob/HEAD/scene/deform_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"104aa1b2322b470a"}},{"code_sha256_prefix":"619d2d9a51199c2c","entry":"SegVel","repo":"vlar-group/freegave","repo_kind":"official","path":"scene/deform_model.py","file_url":"https://github.com/vlar-group/freegave/blob/HEAD/scene/deform_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"619d2d9a51199c2c"}},{"code_sha256_prefix":"55873c813afb426d","entry":"VelocityWarpper","repo":"vlar-group/freegave","repo_kind":"official","path":"scene/deform_model.py","file_url":"https://github.com/vlar-group/freegave/blob/HEAD/scene/deform_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"55873c813afb426d"}},{"code_sha256_prefix":"95b930fa1e669dcb","entry":"rotation_to_quaternion","repo":"vlar-group/freegave","repo_kind":"official","path":"scene/deform_model.py","file_url":"https://github.com/vlar-group/freegave/blob/HEAD/scene/deform_model.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"95b930fa1e669dcb"}},{"code_sha256_prefix":"81efb986a8d172f9","entry":"DeformModel","repo":"vlar-group/freegave","repo_kind":"official","path":"scene/deform_model.py","file_url":"https://github.com/vlar-group/freegave/blob/HEAD/scene/deform_model.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"81efb986a8d172f9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}