{"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/cpgnet-cascade-point-grid-fusion-network-for","title":"CPGNet: Cascade Point-Grid Fusion Network for Real-Time LiDAR Semantic Segmentation","arxiv_id":"2204.09914","date":"2022-04-21","proceeding":null,"authors":["Xiaoyan Li","Gang Zhang","Hongyu Pan","Zhenhua Wang"],"abstract":"LiDAR semantic segmentation essential for advanced autonomous driving is required to be accurate, fast, and easy-deployed on mobile platforms. Previous point-based or sparse voxel-based methods are far away from real-time applications since time-consuming neighbor searching or sparse 3D convolution are employed. Recent 2D projection-based methods, including range view and multi-view fusion, can run in real time, but suffer from lower accuracy due to information loss during the 2D projection. Besides, to improve the performance, previous methods usually adopt test time augmentation (TTA), which further slows down the inference process. To achieve a better speed-accuracy trade-off, we propose Cascade Point-Grid Fusion Network (CPGNet), which ensures both effectiveness and efficiency mainly by the following two techniques: 1) the novel Point-Grid (PG) fusion block extracts semantic features mainly on the 2D projected grid for efficiency, while summarizes both 2D and 3D features on 3D point for minimal information loss; 2) the proposed transformation consistency loss narrows the gap between the single-time model inference and TTA. The experiments on the SemanticKITTI and nuScenes benchmarks demonstrate that the CPGNet without ensemble models or TTA is comparable with the state-of-the-art RPVNet, while it runs 4.7 times faster.","url_abs":"https://arxiv.org/abs/2204.09914v3","url_pdf":"https://arxiv.org/pdf/2204.09914v3.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":"cpgnet-cascade-point-grid-fusion-network-for","repo_url":"https://github.com/GangZhang842/CPGNet","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"cpgnet-cascade-point-grid-fusion-network-for","repo_url":"https://github.com/huixiancheng/PCB-RandNet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"cpgnet-cascade-point-grid-fusion-network-for","repo_url":"https://github.com/huixiancheng/no-cpgnet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"autonomous-driving","task_name":"Autonomous Driving"},{"task_slug":"lidar-semantic-segmentation","task_name":"LIDAR Semantic Segmentation"},{"task_slug":"robust-3d-semantic-segmentation","task_name":"Robust 3D Semantic Segmentation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"}],"methods":[{"method_slug":"3d-convolution","method_name":"3D Convolution"},{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/robust-3d-semantic-segmentation-on","task":"Robust 3D Semantic Segmentation","dataset":"SemanticKITTI-C","model":"CPGNet","rank_in_archive_order":12,"of":22,"metrics":{"mean Corruption Error (mCE)":"107.34%"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2204.09914","atlas_url":"https://app.syntology.ai/?focus=2204.09914","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2204.09914"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/huixiancheng/PCB-RandNet","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/huixiancheng/no-cpgnet","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/GangZhang842/CPGNet","reach":{"status":"ok"}}],"summary":{"ran":3,"unverified":1},"by_repo_kind":{"listed":{"samples":4,"ran":3,"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":"c6a276314cd17dea","entry":"compute_loss","repo":"huixiancheng/PCB-RandNet","repo_kind":"listed","path":"network/loss_func.py","file_url":"https://github.com/huixiancheng/PCB-RandNet/blob/HEAD/network/loss_func.py","link_basis":"harvester_set","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":"c6a276314cd17dea"}},{"code_sha256_prefix":"7029f7b29b9d7c91","entry":"get_logger","repo":"huixiancheng/PCB-RandNet","repo_kind":"listed","path":"help_utils.py","file_url":"https://github.com/huixiancheng/PCB-RandNet/blob/HEAD/help_utils.py","link_basis":"harvester_set","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":"7029f7b29b9d7c91"}},{"code_sha256_prefix":"89cdbfea9999106d","entry":"load_label","repo":"huixiancheng/PCB-RandNet","repo_kind":"listed","path":"evaluate_DIS_SemanticKITTI.py","file_url":"https://github.com/huixiancheng/PCB-RandNet/blob/HEAD/evaluate_DIS_SemanticKITTI.py","link_basis":"harvester_set","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":"89cdbfea9999106d"}},{"code_sha256_prefix":"0ad12b1e8408e2f9","entry":"set_bn_momentum_default","repo":"huixiancheng/PCB-RandNet","repo_kind":"listed","path":"network/pytorch_utils.py","file_url":"https://github.com/huixiancheng/PCB-RandNet/blob/HEAD/network/pytorch_utils.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":"0ad12b1e8408e2f9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}