{"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/are-nuclear-masks-all-you-need-for-improved","title":"Are nuclear masks all you need for improved out-of-domain generalisation? A closer look at cancer classification in histopathology","arxiv_id":"2411.09373","date":"2024-11-14","proceeding":null,"authors":["Dhananjay Tomar","Alexander Binder","Andreas Kleppe"],"abstract":"Domain generalisation in computational histopathology is challenging because the images are substantially affected by differences among hospitals due to factors like fixation and staining of tissue and imaging equipment. We hypothesise that focusing on nuclei can improve the out-of-domain (OOD) generalisation in cancer detection. We propose a simple approach to improve OOD generalisation for cancer detection by focusing on nuclear morphology and organisation, as these are domain-invariant features critical in cancer detection. Our approach integrates original images with nuclear segmentation masks during training, encouraging the model to prioritise nuclei and their spatial arrangement. Going beyond mere data augmentation, we introduce a regularisation technique that aligns the representations of masks and original images. We show, using multiple datasets, that our method improves OOD generalisation and also leads to increased robustness to image corruptions and adversarial attacks. The source code is available at https://github.com/undercutspiky/SFL/","url_abs":"https://arxiv.org/abs/2411.09373v1","url_pdf":"https://arxiv.org/pdf/2411.09373v1.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":"are-nuclear-masks-all-you-need-for-improved","repo_url":"https://github.com/undercutspiky/sfl","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"all","task_name":"All"},{"task_slug":"cancer-classification","task_name":"Cancer Classification"},{"task_slug":"data-augmentation","task_name":"Data Augmentation"},{"task_slug":"nuclear-segmentation","task_name":"Nuclear Segmentation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2411.09373","atlas_url":"https://app.syntology.ai/?focus=2411.09373","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2411.09373"}},"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/undercutspiky/sfl","reach":null}],"summary":{"ran_draft_wrong":1,"unverified":1},"by_repo_kind":{"official":{"samples":2,"ran":1,"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":"201863646013c93d","entry":"get_optimizer_and_scheduler","repo":"undercutspiky/sfl","repo_kind":"official","path":"configs/config_sfl.py","file_url":"https://github.com/undercutspiky/sfl/blob/HEAD/configs/config_sfl.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"201863646013c93d"}},{"code_sha256_prefix":"b2ca4138d8fb6c46","entry":"Camelyon17DatasetWithMasks","repo":"undercutspiky/sfl","repo_kind":"official","path":"datasets/camelyon17.py","file_url":"https://github.com/undercutspiky/sfl/blob/HEAD/datasets/camelyon17.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":"b2ca4138d8fb6c46"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}