{"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/physical-plausibility-aware-trajectory","title":"Physical Plausibility-aware Trajectory Prediction via Locomotion Embodiment","arxiv_id":"2503.17267","date":"2025-03-21","proceeding":"CVPR 2025 1","authors":["Hiromu Taketsugu","Takeru Oba","Takahiro Maeda","Shohei Nobuhara","Norimichi Ukita"],"abstract":"Humans can predict future human trajectories even from momentary observations by using human pose-related cues. However, previous Human Trajectory Prediction (HTP) methods leverage the pose cues implicitly, resulting in implausible predictions. To address this, we propose Locomotion Embodiment, a framework that explicitly evaluates the physical plausibility of the predicted trajectory by locomotion generation under the laws of physics. While the plausibility of locomotion is learned with an indifferentiable physics simulator, it is replaced by our differentiable Locomotion Value function to train an HTP network in a data-driven manner. In particular, our proposed Embodied Locomotion loss is beneficial for efficiently training a stochastic HTP network using multiple heads. Furthermore, the Locomotion Value filter is proposed to filter out implausible trajectories at inference. Experiments demonstrate that our method enhances even the state-of-the-art HTP methods across diverse datasets and problem settings. Our code is available at: https://github.com/ImIntheMiddle/EmLoco.","url_abs":"https://arxiv.org/abs/2503.17267v1","url_pdf":"https://arxiv.org/pdf/2503.17267v1.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":"physical-plausibility-aware-trajectory","repo_url":"https://github.com/iminthemiddle/emloco","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"prediction","task_name":"Prediction"},{"task_slug":"trajectory-prediction","task_name":"Trajectory Prediction"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2503.17267","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2503.17267"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+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":"deterministic:regex_extraction","url":"https://github.com/ImIntheMiddle/EmLoco","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_honours":1,"unverified":13},"by_repo_kind":{"official":{"samples":14,"ran":1,"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":0,"samples":[{"code_sha256_prefix":"d967154c60f2573c","entry":"lr_decay","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"EqMotion/main_eth_diverse.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/EqMotion/main_eth_diverse.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d967154c60f2573c"}},{"code_sha256_prefix":"57da7dfa5443db69","entry":"batch_process_coords","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/dataset_jrdb.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/dataset_jrdb.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"57da7dfa5443db69"}},{"code_sha256_prefix":"1e2df8b59f173163","entry":"collate_batch","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/dataset_jrdb.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/dataset_jrdb.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1e2df8b59f173163"}},{"code_sha256_prefix":"629a8b333d7cf5ed","entry":"collate_batch","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/dataset_jta.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/dataset_jta.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"629a8b333d7cf5ed"}},{"code_sha256_prefix":"162bda0d646ed899","entry":"create_model","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/model_jta.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/model_jta.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"162bda0d646ed899"}},{"code_sha256_prefix":"173cfe0d9eef60ae","entry":"getRandomRotatePoseTransform","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/dataset_jrdb.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/dataset_jrdb.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"173cfe0d9eef60ae"}},{"code_sha256_prefix":"9a7f1521fdc35610","entry":"get_action_label","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/evaluate_jrdb.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/evaluate_jrdb.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9a7f1521fdc35610"}},{"code_sha256_prefix":"6bf33cb3a1d3239f","entry":"get_primary_init_pose_jrdb","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/load_jrdb_traj.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/load_jrdb_traj.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6bf33cb3a1d3239f"}},{"code_sha256_prefix":"86dae4c81f3d1089","entry":"get_valid_mask2","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"EqMotion/main_eth_diverse.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/EqMotion/main_eth_diverse.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"86dae4c81f3d1089"}},{"code_sha256_prefix":"a703784ffd685861","entry":"inference","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/evaluate_jta.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/evaluate_jta.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a703784ffd685861"}},{"code_sha256_prefix":"18f2594f0396e053","entry":"load_jrdb_3dpose","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/load_jrdb_3dpose.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/load_jrdb_3dpose.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"18f2594f0396e053"}},{"code_sha256_prefix":"2f7aeff4240b3889","entry":"load_jrdb_data","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/load_jrdb_3dpose.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/load_jrdb_3dpose.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2f7aeff4240b3889"}},{"code_sha256_prefix":"2362958b7e6a9591","entry":"read_json","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"social-transmotion/load_jrdb_3dpose.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/social-transmotion/load_jrdb_3dpose.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2362958b7e6a9591"}},{"code_sha256_prefix":"74dc8d1665324c49","entry":"train","repo":"ImIntheMiddle/EmLoco","repo_kind":"official","path":"EqMotion/main_eth_diverse.py","file_url":"https://github.com/ImIntheMiddle/EmLoco/blob/HEAD/EqMotion/main_eth_diverse.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"74dc8d1665324c49"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}