{"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/whac-world-grounded-humans-and-cameras","title":"WHAC: World-grounded Humans and Cameras","arxiv_id":"2403.12959","date":"2024-03-19","proceeding":null,"authors":["Wanqi Yin","Zhongang Cai","Ruisi Wang","Fanzhou Wang","Chen Wei","Haiyi Mei","Weiye Xiao","Zhitao Yang","Qingping Sun","Atsushi Yamashita","Ziwei Liu","Lei Yang"],"abstract":"Estimating human and camera trajectories with accurate scale in the world coordinate system from a monocular video is a highly desirable yet challenging and ill-posed problem. In this study, we aim to recover expressive parametric human models (i.e., SMPL-X) and corresponding camera poses jointly, by leveraging the synergy between three critical players: the world, the human, and the camera. Our approach is founded on two key observations. Firstly, camera-frame SMPL-X estimation methods readily recover absolute human depth. Secondly, human motions inherently provide absolute spatial cues. By integrating these insights, we introduce a novel framework, referred to as WHAC, to facilitate world-grounded expressive human pose and shape estimation (EHPS) alongside camera pose estimation, without relying on traditional optimization techniques. Additionally, we present a new synthetic dataset, WHAC-A-Mole, which includes accurately annotated humans and cameras, and features diverse interactive human motions as well as realistic camera trajectories. Extensive experiments on both standard and newly established benchmarks highlight the superiority and efficacy of our framework. We will make the code and dataset publicly available.","url_abs":"https://arxiv.org/abs/2403.12959v1","url_pdf":"https://arxiv.org/pdf/2403.12959v1.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":"whac-world-grounded-humans-and-cameras","repo_url":"https://github.com/openxrlab/xrfeitoria","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"none","reach":null}],"tasks":[{"task_slug":"camera-pose-estimation","task_name":"Camera Pose Estimation"},{"task_slug":"pose-estimation","task_name":"Pose Estimation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2403.12959","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.12959"}},"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/openxrlab/xrfeitoria","reach":null}],"summary":{"ran":2,"ran_draft_wrong":1,"ran_fixture":2,"unverified":1},"by_repo_kind":{"official":{"samples":6,"ran":5,"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":"bbd8dde388504803","entry":"ConverterMotion","repo":"openxrlab/xrfeitoria","repo_kind":"official","path":"xrfeitoria/utils/anim/motion.py","file_url":"https://github.com/openxrlab/xrfeitoria/blob/HEAD/xrfeitoria/utils/anim/motion.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"bbd8dde388504803"}},{"code_sha256_prefix":"c205e6610a316d8e","entry":"Motion","repo":"openxrlab/xrfeitoria","repo_kind":"official","path":"xrfeitoria/utils/anim/motion.py","file_url":"https://github.com/openxrlab/xrfeitoria/blob/HEAD/xrfeitoria/utils/anim/motion.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c205e6610a316d8e"}},{"code_sha256_prefix":"4fc389d3c05627f8","entry":"_get_from_smpl_x_","repo":"openxrlab/xrfeitoria","repo_kind":"official","path":"xrfeitoria/utils/anim/motion.py","file_url":"https://github.com/openxrlab/xrfeitoria/blob/HEAD/xrfeitoria/utils/anim/motion.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"4fc389d3c05627f8"}},{"code_sha256_prefix":"0945df8ecf2bd69c","entry":"_transform_transl_global_orient_","repo":"openxrlab/xrfeitoria","repo_kind":"official","path":"xrfeitoria/utils/anim/motion.py","file_url":"https://github.com/openxrlab/xrfeitoria/blob/HEAD/xrfeitoria/utils/anim/motion.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"0945df8ecf2bd69c"}},{"code_sha256_prefix":"109afedda1495e7f","entry":"get_humandata","repo":"openxrlab/xrfeitoria","repo_kind":"official","path":"xrfeitoria/utils/anim/motion.py","file_url":"https://github.com/openxrlab/xrfeitoria/blob/HEAD/xrfeitoria/utils/anim/motion.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"109afedda1495e7f"}},{"code_sha256_prefix":"dd42229e2afc1c4b","entry":"SMPLXMotion","repo":"openxrlab/xrfeitoria","repo_kind":"official","path":"xrfeitoria/utils/anim/motion.py","file_url":"https://github.com/openxrlab/xrfeitoria/blob/HEAD/xrfeitoria/utils/anim/motion.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"dd42229e2afc1c4b"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}