{"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-expressive-body-regression-through","title":"Monocular Expressive Body Regression through Body-Driven Attention","arxiv_id":"2008.09062","date":"2020-08-20","proceeding":"ECCV 2020 8","authors":["Vasileios Choutas","Georgios Pavlakos","Timo Bolkart","Dimitrios Tzionas","Michael J. Black"],"abstract":"To understand how people look, interact, or perform tasks, we need to quickly and accurately capture their 3D body, face, and hands together from an RGB image. Most existing methods focus only on parts of the body. A few recent approaches reconstruct full expressive 3D humans from images using 3D body models that include the face and hands. These methods are optimization-based and thus slow, prone to local optima, and require 2D keypoints as input. We address these limitations by introducing ExPose (EXpressive POse and Shape rEgression), which directly regresses the body, face, and hands, in SMPL-X format, from an RGB image. This is a hard problem due to the high dimensionality of the body and the lack of expressive training data. Additionally, hands and faces are much smaller than the body, occupying very few image pixels. This makes hand and face estimation hard when body images are downscaled for neural networks. We make three main contributions. First, we account for the lack of training data by curating a dataset of SMPL-X fits on in-the-wild images. Second, we observe that body estimation localizes the face and hands reasonably well. We introduce body-driven attention for face and hand regions in the original image to extract higher-resolution crops that are fed to dedicated refinement modules. Third, these modules exploit part-specific knowledge from existing face- and hand-only datasets. ExPose estimates expressive 3D humans more accurately than existing optimization methods at a small fraction of the computational cost. Our data, model and code are available for research at https://expose.is.tue.mpg.de .","url_abs":"https://arxiv.org/abs/2008.09062v1","url_pdf":"https://arxiv.org/pdf/2008.09062v1.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-expressive-body-regression-through","repo_url":"https://github.com/vchoutas/expose","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"3d-face-reconstruction","task_name":"3D Face Reconstruction"},{"task_slug":"3d-hand-pose-estimation","task_name":"3D Hand Pose Estimation"},{"task_slug":"3d-human-pose-estimation","task_name":"3D Human Pose Estimation"},{"task_slug":"3d-human-reconstruction","task_name":"3D Human Reconstruction"},{"task_slug":"3d-multi-person-mesh-recovery","task_name":"3D Multi-Person Mesh Recovery"},{"task_slug":"regression-1","task_name":"regression"}],"methods":[{"method_slug":"1x1-convolution","method_name":"1x1 Convolution"},{"method_slug":"batch-normalization","method_name":"Batch Normalization"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"hrnet","method_name":"HRNet"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-connection","method_name":"Residual Connection"}],"datasets_introduced":[{"slug":"expose","name":"ExPose","full_name":"EXpressive POse and Shape rEgression"}],"methods_introduced":[],"results":[{"leaderboard":"/sota/3d-hand-pose-estimation-on-freihand","task":"3D Hand Pose Estimation","dataset":"FreiHAND","model":"ExPose (hand sub-network h)","rank_in_archive_order":29,"of":33,"metrics":{"PA-F@15mm":"0.918","PA-F@5mm":"0.484","PA-MPJPE":"12.2","PA-MPVPE":"11.8"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-pose-estimation-on-3dpw","task":"3D Human Pose Estimation","dataset":"3DPW","model":"ExPose","rank_in_archive_order":93,"of":119,"metrics":{"MPJPE":"93.4","PA-MPJPE":"60.7"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-reconstruction-on-agora-1","task":"3D Human Reconstruction","dataset":"AGORA","model":"ExPose","rank_in_archive_order":3,"of":5,"metrics":{"B-MPJPE":"150.4","B-MVE":"151.5","B-NMJE":"183.4","B-NMVE":"184.8","F-MPJPE":"55.2","F-MVE":"51.1","FB-MPJPE":"215.9","FB-MVE":"217.3","FB-NMJE":"263.3","FB-NMVE":"265.0","LH/RH-MPJPE":"72.5/68.8","LH/RH-MVE":"74.9/71.3"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-reconstruction-on-expressive-hands-1","task":"3D Human Reconstruction","dataset":"Expressive hands and faces dataset (EHF)","model":"ExPose","rank_in_archive_order":2,"of":5,"metrics":{"MPJPE, left hand":"13.5","MPJPE-14":"62.8","PA V2V (mm), body only":"52.6","PA V2V (mm), face":"5.8","PA V2V (mm), left hand":"13.1","PA V2V (mm), whole body":"54.5","TR V2V (mm), body only":"76.8","TR V2V (mm), face":"15.9","TR V2V (mm), left hand":"31.2","TR V2V (mm), whole body":"65.7","mean P2S":"28.9","median P2S":"18"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-reconstruction-on-expressive-hands","task":"3D Human Reconstruction","dataset":"Expressive hands and faces dataset (EHF).","model":"PA-V2V (mm)","rank_in_archive_order":1,"of":1,"metrics":{"All":"54.5"},"uses_additional_data":false},{"leaderboard":"/sota/3d-multi-person-mesh-recovery-on-agora","task":"3D Multi-Person Mesh Recovery","dataset":"AGORA","model":"ExPose","rank_in_archive_order":6,"of":7,"metrics":{"B-MPJPE":"150.4","B-MVE":"151.5","B-NMJE":"183.4","B-NMVE":"184.8","F-MPJPE":"55.2","F-MVE":"51.1","FB-MPJPE":"215.9","FB-MVE":"217.3","FB-NMJE":"263.3","FB-NMVE":"265.0","LH/RH-MPJPE":"72.5/68.8","LH/RH-MVE":"74.9/71.3"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2008.09062","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2008.09062"}},"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/vchoutas/expose","reach":null}],"summary":{"ran_fixture":1,"ran_draft_wrong":1},"by_repo_kind":{"official":{"samples":2,"ran":2,"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":2,"samples":[{"code_sha256_prefix":"28876100b526ac42","entry":"undo_img_normalization","repo":"vchoutas/expose","repo_kind":"official","path":"inference.py","file_url":"https://github.com/vchoutas/expose/blob/HEAD/inference.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"28876100b526ac42"}},{"code_sha256_prefix":"6abcb068c2afb16c","entry":"weak_persp_to_blender","repo":"vchoutas/expose","repo_kind":"official","path":"inference.py","file_url":"https://github.com/vchoutas/expose/blob/HEAD/inference.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":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"6abcb068c2afb16c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}