{"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/se-3-diffusion-model-based-point-cloud","title":"SE(3) Diffusion Model-based Point Cloud Registration for Robust 6D Object Pose Estimation","arxiv_id":"2310.17359","date":"2023-10-26","proceeding":"NeurIPS 2023 11","authors":[],"abstract":"In this paper, we introduce an SE(3) diffusion model-based point cloud registration framework for 6D object pose estimation in real-world scenarios. Our approach formulates the 3D registration task as a denoising diffusion process, which progressively refines the pose of the source point cloud to obtain a precise alignment with the model point cloud. Training our framework involves two operations: An SE(3) diffusion process and an SE(3) reverse process. The SE(3) diffusion process gradually perturbs the optimal rigid transformation of a pair of point clouds by continuously injecting noise (perturbation transformation). By contrast, the SE(3) reverse process focuses on learning a denoising network that refines the noisy transformation step-by-step, bringing it closer to the optimal transformation for accurate pose estimation. Unlike standard diffusion models used in linear Euclidean spaces, our diffusion model operates on the SE(3) manifold. This requires exploiting the linear Lie algebra $\\mathfrak{se}(3)$ associated with SE(3) to constrain the transformation transitions during the diffusion and reverse processes. Additionally, to effectively train our denoising network, we derive a registration-specific variational lower bound as the optimization objective for model learning. Furthermore, we show that our denoising network can be constructed with a surrogate registration model, making our approach applicable to different deep registration networks. Extensive experiments demonstrate that our diffusion registration framework presents outstanding pose estimation performance on the real-world TUD-L, LINEMOD, and Occluded-LINEMOD datasets.","url_abs":"https://arxiv.org/abs/2310.17359v1","url_pdf":"https://arxiv.org/pdf/2310.17359v1.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":"se-3-diffusion-model-based-point-cloud","repo_url":"https://github.com/jiang-hb/diffusionreg","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"6d-pose-estimation","task_name":"6D Pose Estimation using RGB"},{"task_slug":"denoising","task_name":"Denoising"},{"task_slug":"point-cloud-registration","task_name":"Point Cloud Registration"},{"task_slug":"pose-estimation","task_name":"Pose Estimation"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2310.17359","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2310.17359"}},"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":"deterministic:regex_extraction","url":"https://github.com/Jiang-HB/DiffusionReg","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jiang-hb/diffusionreg","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":12,"ran_fixture":2},"by_repo_kind":{"listed":{"samples":14,"ran":14,"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":"8e98d0e10489ba04","entry":"DiffusionScheduler","repo":"jiang-hb/diffusionreg","repo_kind":"listed","path":"utils/diffusion_scheduler.py","file_url":"https://github.com/jiang-hb/diffusionreg/blob/HEAD/utils/diffusion_scheduler.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8e98d0e10489ba04"}},{"code_sha256_prefix":"e6531f546e55f6af","entry":"angle_difference","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"modules/DCP/rpmnet_emb/pointnet_util.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/modules/DCP/rpmnet_emb/pointnet_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":"e6531f546e55f6af"}},{"code_sha256_prefix":"9678a2e24b9ac1cb","entry":"compute_losses","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"utils/losses.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/utils/losses.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":"9678a2e24b9ac1cb"}},{"code_sha256_prefix":"d045a9d15eb48776","entry":"compute_losses_diff","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"utils/losses.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/utils/losses.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":"d045a9d15eb48776"}},{"code_sha256_prefix":"94ee3d652c921dcd","entry":"evaluate_Rt","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"utils/criterion.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/utils/criterion.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":"94ee3d652c921dcd"}},{"code_sha256_prefix":"552ad03917659f63","entry":"get_postpool","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"modules/DCP/rpmnet_emb/feature_net.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/modules/DCP/rpmnet_emb/feature_net.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":"552ad03917659f63"}},{"code_sha256_prefix":"8778312931854a3b","entry":"get_prepool","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"modules/DCP/rpmnet_emb/feature_net.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/modules/DCP/rpmnet_emb/feature_net.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":"8778312931854a3b"}},{"code_sha256_prefix":"0188255c8db5f0c5","entry":"index_points","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"modules/DCP/rpmnet_emb/pointnet_util.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/modules/DCP/rpmnet_emb/pointnet_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":"0188255c8db5f0c5"}},{"code_sha256_prefix":"d23093a32d8fdc84","entry":"integrate_trans","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"modules/DCP/dcp.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/modules/DCP/dcp.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":"d23093a32d8fdc84"}},{"code_sha256_prefix":"fa2f8f0b22fc04a6","entry":"mAP","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"utils/criterion.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/utils/criterion.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":"fa2f8f0b22fc04a6"}},{"code_sha256_prefix":"838e2078ad9224da","entry":"quat2mat","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"modules/DCP/dcp.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/modules/DCP/dcp.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":"838e2078ad9224da"}},{"code_sha256_prefix":"4db73dd57b5d6162","entry":"square_distance","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"modules/DCP/rpmnet_emb/pointnet_util.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/modules/DCP/rpmnet_emb/pointnet_util.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4db73dd57b5d6162"}},{"code_sha256_prefix":"d60988746155a232","entry":"transform","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"modules/DCP/dcp.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/modules/DCP/dcp.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d60988746155a232"}},{"code_sha256_prefix":"4e06974feca89b9d","entry":"transform","repo":"Jiang-HB/DiffusionReg","repo_kind":"listed","path":"utils/losses.py","file_url":"https://github.com/Jiang-HB/DiffusionReg/blob/HEAD/utils/losses.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":"4e06974feca89b9d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}