{"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/3d-segmentation-with-fully-trainable-gabor","title":"3D Segmentation with Fully Trainable Gabor Kernels and Pearson's Correlation Coefficient","arxiv_id":"2201.03644","date":"2022-01-10","proceeding":null,"authors":["Ken C. L. Wong","Mehdi Moradi"],"abstract":"The convolutional layer and loss function are two fundamental components in deep learning. Because of the success of conventional deep learning kernels, the less versatile Gabor kernels become less popular despite the fact that they can provide abundant features at different frequencies, orientations, and scales with much fewer parameters. For existing loss functions for multi-class image segmentation, there is usually a tradeoff among accuracy, robustness to hyperparameters, and manual weight selections for combining different losses. Therefore, to gain the benefits of using Gabor kernels while keeping the advantage of automatic feature generation in deep learning, we propose a fully trainable Gabor-based convolutional layer where all Gabor parameters are trainable through backpropagation. Furthermore, we propose a loss function based on the Pearson's correlation coefficient, which is accurate, robust to learning rates, and does not require manual weight selections. Experiments on 43 3D brain magnetic resonance images with 19 anatomical structures show that, using the proposed loss function with a proper combination of conventional and Gabor-based kernels, we can train a network with only 1.6 million parameters to achieve an average Dice coefficient of 83%. This size is 44 times smaller than the original V-Net which has 71 million parameters. This paper demonstrates the potentials of using learnable parametric kernels in deep learning for 3D segmentation.","url_abs":"https://arxiv.org/abs/2201.03644v2","url_pdf":"https://arxiv.org/pdf/2201.03644v2.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":"3d-segmentation-with-fully-trainable-gabor","repo_url":"https://github.com/ibm/multimodal-3d-image-segmentation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"deep-learning","task_name":"Deep Learning"},{"task_slug":"image-segmentation","task_name":"Image Segmentation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2201.03644","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2201.03644"}},"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/ibm/multimodal-3d-image-segmentation","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":20},"by_repo_kind":{"listed":{"samples":20,"ran":0,"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":"7e174dc6b463a5df","entry":"corrcoef","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/custom_losses.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/custom_losses.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":"7e174dc6b463a5df"}},{"code_sha256_prefix":"8c0f4545f7eb5aa7","entry":"corrcoef","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"tensorflow/nets/custom_losses.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/tensorflow/nets/custom_losses.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":"8c0f4545f7eb5aa7"}},{"code_sha256_prefix":"a35f5fa643476fe2","entry":"dht2","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/dht.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/dht.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":"a35f5fa643476fe2"}},{"code_sha256_prefix":"9cdf8a087accb760","entry":"dht3","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/dht.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/dht.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":"9cdf8a087accb760"}},{"code_sha256_prefix":"bb9a2c9ca1e9ce68","entry":"dhtn","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/dht.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/dht.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":"bb9a2c9ca1e9ce68"}},{"code_sha256_prefix":"69cccec0515e3734","entry":"dice_binary","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"experiments/metrics.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/experiments/metrics.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":"69cccec0515e3734"}},{"code_sha256_prefix":"c0f7dcb15e62da45","entry":"dice_coef","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/custom_losses.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/custom_losses.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":"c0f7dcb15e62da45"}},{"code_sha256_prefix":"a28ccf455345f250","entry":"dice_coef","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"tensorflow/nets/custom_losses.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/tensorflow/nets/custom_losses.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":"a28ccf455345f250"}},{"code_sha256_prefix":"438db1ab4cce15b9","entry":"get_reverse","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/hartley_operator.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/hartley_operator.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":"438db1ab4cce15b9"}},{"code_sha256_prefix":"54c46b96c5bc7e74","entry":"get_spatial_padcrop","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/nets_utils.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/nets_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":"54c46b96c5bc7e74"}},{"code_sha256_prefix":"5eb6566103ab65ba","entry":"grouping2d","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/hartley_mha.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/hartley_mha.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":"5eb6566103ab65ba"}},{"code_sha256_prefix":"19d38b4c1b50a3dd","entry":"grouping3d","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/hartley_mha.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/hartley_mha.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":"19d38b4c1b50a3dd"}},{"code_sha256_prefix":"21a07b6a8cfc8b0c","entry":"hartley_conv","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/hartley_operator.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/hartley_operator.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":"21a07b6a8cfc8b0c"}},{"code_sha256_prefix":"75b9413017c2330b","entry":"normalize_data","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"experiments/utils.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/experiments/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":"75b9413017c2330b"}},{"code_sha256_prefix":"98138151a337f841","entry":"normalize_modalities","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"experiments/utils.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/experiments/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":"98138151a337f841"}},{"code_sha256_prefix":"21672f9602e64a31","entry":"pcc_loss","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"tensorflow/nets/custom_losses.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/tensorflow/nets/custom_losses.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":"21672f9602e64a31"}},{"code_sha256_prefix":"478c218f97db90f1","entry":"spatial_padcrop","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/nets_utils.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/nets_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":"478c218f97db90f1"}},{"code_sha256_prefix":"c448fb68d0f2e025","entry":"to_categorical","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"experiments/utils.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/experiments/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":"c448fb68d0f2e025"}},{"code_sha256_prefix":"2ba406a7b5e08d61","entry":"ungrouping2d","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/hartley_mha.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/hartley_mha.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":"2ba406a7b5e08d61"}},{"code_sha256_prefix":"e3e49350747f516f","entry":"upsampling","repo":"ibm/multimodal-3d-image-segmentation","repo_kind":"listed","path":"nets/architectures.py","file_url":"https://github.com/ibm/multimodal-3d-image-segmentation/blob/HEAD/nets/architectures.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":"e3e49350747f516f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}