{"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/modeling-local-geometric-structure-of-3d","title":"Modeling Local Geometric Structure of 3D Point Clouds using Geo-CNN","arxiv_id":"1811.07782","date":"2018-11-19","proceeding":"CVPR 2019 6","authors":["Shiyi Lan","Ruichi Yu","Gang Yu","Larry S. Davis"],"abstract":"Recent advances in deep convolutional neural networks (CNNs) have motivated\nresearchers to adapt CNNs to directly model points in 3D point clouds. Modeling\nlocal structure has been proven to be important for the success of\nconvolutional architectures, and researchers exploited the modeling of local\npoint sets in the feature extraction hierarchy. However, limited attention has\nbeen paid to explicitly model the geometric structure amongst points in a local\nregion. To address this problem, we propose Geo-CNN, which applies a generic\nconvolution-like operation dubbed as GeoConv to each point and its local\nneighborhood. Local geometric relationships among points are captured when\nextracting edge features between the center and its neighboring points. We\nfirst decompose the edge feature extraction process onto three orthogonal\nbases, and then aggregate the extracted features based on the angles between\nthe edge vector and the bases. This encourages the network to preserve the\ngeometric structure in Euclidean space throughout the feature extraction\nhierarchy. GeoConv is a generic and efficient operation that can be easily\nintegrated into 3D point cloud analysis pipelines for multiple applications. We\nevaluate Geo-CNN on ModelNet40 and KITTI and achieve state-of-the-art\nperformance.","url_abs":"http://arxiv.org/abs/1811.07782v1","url_pdf":"http://arxiv.org/pdf/1811.07782v1.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":"modeling-local-geometric-structure-of-3d","repo_url":"https://github.com/cy69855522/Geo-CNN-Pytorch-PYG","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"modeling-local-geometric-structure-of-3d","repo_url":"https://github.com/voidrank/Geo-CNN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"modeling-local-geometric-structure","task_name":"Modeling Local Geometric Structure"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1811.07782","atlas_url":"https://app.syntology.ai/?focus=1811.07782","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1811.07782"}},"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/cy69855522/Geo-CNN-Pytorch-PYG","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/voidrank/Geo-CNN","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran_fixture":1,"ran":4,"ran_draft_wrong":1,"unverified":9},"by_repo_kind":{"listed":{"samples":15,"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":"aab935d4b7b55c2c","entry":"in_hull","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"kitti/dataset.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/kitti/dataset.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":2,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"aab935d4b7b55c2c"}},{"code_sha256_prefix":"50bdbf961c28b4b2","entry":"extract_pc_in_box3d","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"kitti/dataset.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/kitti/dataset.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"50bdbf961c28b4b2"}},{"code_sha256_prefix":"47397a2377a470c7","entry":"get_lidar_in_image_fov","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"kitti/kitti_object.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/kitti/kitti_object.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"47397a2377a470c7"}},{"code_sha256_prefix":"8843d80ab666c4e9","entry":"rotx","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"kitti/kitti_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/kitti/kitti_util.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8843d80ab666c4e9"}},{"code_sha256_prefix":"ae86074e10e1dfd7","entry":"roty","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"kitti/kitti_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/kitti/kitti_util.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ae86074e10e1dfd7"}},{"code_sha256_prefix":"082920adf6e29c94","entry":"rotz","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"kitti/kitti_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/kitti/kitti_util.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":"082920adf6e29c94"}},{"code_sha256_prefix":"18d51d8d06002af3","entry":"conv1d","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"models/tf_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/models/tf_util.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":"18d51d8d06002af3"}},{"code_sha256_prefix":"dd4ea839e0207aea","entry":"conv2d","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"models/tf_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/models/tf_util.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":"dd4ea839e0207aea"}},{"code_sha256_prefix":"c1c81b9614b5c990","entry":"extract_pc_in_box2d","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"kitti/dataset.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/kitti/dataset.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":"c1c81b9614b5c990"}},{"code_sha256_prefix":"3967747ca77d105b","entry":"get_box3d_corners","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"models/model_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/models/model_util.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":"3967747ca77d105b"}},{"code_sha256_prefix":"a40bf46fcddcbcc1","entry":"get_box3d_corners_helper","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"models/model_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/models/model_util.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":"a40bf46fcddcbcc1"}},{"code_sha256_prefix":"2877e6c3454ad533","entry":"perceptron","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"models/tf_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/models/tf_util.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":"2877e6c3454ad533"}},{"code_sha256_prefix":"142a56400c483118","entry":"sample_and_group_all","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"models/geoconv_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/models/geoconv_util.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":"142a56400c483118"}},{"code_sha256_prefix":"12502f21d75c671f","entry":"show_lidar_on_image","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"kitti/kitti_object.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/kitti/kitti_object.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":"12502f21d75c671f"}},{"code_sha256_prefix":"c2360b0773935ea1","entry":"tf_gather_object_pc","repo":"voidrank/Geo-CNN","repo_kind":"listed","path":"models/model_util.py","file_url":"https://github.com/voidrank/Geo-CNN/blob/HEAD/models/model_util.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":"c2360b0773935ea1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}