{"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/3d-diffusion-policy","title":"3D Diffusion Policy: Generalizable Visuomotor Policy Learning via Simple 3D Representations","arxiv_id":"2403.03954","date":"2024-03-06","proceeding":null,"authors":["Yanjie Ze","Gu Zhang","Kangning Zhang","Chenyuan Hu","Muhan Wang","Huazhe Xu"],"abstract":"Imitation learning provides an efficient way to teach robots dexterous skills; however, learning complex skills robustly and generalizablely usually consumes large amounts of human demonstrations. To tackle this challenging problem, we present 3D Diffusion Policy (DP3), a novel visual imitation learning approach that incorporates the power of 3D visual representations into diffusion policies, a class of conditional action generative models. The core design of DP3 is the utilization of a compact 3D visual representation, extracted from sparse point clouds with an efficient point encoder. In our experiments involving 72 simulation tasks, DP3 successfully handles most tasks with just 10 demonstrations and surpasses baselines with a 24.2% relative improvement. In 4 real robot tasks, DP3 demonstrates precise control with a high success rate of 85%, given only 40 demonstrations of each task, and shows excellent generalization abilities in diverse aspects, including space, viewpoint, appearance, and instance. Interestingly, in real robot experiments, DP3 rarely violates safety requirements, in contrast to baseline methods which frequently do, necessitating human intervention. Our extensive evaluation highlights the critical importance of 3D representations in real-world robot learning. Videos, code, and data are available on https://3d-diffusion-policy.github.io .","url_abs":"https://arxiv.org/abs/2403.03954v7","url_pdf":"https://arxiv.org/pdf/2403.03954v7.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":"3d-diffusion-policy","repo_url":"https://github.com/YanjieZe/3D-Diffusion-Policy","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"imitation-learning","task_name":"Imitation Learning"},{"task_slug":"robot-manipulation","task_name":"Robot Manipulation"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/robot-manipulation-on-mimicgen","task":"Robot Manipulation","dataset":"MimicGen","model":"DP3 (Evaluated in EquiDiff)","rank_in_archive_order":5,"of":7,"metrics":{"Succ. Rate (12 tasks, 100 demo/task)":"23.9","Succ. Rate (12 tasks, 1000 demo/task)":"56.8","Succ. Rate (12 tasks, 200 demo/task)":"35.1"},"uses_additional_data":true}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2403.03954","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.03954"}},"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/YanjieZe/3D-Diffusion-Policy","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":7},"by_repo_kind":{"official":{"samples":7,"ran":7,"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":"0a16eab1dfc7ced0","entry":"create_indices","repo":"YanjieZe/3D-Diffusion-Policy","repo_kind":"official","path":"3D-Diffusion-Policy/diffusion_policy_3d/common/sampler.py","file_url":"https://github.com/YanjieZe/3D-Diffusion-Policy/blob/HEAD/3D-Diffusion-Policy/diffusion_policy_3d/common/sampler.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":"0a16eab1dfc7ced0"}},{"code_sha256_prefix":"e889bd81b4735ee5","entry":"dict_apply","repo":"YanjieZe/3D-Diffusion-Policy","repo_kind":"official","path":"3D-Diffusion-Policy/diffusion_policy_3d/common/pytorch_util.py","file_url":"https://github.com/YanjieZe/3D-Diffusion-Policy/blob/HEAD/3D-Diffusion-Policy/diffusion_policy_3d/common/pytorch_util.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":"e889bd81b4735ee5"}},{"code_sha256_prefix":"8c6a9f390c7af799","entry":"dict_apply_split","repo":"YanjieZe/3D-Diffusion-Policy","repo_kind":"official","path":"3D-Diffusion-Policy/diffusion_policy_3d/common/pytorch_util.py","file_url":"https://github.com/YanjieZe/3D-Diffusion-Policy/blob/HEAD/3D-Diffusion-Policy/diffusion_policy_3d/common/pytorch_util.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":"8c6a9f390c7af799"}},{"code_sha256_prefix":"85ef80fba2caa71d","entry":"downsample_mask","repo":"YanjieZe/3D-Diffusion-Policy","repo_kind":"official","path":"3D-Diffusion-Policy/diffusion_policy_3d/common/sampler.py","file_url":"https://github.com/YanjieZe/3D-Diffusion-Policy/blob/HEAD/3D-Diffusion-Policy/diffusion_policy_3d/common/sampler.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":"85ef80fba2caa71d"}},{"code_sha256_prefix":"1d4ddad52e215d73","entry":"get_optimal_chunks","repo":"YanjieZe/3D-Diffusion-Policy","repo_kind":"official","path":"3D-Diffusion-Policy/diffusion_policy_3d/common/replay_buffer.py","file_url":"https://github.com/YanjieZe/3D-Diffusion-Policy/blob/HEAD/3D-Diffusion-Policy/diffusion_policy_3d/common/replay_buffer.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":"1d4ddad52e215d73"}},{"code_sha256_prefix":"ed689847c85c1288","entry":"get_val_mask","repo":"YanjieZe/3D-Diffusion-Policy","repo_kind":"official","path":"3D-Diffusion-Policy/diffusion_policy_3d/common/sampler.py","file_url":"https://github.com/YanjieZe/3D-Diffusion-Policy/blob/HEAD/3D-Diffusion-Policy/diffusion_policy_3d/common/sampler.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":"ed689847c85c1288"}},{"code_sha256_prefix":"ad05722d0bd12d1e","entry":"pad_remaining_dims","repo":"YanjieZe/3D-Diffusion-Policy","repo_kind":"official","path":"3D-Diffusion-Policy/diffusion_policy_3d/common/pytorch_util.py","file_url":"https://github.com/YanjieZe/3D-Diffusion-Policy/blob/HEAD/3D-Diffusion-Policy/diffusion_policy_3d/common/pytorch_util.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":"ad05722d0bd12d1e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}