{"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/acr-attention-collaboration-based-regressor","title":"ACR: Attention Collaboration-based Regressor for Arbitrary Two-Hand Reconstruction","arxiv_id":"2303.05938","date":"2023-03-10","proceeding":"CVPR 2023 1","authors":["Zhengdi Yu","Shaoli Huang","Chen Fang","Toby P. Breckon","Jue Wang"],"abstract":"Reconstructing two hands from monocular RGB images is challenging due to frequent occlusion and mutual confusion. Existing methods mainly learn an entangled representation to encode two interacting hands, which are incredibly fragile to impaired interaction, such as truncated hands, separate hands, or external occlusion. This paper presents ACR (Attention Collaboration-based Regressor), which makes the first attempt to reconstruct hands in arbitrary scenarios. To achieve this, ACR explicitly mitigates interdependencies between hands and between parts by leveraging center and part-based attention for feature extraction. However, reducing interdependence helps release the input constraint while weakening the mutual reasoning about reconstructing the interacting hands. Thus, based on center attention, ACR also learns cross-hand prior that handle the interacting hands better. We evaluate our method on various types of hand reconstruction datasets. Our method significantly outperforms the best interacting-hand approaches on the InterHand2.6M dataset while yielding comparable performance with the state-of-the-art single-hand methods on the FreiHand dataset. More qualitative results on in-the-wild and hand-object interaction datasets and web images/videos further demonstrate the effectiveness of our approach for arbitrary hand reconstruction. Our code is available at https://github.com/ZhengdiYu/Arbitrary-Hands-3D-Reconstruction.","url_abs":"https://arxiv.org/abs/2303.05938v1","url_pdf":"https://arxiv.org/pdf/2303.05938v1.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":"acr-attention-collaboration-based-regressor","repo_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"3d-interacting-hand-pose-estimation","task_name":"3D Interacting Hand Pose Estimation"},{"task_slug":"3d-reconstruction","task_name":"3D Reconstruction"},{"task_slug":"two","task_name":"Vocal Bursts Valence Prediction"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/3d-interacting-hand-pose-estimation-on","task":"3D Interacting Hand Pose Estimation","dataset":"InterHand2.6M","model":"ACR","rank_in_archive_order":3,"of":9,"metrics":{"MPJPE Test":"7.41","MPVPE Test":"7.63","MRRPE Test":"-"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2303.05938","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2303.05938"}},"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/zhengdiyu/arbitrary-hands-3d-reconstruction","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":2,"ran":1,"unverified":11},"by_repo_kind":{"official":{"samples":14,"ran":3,"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":"fac5364e2f53c6db","entry":"conv3x3","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/model.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/model.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fac5364e2f53c6db"}},{"code_sha256_prefix":"e7fc07c30373e482","entry":"gather_feature","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/result_parser.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/result_parser.py","link_basis":"harvester_set","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":"e7fc07c30373e482"}},{"code_sha256_prefix":"a012fac19e3c7477","entry":"th_pack","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"mano/manolayer.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/mano/manolayer.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a012fac19e3c7477"}},{"code_sha256_prefix":"7df23e797e46d689","entry":"collect_image_list","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/utils.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/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":"7df23e797e46d689"}},{"code_sha256_prefix":"b77632bd876028e5","entry":"get_coord_maps","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/model.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/model.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":"b77632bd876028e5"}},{"code_sha256_prefix":"9f74c89bce4cb583","entry":"get_keypoint_rgb","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/visualization.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/visualization.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":"9f74c89bce4cb583"}},{"code_sha256_prefix":"4fe8bffaef32f549","entry":"get_kp2d_on_org_img","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/utils.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/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":"4fe8bffaef32f549"}},{"code_sha256_prefix":"efde4255027e258d","entry":"make_heatmaps","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/visualization.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/visualization.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":"efde4255027e258d"}},{"code_sha256_prefix":"e1957e87a34993e1","entry":"make_tagmaps","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/visualization.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/visualization.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":"e1957e87a34993e1"}},{"code_sha256_prefix":"8bfe96e53c77a01b","entry":"nms","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/result_parser.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/result_parser.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":"8bfe96e53c77a01b"}},{"code_sha256_prefix":"bda21cbd22b37231","entry":"normalize_kps","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/utils.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/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":"bda21cbd22b37231"}},{"code_sha256_prefix":"e65d2c00abafb2f5","entry":"parse_args","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"acr/config.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/acr/config.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":"e65d2c00abafb2f5"}},{"code_sha256_prefix":"42521f4ec8660580","entry":"th_posemap_axisang","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"mano/manolayer.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/mano/manolayer.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":"42521f4ec8660580"}},{"code_sha256_prefix":"cd37580add3ccba5","entry":"th_with_zeros","repo":"zhengdiyu/arbitrary-hands-3d-reconstruction","repo_kind":"official","path":"mano/manolayer.py","file_url":"https://github.com/zhengdiyu/arbitrary-hands-3d-reconstruction/blob/HEAD/mano/manolayer.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":"cd37580add3ccba5"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}