{"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/monocular-human-object-reconstruction-in-the","title":"Monocular Human-Object Reconstruction in the Wild","arxiv_id":"2407.20566","date":"2024-07-30","proceeding":null,"authors":["Chaofan Huo","Ye Shi","Jingya Wang"],"abstract":"Learning the prior knowledge of the 3D human-object spatial relation is crucial for reconstructing human-object interaction from images and understanding how humans interact with objects in 3D space. Previous works learn this prior from datasets collected in controlled environments, but due to the diversity of domains, they struggle to generalize to real-world scenarios. To overcome this limitation, we present a 2D-supervised method that learns the 3D human-object spatial relation prior purely from 2D images in the wild. Our method utilizes a flow-based neural network to learn the prior distribution of the 2D human-object keypoint layout and viewports for each image in the dataset. The effectiveness of the prior learned from 2D images is demonstrated on the human-object reconstruction task by applying the prior to tune the relative pose between the human and the object during the post-optimization stage. To validate and benchmark our method on in-the-wild images, we collect the WildHOI dataset from the YouTube website, which consists of various interactions with 8 objects in real-world scenarios. We conduct the experiments on the indoor BEHAVE dataset and the outdoor WildHOI dataset. The results show that our method achieves almost comparable performance with fully 3D supervised methods on the BEHAVE dataset, even if we have only utilized the 2D layout information, and outperforms previous methods in terms of generality and interaction diversity on in-the-wild images.","url_abs":"https://arxiv.org/abs/2407.20566v2","url_pdf":"https://arxiv.org/pdf/2407.20566v2.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":"monocular-human-object-reconstruction-in-the","repo_url":"https://github.com/huochf/WildHOI","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"diversity","task_name":"Diversity"},{"task_slug":"human-object-interaction-detection","task_name":"Human-Object Interaction Detection"},{"task_slug":"object","task_name":"Object"},{"task_slug":"object-reconstruction","task_name":"Object Reconstruction"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2407.20566","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2407.20566"}},"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/huochf/WildHOI","reach":{"status":"ok"}}],"summary":{"ran":6,"unverified":3},"by_repo_kind":{"official":{"samples":9,"ran":6,"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":9,"samples":[{"code_sha256_prefix":"27ffdf6c7183739f","entry":"generate_object_rotmat_candidates","repo":"huochf/WildHOI","repo_kind":"official","path":"evaluate_recon_results.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/evaluate_recon_results.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"27ffdf6c7183739f"}},{"code_sha256_prefix":"78906af808d5077d","entry":"get_loss_weights","repo":"huochf/WildHOI","repo_kind":"official","path":"train_kps_flow_wildhoi.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/train_kps_flow_wildhoi.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"78906af808d5077d"}},{"code_sha256_prefix":"75b2073dc83ecaea","entry":"get_object_coor","repo":"huochf/WildHOI","repo_kind":"official","path":"optimize_with_kps_flow_imagewise.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/optimize_with_kps_flow_imagewise.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"75b2073dc83ecaea"}},{"code_sha256_prefix":"f569afcca15c9a92","entry":"load_keypoints","repo":"huochf/WildHOI","repo_kind":"official","path":"human_evaluation_bicycle.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/human_evaluation_bicycle.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f569afcca15c9a92"}},{"code_sha256_prefix":"33c7e91bacb75d10","entry":"load_object_kps_indices","repo":"huochf/WildHOI","repo_kind":"official","path":"evaluate_recon_results.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/evaluate_recon_results.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"33c7e91bacb75d10"}},{"code_sha256_prefix":"a6a56fbe2568c956","entry":"load_pickle","repo":"huochf/WildHOI","repo_kind":"official","path":"KNN_grouping.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/KNN_grouping.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a6a56fbe2568c956"}},{"code_sha256_prefix":"2d96cbab81b524d8","entry":"get_object_coor","repo":"huochf/WildHOI","repo_kind":"official","path":"optimize_with_kps_flow_contact_imagewise.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/optimize_with_kps_flow_contact_imagewise.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2d96cbab81b524d8"}},{"code_sha256_prefix":"34d0322e2d0a566b","entry":"load_J_regressor","repo":"huochf/WildHOI","repo_kind":"official","path":"optimize_with_kps_flow_contact_imagewise_bicycle.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/optimize_with_kps_flow_contact_imagewise_bicycle.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"34d0322e2d0a566b"}},{"code_sha256_prefix":"c3af5c56e67ab381","entry":"save_pickle","repo":"huochf/WildHOI","repo_kind":"official","path":"get_occlusion_map.py","file_url":"https://github.com/huochf/WildHOI/blob/HEAD/get_occlusion_map.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c3af5c56e67ab381"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}