{"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/pmp-net-point-cloud-completion-by-transformer","title":"PMP-Net++: Point Cloud Completion by Transformer-Enhanced Multi-step Point Moving Paths","arxiv_id":"2202.09507","date":"2022-02-19","proceeding":null,"authors":["Xin Wen","Peng Xiang","Zhizhong Han","Yan-Pei Cao","Pengfei Wan","Wen Zheng","Yu-Shen Liu"],"abstract":"Point cloud completion concerns to predict missing part for incomplete 3D shapes. A common strategy is to generate complete shape according to incomplete input. However, unordered nature of point clouds will degrade generation of high-quality 3D shapes, as detailed topology and structure of unordered points are hard to be captured during the generative process using an extracted latent code. We address this problem by formulating completion as point cloud deformation process. Specifically, we design a novel neural network, named PMP-Net++, to mimic behavior of an earth mover. It moves each point of incomplete input to obtain a complete point cloud, where total distance of point moving paths (PMPs) should be the shortest. Therefore, PMP-Net++ predicts unique PMP for each point according to constraint of point moving distances. The network learns a strict and unique correspondence on point-level, and thus improves quality of predicted complete shape. Moreover, since moving points heavily relies on per-point features learned by network, we further introduce a transformer-enhanced representation learning network, which significantly improves completion performance of PMP-Net++. We conduct comprehensive experiments in shape completion, and further explore application on point cloud up-sampling, which demonstrate non-trivial improvement of PMP-Net++ over state-of-the-art point cloud completion/up-sampling methods.","url_abs":"https://arxiv.org/abs/2202.09507v3","url_pdf":"https://arxiv.org/pdf/2202.09507v3.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":"pmp-net-point-cloud-completion-by-transformer","repo_url":"https://github.com/diviswen/PMP-Net","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"point-cloud-completion","task_name":"Point Cloud Completion"},{"task_slug":"representation-learning","task_name":"Representation Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/point-cloud-completion-on-completion3d","task":"Point Cloud Completion","dataset":"Completion3D","model":"PMP-Net++","rank_in_archive_order":6,"of":7,"metrics":{"Chamfer Distance":"7.97(CD-L2)"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2202.09507","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2202.09507"}},"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/diviswen/PMP-Net","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_fixture":1,"unverified":2},"by_repo_kind":{"official":{"samples":3,"ran":1,"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":"225a2727f042aed0","entry":"sample_and_group_all","repo":"diviswen/PMP-Net","repo_kind":"official","path":"models/utils.py","file_url":"https://github.com/diviswen/PMP-Net/blob/HEAD/models/utils.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"225a2727f042aed0"}},{"code_sha256_prefix":"675a87970f64485b","entry":"lr_lambda","repo":"diviswen/PMP-Net","repo_kind":"official","path":"core/train_c3d.py","file_url":"https://github.com/diviswen/PMP-Net/blob/HEAD/core/train_c3d.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":"675a87970f64485b"}},{"code_sha256_prefix":"897c54575ba9b95a","entry":"random_subsample","repo":"diviswen/PMP-Net","repo_kind":"official","path":"core/inference_pcn.py","file_url":"https://github.com/diviswen/PMP-Net/blob/HEAD/core/inference_pcn.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":"897c54575ba9b95a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}