{"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/learning-trajectory-dependencies-for-human","title":"Learning Trajectory Dependencies for Human Motion Prediction","arxiv_id":"1908.05436","date":"2019-08-15","proceeding":"ICCV 2019 10","authors":["Wei Mao","Miaomiao Liu","Mathieu Salzmann","Hongdong Li"],"abstract":"Human motion prediction, i.e., forecasting future body poses given observed pose sequence, has typically been tackled with recurrent neural networks (RNNs). However, as evidenced by prior work, the resulted RNN models suffer from prediction errors accumulation, leading to undesired discontinuities in motion prediction. In this paper, we propose a simple feed-forward deep network for motion prediction, which takes into account both temporal smoothness and spatial dependencies among human body joints. In this context, we then propose to encode temporal information by working in trajectory space, instead of the traditionally-used pose space. This alleviates us from manually defining the range of temporal dependencies (or temporal convolutional filter size, as done in previous work). Moreover, spatial dependency of human pose is encoded by treating a human pose as a generic graph (rather than a human skeletal kinematic tree) formed by links between every pair of body joints. Instead of using a pre-defined graph structure, we design a new graph convolutional network to learn graph connectivity automatically. This allows the network to capture long range dependencies beyond that of human kinematic tree. We evaluate our approach on several standard benchmark datasets for motion prediction, including Human3.6M, the CMU motion capture dataset and 3DPW. Our experiments clearly demonstrate that the proposed approach achieves state of the art performance, and is applicable to both angle-based and position-based pose representations. The code is available at https://github.com/wei-mao-2019/LearnTrajDep","url_abs":"https://arxiv.org/abs/1908.05436v3","url_pdf":"https://arxiv.org/pdf/1908.05436v3.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":"learning-trajectory-dependencies-for-human","repo_url":"https://github.com/wei-mao-2019/LearnTrajDep","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"learning-trajectory-dependencies-for-human","repo_url":"https://github.com/Jacoo-Zhao/3D-Pose-Based-Feedback-For-Physical-Exercises","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-trajectory-dependencies-for-human","repo_url":"https://github.com/bouracha/Gen_Motion","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"learning-trajectory-dependencies-for-human","repo_url":"https://github.com/bouracha/OoDMotion","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"learning-trajectory-dependencies-for-human","repo_url":"https://github.com/chengxuduan/advhmp","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"human-pose-forecasting","task_name":"Human Pose Forecasting"},{"task_slug":"human-motion-prediction","task_name":"Human motion prediction"},{"task_slug":"multi-person-pose-forecasting","task_name":"Multi-Person Pose forecasting"},{"task_slug":"prediction","task_name":"Prediction"},{"task_slug":"motion-prediction","task_name":"motion prediction"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/human-pose-forecasting-on-human36m","task":"Human Pose Forecasting","dataset":"Human3.6M","model":"LTD-GCN","rank_in_archive_order":14,"of":33,"metrics":{"Average MPJPE (mm) @ 1000 ms":"113.0","Average MPJPE (mm) @ 400ms":"63.5","MAR, walking, 1,000ms":"0.67","MAR, walking, 400ms":"0.56"},"uses_additional_data":false},{"leaderboard":"/sota/multi-person-pose-forecasting-on-expi-common","task":"Multi-Person Pose forecasting","dataset":"Expi - common actions split","model":"LTD","rank_in_archive_order":6,"of":6,"metrics":{"Average MPJPE (mm) @ 1000 ms":"303","Average MPJPE (mm) @ 200 ms":"90","Average MPJPE (mm) @ 400 ms":"169","Average MPJPE (mm) @ 600 ms":"226"},"uses_additional_data":false},{"leaderboard":"/sota/multi-person-pose-forecasting-on-expi-unseen","task":"Multi-Person Pose forecasting","dataset":"Expi - unseen actions split","model":"LTD","rank_in_archive_order":5,"of":5,"metrics":{"Average MPJPE (mm) @ 400 ms":"177","Average MPJPE (mm) @ 600 ms":"233","Average MPJPE (mm) @ 800 ms":"272"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/1908.05436","atlas_url":"https://app.syntology.ai/?focus=1908.05436","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1908.05436"}},"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/bouracha/OoDMotion","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/wei-mao-2019/LearnTrajDep","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Jacoo-Zhao/3D-Pose-Based-Feedback-For-Physical-Exercises","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/chengxuduan/advhmp","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/bouracha/Gen_Motion","reach":null}],"summary":{"unverified":3},"by_repo_kind":{"official":{"samples":3,"ran":0,"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":"7e2daa491ccfd852","entry":"rotmat2euler","repo":"wei-mao-2019/LearnTrajDep","repo_kind":"official","path":"utils/data_utils.py","file_url":"https://github.com/wei-mao-2019/LearnTrajDep/blob/HEAD/utils/data_utils.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":"7e2daa491ccfd852"}},{"code_sha256_prefix":"0d5490fef1bb59ae","entry":"rotmat2expmap","repo":"wei-mao-2019/LearnTrajDep","repo_kind":"official","path":"utils/data_utils.py","file_url":"https://github.com/wei-mao-2019/LearnTrajDep/blob/HEAD/utils/data_utils.py","link_basis":"first_harvest_node","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":"0d5490fef1bb59ae"}},{"code_sha256_prefix":"bf9baa714c29fd46","entry":"rotmat2quat","repo":"wei-mao-2019/LearnTrajDep","repo_kind":"official","path":"utils/data_utils.py","file_url":"https://github.com/wei-mao-2019/LearnTrajDep/blob/HEAD/utils/data_utils.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":"bf9baa714c29fd46"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}