{"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/latent-noise-segmentation-how-neural-noise","title":"Latent Noise Segmentation: How Neural Noise Leads to the Emergence of Segmentation and Grouping","arxiv_id":"2309.16515","date":"2023-09-28","proceeding":null,"authors":["Ben Lonnqvist","Zhengqing Wu","Michael H. Herzog"],"abstract":"Humans are able to segment images effortlessly without supervision using perceptual grouping. Here, we propose a counter-intuitive computational approach to solving unsupervised perceptual grouping and segmentation: that they arise because of neural noise, rather than in spite of it. We (1) mathematically demonstrate that under realistic assumptions, neural noise can be used to separate objects from each other; (2) that adding noise in a DNN enables the network to segment images even though it was never trained on any segmentation labels; and (3) that segmenting objects using noise results in segmentation performance that aligns with the perceptual grouping phenomena observed in humans, and is sample-efficient. We introduce the Good Gestalt (GG) datasets -- six datasets designed to specifically test perceptual grouping, and show that our DNN models reproduce many important phenomena in human perception, such as illusory contours, closure, continuity, proximity, and occlusion. Finally, we (4) show that our model improves performance on our GG datasets compared to other tested unsupervised models by $24.9\\%$. Together, our results suggest a novel unsupervised segmentation method requiring few assumptions, a new explanation for the formation of perceptual grouping, and a novel potential benefit of neural noise.","url_abs":"https://arxiv.org/abs/2309.16515v3","url_pdf":"https://arxiv.org/pdf/2309.16515v3.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":"latent-noise-segmentation-how-neural-noise","repo_url":"https://github.com/zhengqinguuu/latentnoisesegmentation","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"GPL-3.0"}}],"tasks":[{"task_slug":"segmentation","task_name":"Segmentation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2309.16515","atlas_url":"https://app.syntology.ai/?focus=2309.16515","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2309.16515"}},"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":"deterministic:regex_extraction","url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zhengqinguuu/latentnoisesegmentation","reach":{"status":"ok","spdx":"GPL-3.0"}}],"summary":{"ran":9,"ran_fixture":1,"ran_honours":1,"ran_violates":1,"unverified":1},"by_repo_kind":{"official":{"samples":13,"ran":12,"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":13,"samples":[{"code_sha256_prefix":"85f2fb693c3b6956","entry":"A_in_B","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"umap_plotting.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/umap_plotting.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"85f2fb693c3b6956"}},{"code_sha256_prefix":"8c252d04248affd7","entry":"cuda","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"utils.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/utils.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"8c252d04248affd7"}},{"code_sha256_prefix":"0eb2228302f0ca96","entry":"generate_Image_from_ndarray","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"datasets/create_datasets.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/datasets/create_datasets.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"0eb2228302f0ca96"}},{"code_sha256_prefix":"6b7d57e23335630d","entry":"generate_possible_free_pixel_offset","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"datasets/create_datasets.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/datasets/create_datasets.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"6b7d57e23335630d"}},{"code_sha256_prefix":"f36b38e2b5d7683e","entry":"get_latest_version_folder","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"utils.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"f36b38e2b5d7683e"}},{"code_sha256_prefix":"8e97dcc43326b0c1","entry":"kl_divergence","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"solver.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/solver.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"8e97dcc43326b0c1"}},{"code_sha256_prefix":"1e726999714948ac","entry":"make_label_readable","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"umap_plotting.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/umap_plotting.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"1e726999714948ac"}},{"code_sha256_prefix":"849bb2b9f4368182","entry":"reconstruction_loss","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"solver.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/solver.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"849bb2b9f4368182"}},{"code_sha256_prefix":"863fc64cd51264f0","entry":"reparametrize","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"models.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/models.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"863fc64cd51264f0"}},{"code_sha256_prefix":"f790e3af7b531d70","entry":"return_color_hue_order_jpg","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"umap_plotting.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/umap_plotting.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"f790e3af7b531d70"}},{"code_sha256_prefix":"75b9f9771c727b95","entry":"return_data","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"dataloaders.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/dataloaders.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"75b9f9771c727b95"}},{"code_sha256_prefix":"f017532fc389cbfe","entry":"str2bool","repo":"ZhengqingUUU/LatentNoiseSegmentation","repo_kind":"official","path":"utils.py","file_url":"https://github.com/ZhengqingUUU/LatentNoiseSegmentation/blob/HEAD/utils.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"f017532fc389cbfe"}},{"code_sha256_prefix":"d182c62fb46c1bb1","entry":"NoisySegmentation","repo":"zhengqinguuu/latentnoisesegmentation","repo_kind":"official","path":"segmentation.py","file_url":"https://github.com/zhengqinguuu/latentnoisesegmentation/blob/HEAD/segmentation.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"d182c62fb46c1bb1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}