{"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/spiralnet-a-fast-and-highly-efficient-mesh","title":"SpiralNet++: A Fast and Highly Efficient Mesh Convolution Operator","arxiv_id":"1911.05856","date":"2019-11-13","proceeding":null,"authors":["Shunwang Gong","Lei Chen","Michael Bronstein","Stefanos Zafeiriou"],"abstract":"Intrinsic graph convolution operators with differentiable kernel functions play a crucial role in analyzing 3D shape meshes. In this paper, we present a fast and efficient intrinsic mesh convolution operator that does not rely on the intricate design of kernel function. We explicitly formulate the order of aggregating neighboring vertices, instead of learning weights between nodes, and then a fully connected layer follows to fuse local geometric structure information with vertex features. We provide extensive evidence showing that models based on this convolution operator are easier to train, and can efficiently learn invariant shape features. Specifically, we evaluate our method on three different types of tasks of dense shape correspondence, 3D facial expression classification, and 3D shape reconstruction, and show that it significantly outperforms state-of-the-art approaches while being significantly faster, without relying on shape descriptors. Our source code is available on GitHub.","url_abs":"https://arxiv.org/abs/1911.05856v1","url_pdf":"https://arxiv.org/pdf/1911.05856v1.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":"spiralnet-a-fast-and-highly-efficient-mesh","repo_url":"https://github.com/sw-gong/spiralnet_plus","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"3d-shape-reconstruction","task_name":"3D Shape Reconstruction"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1911.05856","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1911.05856"}},"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/sw-gong/spiralnet_plus","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_honours":2,"unverified":5},"by_repo_kind":{"official":{"samples":7,"ran":2,"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":"40a86b1ac589fada","entry":"col","repo":"sw-gong/spiralnet_plus","repo_kind":"official","path":"utils/mesh_sampling.py","file_url":"https://github.com/sw-gong/spiralnet_plus/blob/HEAD/utils/mesh_sampling.py","link_basis":"plan_row","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"40a86b1ac589fada"}},{"code_sha256_prefix":"5df4c010b67794cf","entry":"row","repo":"sw-gong/spiralnet_plus","repo_kind":"official","path":"utils/mesh_sampling.py","file_url":"https://github.com/sw-gong/spiralnet_plus/blob/HEAD/utils/mesh_sampling.py","link_basis":"plan_row","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5df4c010b67794cf"}},{"code_sha256_prefix":"d6bc50e5826e0639","entry":"get_vert_connectivity","repo":"sw-gong/spiralnet_plus","repo_kind":"official","path":"utils/mesh_sampling.py","file_url":"https://github.com/sw-gong/spiralnet_plus/blob/HEAD/utils/mesh_sampling.py","link_basis":"first_harvest_node","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":"d6bc50e5826e0639"}},{"code_sha256_prefix":"e493cee49e23de35","entry":"test","repo":"sw-gong/spiralnet_plus","repo_kind":"official","path":"correspondence/train_eval.py","file_url":"https://github.com/sw-gong/spiralnet_plus/blob/HEAD/correspondence/train_eval.py","link_basis":"first_harvest_node","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":"e493cee49e23de35"}},{"code_sha256_prefix":"174d4228a23fda23","entry":"test","repo":"sw-gong/spiralnet_plus","repo_kind":"official","path":"reconstruction/train_eval.py","file_url":"https://github.com/sw-gong/spiralnet_plus/blob/HEAD/reconstruction/train_eval.py","link_basis":"first_harvest_node","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":"174d4228a23fda23"}},{"code_sha256_prefix":"2012ac47376905f7","entry":"train","repo":"sw-gong/spiralnet_plus","repo_kind":"official","path":"correspondence/train_eval.py","file_url":"https://github.com/sw-gong/spiralnet_plus/blob/HEAD/correspondence/train_eval.py","link_basis":"first_harvest_node","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":"2012ac47376905f7"}},{"code_sha256_prefix":"5f92c0007cd5b74c","entry":"train","repo":"sw-gong/spiralnet_plus","repo_kind":"official","path":"reconstruction/train_eval.py","file_url":"https://github.com/sw-gong/spiralnet_plus/blob/HEAD/reconstruction/train_eval.py","link_basis":"first_harvest_node","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":"5f92c0007cd5b74c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}