{"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/humans-need-not-label-more-humans-occlusion","title":"Humans need not label more humans: Occlusion Copy & Paste for Occluded Human Instance Segmentation","arxiv_id":"2210.03686","date":"2022-10-07","proceeding":null,"authors":["Evan Ling","Dezhao Huang","Minhoe Hur"],"abstract":"Modern object detection and instance segmentation networks stumble when picking out humans in crowded or highly occluded scenes. Yet, these are often scenarios where we require our detectors to work well. Many works have approached this problem with model-centric improvements. While they have been shown to work to some extent, these supervised methods still need sufficient relevant examples (i.e. occluded humans) during training for the improvements to be maximised. In our work, we propose a simple yet effective data-centric approach, Occlusion Copy & Paste, to introduce occluded examples to models during training - we tailor the general copy & paste augmentation approach to tackle the difficult problem of same-class occlusion. It improves instance segmentation performance on occluded scenarios for \"free\" just by leveraging on existing large-scale datasets, without additional data or manual labelling needed. In a principled study, we show whether various proposed add-ons to the copy & paste augmentation indeed contribute to better performance. Our Occlusion Copy & Paste augmentation is easily interoperable with any models: by simply applying it to a recent generic instance segmentation model without explicit model architectural design to tackle occlusion, we achieve state-of-the-art instance segmentation performance on the very challenging OCHuman dataset. Source code is available at https://github.com/levan92/occlusion-copy-paste.","url_abs":"https://arxiv.org/abs/2210.03686v1","url_pdf":"https://arxiv.org/pdf/2210.03686v1.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":"humans-need-not-label-more-humans-occlusion","repo_url":"https://github.com/levan92/occlusion-copy-paste","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"human-instance-segmentation","task_name":"Human Instance Segmentation"},{"task_slug":"instance-segmentation","task_name":"Instance Segmentation"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"segmentation","task_name":"Segmentation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/human-instance-segmentation-on-ochuman","task":"Human Instance Segmentation","dataset":"OCHuman","model":"Mask2Former + Occlusion C&P","rank_in_archive_order":5,"of":18,"metrics":{"AP":"28.3"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2210.03686","atlas_url":"https://app.syntology.ai/?focus=2210.03686","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2210.03686"}},"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/levan92/occlusion-copy-paste","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":4},"by_repo_kind":{"official":{"samples":4,"ran":4,"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":"a9536d9be497b236","entry":"check_kpts_oob","repo":"levan92/occlusion-copy-paste","repo_kind":"official","path":"Pose2Seg_OCP/datasets/OCP.py","file_url":"https://github.com/levan92/occlusion-copy-paste/blob/HEAD/Pose2Seg_OCP/datasets/OCP.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a9536d9be497b236"}},{"code_sha256_prefix":"ff72380105267a27","entry":"imrotate","repo":"levan92/occlusion-copy-paste","repo_kind":"official","path":"Pose2Seg_OCP/datasets/utils.py","file_url":"https://github.com/levan92/occlusion-copy-paste/blob/HEAD/Pose2Seg_OCP/datasets/utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ff72380105267a27"}},{"code_sha256_prefix":"569f655dba3a7a8b","entry":"intersect_kpts","repo":"levan92/occlusion-copy-paste","repo_kind":"official","path":"Pose2Seg_OCP/datasets/OCP.py","file_url":"https://github.com/levan92/occlusion-copy-paste/blob/HEAD/Pose2Seg_OCP/datasets/OCP.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"569f655dba3a7a8b"}},{"code_sha256_prefix":"4ee79a381e1020b1","entry":"translate_kpts","repo":"levan92/occlusion-copy-paste","repo_kind":"official","path":"Pose2Seg_OCP/datasets/OCP.py","file_url":"https://github.com/levan92/occlusion-copy-paste/blob/HEAD/Pose2Seg_OCP/datasets/OCP.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4ee79a381e1020b1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}