{"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/a-learning-strategy-for-contrast-agnostic-mri","title":"A Learning Strategy for Contrast-agnostic MRI Segmentation","arxiv_id":"2003.01995","date":"2020-03-04","proceeding":"MIDL 2019 7","authors":["Benjamin Billot","Douglas Greve","Koen van Leemput","Bruce Fischl","Juan Eugenio Iglesias","Adrian V. Dalca"],"abstract":"We present a deep learning strategy that enables, for the first time, contrast-agnostic semantic segmentation of completely unpreprocessed brain MRI scans, without requiring additional training or fine-tuning for new modalities. Classical Bayesian methods address this segmentation problem with unsupervised intensity models, but require significant computational resources. In contrast, learning-based methods can be fast at test time, but are sensitive to the data available at training. Our proposed learning method, SynthSeg, leverages a set of training segmentations (no intensity images required) to generate synthetic sample images of widely varying contrasts on the fly during training. These samples are produced using the generative model of the classical Bayesian segmentation framework, with randomly sampled parameters for appearance, deformation, noise, and bias field. Because each mini-batch has a different synthetic contrast, the final network is not biased towards any MRI contrast. We comprehensively evaluate our approach on four datasets comprising over 1,000 subjects and four types of MR contrast. The results show that our approach successfully segments every contrast in the data, performing slightly better than classical Bayesian segmentation, and three orders of magnitude faster. Moreover, even within the same type of MRI contrast, our strategy generalizes significantly better across datasets, compared to training using real images. Finally, we find that synthesizing a broad range of contrasts, even if unrealistic, increases the generalization of the neural network. Our code and model are open source at https://github.com/BBillot/SynthSeg.","url_abs":"https://arxiv.org/abs/2003.01995v3","url_pdf":"https://arxiv.org/pdf/2003.01995v3.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":"a-learning-strategy-for-contrast-agnostic-mri","repo_url":"https://github.com/BBillot/SynthSeg","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"a-learning-strategy-for-contrast-agnostic-mri","repo_url":"https://github.com/BBillot/hypothalamus_seg","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"a-learning-strategy-for-contrast-agnostic-mri","repo_url":"https://github.com/BBillot/lab2im","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null}],"tasks":[{"task_slug":"brain-segmentation","task_name":"Brain Segmentation"},{"task_slug":"mri-segmentation","task_name":"MRI segmentation"},{"task_slug":"segmentation","task_name":"Segmentation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/brain-segmentation-on-brain-mri-segmentation","task":"Brain Segmentation","dataset":"Brain MRI segmentation","model":"SynthSeg","rank_in_archive_order":1,"of":2,"metrics":{"Dice Scoe":"0.861","Dice Score":"0.8690000000000001"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2003.01995","atlas_url":"https://app.syntology.ai/?focus=2003.01995","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2003.01995"}},"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/BBillot/hypothalamus_seg","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/BBillot/lab2im","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/BBillot/SynthSeg","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":2,"unverified":7},"by_repo_kind":{"listed":{"samples":9,"ran":2,"repositories":2}},"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":"473e64d96ff495f2","entry":"dice","repo":"BBillot/hypothalamus_seg","repo_kind":"listed","path":"hypothalamus_seg/evaluate.py","file_url":"https://github.com/BBillot/hypothalamus_seg/blob/HEAD/hypothalamus_seg/evaluate.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":"473e64d96ff495f2"}},{"code_sha256_prefix":"20fee68d49715c2b","entry":"fast_dice","repo":"BBillot/hypothalamus_seg","repo_kind":"listed","path":"hypothalamus_seg/evaluate.py","file_url":"https://github.com/BBillot/hypothalamus_seg/blob/HEAD/hypothalamus_seg/evaluate.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":"20fee68d49715c2b"}},{"code_sha256_prefix":"de7c8ce7df00775b","entry":"ae","repo":"BBillot/hypothalamus_seg","repo_kind":"listed","path":"ext/neuron/models.py","file_url":"https://github.com/BBillot/hypothalamus_seg/blob/HEAD/ext/neuron/models.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":"de7c8ce7df00775b"}},{"code_sha256_prefix":"b149f1adf50c5f3c","entry":"blurring_sigma_for_downsampling","repo":"BBillot/hypothalamus_seg","repo_kind":"listed","path":"ext/lab2im/edit_tensors.py","file_url":"https://github.com/BBillot/hypothalamus_seg/blob/HEAD/ext/lab2im/edit_tensors.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":"b149f1adf50c5f3c"}},{"code_sha256_prefix":"b2cae58c1646a6d9","entry":"dilation_net","repo":"BBillot/hypothalamus_seg","repo_kind":"listed","path":"ext/neuron/models.py","file_url":"https://github.com/BBillot/hypothalamus_seg/blob/HEAD/ext/neuron/models.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":"b2cae58c1646a6d9"}},{"code_sha256_prefix":"f5072ba28ff3b675","entry":"get_shapes","repo":"BBillot/lab2im","repo_kind":"listed","path":"lab2im/lab2im_model.py","file_url":"https://github.com/BBillot/lab2im/blob/HEAD/lab2im/lab2im_model.py","link_basis":"first_harvest_node","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":"f5072ba28ff3b675"}},{"code_sha256_prefix":"cdddfcd6ab41fc05","entry":"lab2im_model","repo":"BBillot/hypothalamus_seg","repo_kind":"listed","path":"ext/lab2im/lab2im_model.py","file_url":"https://github.com/BBillot/hypothalamus_seg/blob/HEAD/ext/lab2im/lab2im_model.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":"cdddfcd6ab41fc05"}},{"code_sha256_prefix":"7053f37198d52faf","entry":"sobel_kernels","repo":"BBillot/hypothalamus_seg","repo_kind":"listed","path":"ext/lab2im/edit_tensors.py","file_url":"https://github.com/BBillot/hypothalamus_seg/blob/HEAD/ext/lab2im/edit_tensors.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":"7053f37198d52faf"}},{"code_sha256_prefix":"a3e1213061f59f1e","entry":"unet","repo":"BBillot/hypothalamus_seg","repo_kind":"listed","path":"ext/neuron/models.py","file_url":"https://github.com/BBillot/hypothalamus_seg/blob/HEAD/ext/neuron/models.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":"a3e1213061f59f1e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}