{"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/momask-generative-masked-modeling-of-3d-human","title":"MoMask: Generative Masked Modeling of 3D Human Motions","arxiv_id":"2312.00063","date":"2023-11-29","proceeding":"CVPR 2024 1","authors":["Chuan Guo","Yuxuan Mu","Muhammad Gohar Javed","Sen Wang","Li Cheng"],"abstract":"We introduce MoMask, a novel masked modeling framework for text-driven 3D human motion generation. In MoMask, a hierarchical quantization scheme is employed to represent human motion as multi-layer discrete motion tokens with high-fidelity details. Starting at the base layer, with a sequence of motion tokens obtained by vector quantization, the residual tokens of increasing orders are derived and stored at the subsequent layers of the hierarchy. This is consequently followed by two distinct bidirectional transformers. For the base-layer motion tokens, a Masked Transformer is designated to predict randomly masked motion tokens conditioned on text input at training stage. During generation (i.e. inference) stage, starting from an empty sequence, our Masked Transformer iteratively fills up the missing tokens; Subsequently, a Residual Transformer learns to progressively predict the next-layer tokens based on the results from current layer. Extensive experiments demonstrate that MoMask outperforms the state-of-art methods on the text-to-motion generation task, with an FID of 0.045 (vs e.g. 0.141 of T2M-GPT) on the HumanML3D dataset, and 0.228 (vs 0.514) on KIT-ML, respectively. MoMask can also be seamlessly applied in related tasks without further model fine-tuning, such as text-guided temporal inpainting.","url_abs":"https://arxiv.org/abs/2312.00063v1","url_pdf":"https://arxiv.org/pdf/2312.00063v1.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":"momask-generative-masked-modeling-of-3d-human","repo_url":"https://github.com/EricGuo5513/momask-codes","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"human-motion-prediction","task_name":"Human motion prediction"},{"task_slug":"motion-forecasting","task_name":"Motion Forecasting"},{"task_slug":"motion-generation","task_name":"Motion Generation"},{"task_slug":"motion-interpolation","task_name":"Motion Interpolation"},{"task_slug":"motion-synthesis","task_name":"Motion Synthesis"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"base","method_name":"BASE"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/motion-synthesis-on-humanml3d","task":"Motion Synthesis","dataset":"HumanML3D","model":"MoMask","rank_in_archive_order":5,"of":37,"metrics":{"FID":"0.045","Multimodality":"1.241","R Precision Top3":"0.807"},"uses_additional_data":false},{"leaderboard":"/sota/motion-synthesis-on-kit-motion-language","task":"Motion Synthesis","dataset":"KIT Motion-Language","model":"MoMask","rank_in_archive_order":8,"of":31,"metrics":{"FID":"0.204","Multimodality":"1.131","R Precision Top3":"0.781"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2312.00063","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2312.00063"}},"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":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/EricGuo5513/momask-codes","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":7,"ran_draft_wrong":1,"unverified":3},"by_repo_kind":{"official":{"samples":11,"ran":8,"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":"b3a8c0636cb0b673","entry":"get_pad_mask_idx","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"models/mask_transformer/tools.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/models/mask_transformer/tools.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b3a8c0636cb0b673"}},{"code_sha256_prefix":"5fdf5df48906cb4f","entry":"get_padding_mask","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"models/t2m_eval_modules.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/models/t2m_eval_modules.py","link_basis":"plan_row","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5fdf5df48906cb4f"}},{"code_sha256_prefix":"fb6fcde255d6bf72","entry":"get_subsequent_mask","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"models/mask_transformer/tools.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/models/mask_transformer/tools.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fb6fcde255d6bf72"}},{"code_sha256_prefix":"cdd18b1ca5a038e1","entry":"positional_encoding","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"models/t2m_eval_modules.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/models/t2m_eval_modules.py","link_basis":"plan_row","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cdd18b1ca5a038e1"}},{"code_sha256_prefix":"9593fec6c1bf25e7","entry":"qinv","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"common/quaternion.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/common/quaternion.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9593fec6c1bf25e7"}},{"code_sha256_prefix":"66024edafa8c53fb","entry":"qinv_np","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"common/quaternion.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/common/quaternion.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"66024edafa8c53fb"}},{"code_sha256_prefix":"bac0877915201be1","entry":"qnormalize","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"common/quaternion.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/common/quaternion.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bac0877915201be1"}},{"code_sha256_prefix":"0f0021cdea13e4da","entry":"top_k_logits","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"models/t2m_eval_modules.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/models/t2m_eval_modules.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0f0021cdea13e4da"}},{"code_sha256_prefix":"939b4a7d3178c666","entry":"build_evaluators","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"models/t2m_eval_wrapper.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/models/t2m_eval_wrapper.py","link_basis":"plan_row","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":"939b4a7d3178c666"}},{"code_sha256_prefix":"0e89c3d7e91130b0","entry":"build_models","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"models/t2m_eval_wrapper.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/models/t2m_eval_wrapper.py","link_basis":"plan_row","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":"0e89c3d7e91130b0"}},{"code_sha256_prefix":"80c46a6e9bfa68f7","entry":"lengths_to_mask","repo":"EricGuo5513/momask-codes","repo_kind":"official","path":"models/mask_transformer/tools.py","file_url":"https://github.com/EricGuo5513/momask-codes/blob/HEAD/models/mask_transformer/tools.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":"80c46a6e9bfa68f7"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}