{"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/benchmarking-and-analyzing-point-cloud","title":"Benchmarking and Analyzing Point Cloud Classification under Corruptions","arxiv_id":"2202.03377","date":"2022-02-07","proceeding":null,"authors":["Jiawei Ren","Liang Pan","Ziwei Liu"],"abstract":"3D perception, especially point cloud classification, has achieved substantial progress. However, in real-world deployment, point cloud corruptions are inevitable due to the scene complexity, sensor inaccuracy, and processing imprecision. In this work, we aim to rigorously benchmark and analyze point cloud classification under corruptions. To conduct a systematic investigation, we first provide a taxonomy of common 3D corruptions and identify the atomic corruptions. Then, we perform a comprehensive evaluation on a wide range of representative point cloud models to understand their robustness and generalizability. Our benchmark results show that although point cloud classification performance improves over time, the state-of-the-art methods are on the verge of being less robust. Based on the obtained observations, we propose several effective techniques to enhance point cloud classifier robustness. We hope our comprehensive benchmark, in-depth analysis, and proposed techniques could spark future research in robust 3D perception.","url_abs":"https://arxiv.org/abs/2202.03377v3","url_pdf":"https://arxiv.org/pdf/2202.03377v3.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":"benchmarking-and-analyzing-point-cloud","repo_url":"https://github.com/jiawei-ren/modelnetc","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"benchmarking-and-analyzing-point-cloud","repo_url":"https://github.com/ldkong1205/PointCloud-C","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"benchmarking-and-analyzing-point-cloud","repo_url":"https://github.com/yossilevii100/critical_points2","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"benchmarking-and-analyzing-point-cloud","repo_url":"https://github.com/yossilevii100/refocusing","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"benchmarking","task_name":"Benchmarking"},{"task_slug":"classification-1","task_name":"Classification"},{"task_slug":"point-cloud-classification","task_name":"Point Cloud Classification"}],"methods":[],"datasets_introduced":[{"slug":"pointcloud-c","name":"PointCloud-C","full_name":""}],"methods_introduced":[],"results":[{"leaderboard":"/sota/point-cloud-classification-on-pointcloud-c","task":"Point Cloud Classification","dataset":"PointCloud-C","model":"WOLFMix (GDANet)","rank_in_archive_order":8,"of":24,"metrics":{"mean Corruption Error (mCE)":"0.571"},"uses_additional_data":false},{"leaderboard":"/sota/point-cloud-classification-on-pointcloud-c","task":"Point Cloud Classification","dataset":"PointCloud-C","model":"WOLFMix (DGCNN)","rank_in_archive_order":9,"of":24,"metrics":{"mean Corruption Error (mCE)":"0.590"},"uses_additional_data":false},{"leaderboard":"/sota/point-cloud-classification-on-pointcloud-c","task":"Point Cloud Classification","dataset":"PointCloud-C","model":"WOLFMix (RPC)","rank_in_archive_order":10,"of":24,"metrics":{"mean Corruption Error (mCE)":"0.601"},"uses_additional_data":false},{"leaderboard":"/sota/point-cloud-classification-on-pointcloud-c","task":"Point Cloud Classification","dataset":"PointCloud-C","model":"RPC","rank_in_archive_order":13,"of":24,"metrics":{"mean Corruption Error (mCE)":"0.863"},"uses_additional_data":false},{"leaderboard":"/sota/point-cloud-classification-on-pointcloud-c","task":"Point Cloud Classification","dataset":"PointCloud-C","model":"WOLFMix (PointNet)","rank_in_archive_order":23,"of":24,"metrics":{"mean Corruption Error (mCE)":"1.180"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2202.03377","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2202.03377"}},"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/yossilevii100/critical_points2","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jiawei-ren/modelnetc","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ldkong1205/PointCloud-C","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/yossilevii100/refocusing","reach":{"status":"ok"}}],"summary":{"ran_fixture":4,"ran":2,"unverified":7},"by_repo_kind":{"official":{"samples":13,"ran":6,"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":"9a8756778dd8234a","entry":"get_graph_feature","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"PointWOLF/model.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/PointWOLF/model.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9a8756778dd8234a"}},{"code_sha256_prefix":"cdd0141594039dcb","entry":"knn","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"PointWOLF/model.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/PointWOLF/model.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cdd0141594039dcb"}},{"code_sha256_prefix":"1bfbbe6bae6f8e29","entry":"load_h5","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"modelnetc_utils/modelnetc_utils/dataset.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/modelnetc_utils/modelnetc_utils/dataset.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1bfbbe6bae6f8e29"}},{"code_sha256_prefix":"adb85367d5bf360a","entry":"rotate_point_cloud","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"GDANet/provider.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/GDANet/provider.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"adb85367d5bf360a"}},{"code_sha256_prefix":"06353aadebc1724b","entry":"shuffle_data","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"GDANet/provider.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/GDANet/provider.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"06353aadebc1724b"}},{"code_sha256_prefix":"a97f76b9c0811c93","entry":"shuffle_points","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"GDANet/provider.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/GDANet/provider.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a97f76b9c0811c93"}},{"code_sha256_prefix":"b5dd3f043c271b69","entry":"corrupt_jitter","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"build_modelnetc/corrupt_utils.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/build_modelnetc/corrupt_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b5dd3f043c271b69"}},{"code_sha256_prefix":"a260494677ed35d8","entry":"corrupt_rotate","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"build_modelnetc/corrupt_utils.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/build_modelnetc/corrupt_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a260494677ed35d8"}},{"code_sha256_prefix":"8f0a929253e9f007","entry":"corrupt_scale","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"build_modelnetc/corrupt_utils.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/build_modelnetc/corrupt_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8f0a929253e9f007"}},{"code_sha256_prefix":"d26265da343f8191","entry":"cut_points","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"GDANet/rsmix_provider.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/GDANet/rsmix_provider.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d26265da343f8191"}},{"code_sha256_prefix":"f3bf3d79146b55df","entry":"cut_points_knn","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"GDANet/rsmix_provider.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/GDANet/rsmix_provider.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f3bf3d79146b55df"}},{"code_sha256_prefix":"a7032e8191925cc0","entry":"knn_points","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"GDANet/rsmix_provider.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/GDANet/rsmix_provider.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a7032e8191925cc0"}},{"code_sha256_prefix":"6002e0aaef533772","entry":"load_data","repo":"jiawei-ren/modelnetc","repo_kind":"official","path":"build_modelnetc/corrupt.py","file_url":"https://github.com/jiawei-ren/modelnetc/blob/HEAD/build_modelnetc/corrupt.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6002e0aaef533772"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}