{"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/learning-generalisable-omni-scale","title":"Learning Generalisable Omni-Scale Representations for Person Re-Identification","arxiv_id":"1910.06827","date":"2019-10-15","proceeding":null,"authors":["Kaiyang Zhou","Yongxin Yang","Andrea Cavallaro","Tao Xiang"],"abstract":"An effective person re-identification (re-ID) model should learn feature representations that are both discriminative, for distinguishing similar-looking people, and generalisable, for deployment across datasets without any adaptation. In this paper, we develop novel CNN architectures to address both challenges. First, we present a re-ID CNN termed omni-scale network (OSNet) to learn features that not only capture different spatial scales but also encapsulate a synergistic combination of multiple scales, namely omni-scale features. The basic building block consists of multiple convolutional streams, each detecting features at a certain scale. For omni-scale feature learning, a unified aggregation gate is introduced to dynamically fuse multi-scale features with channel-wise weights. OSNet is lightweight as its building blocks comprise factorised convolutions. Second, to improve generalisable feature learning, we introduce instance normalisation (IN) layers into OSNet to cope with cross-dataset discrepancies. Further, to determine the optimal placements of these IN layers in the architecture, we formulate an efficient differentiable architecture search algorithm. Extensive experiments show that, in the conventional same-dataset setting, OSNet achieves state-of-the-art performance, despite being much smaller than existing re-ID models. In the more challenging yet practical cross-dataset setting, OSNet beats most recent unsupervised domain adaptation methods without using any target data. Our code and models are released at \\texttt{https://github.com/KaiyangZhou/deep-person-reid}.","url_abs":"https://arxiv.org/abs/1910.06827v5","url_pdf":"https://arxiv.org/pdf/1910.06827v5.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":"learning-generalisable-omni-scale","repo_url":"https://github.com/KaiyangZhou/deep-person-reid","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"learning-generalisable-omni-scale","repo_url":"https://github.com/LeDuySon/torchreid_uet_lab","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"learning-generalisable-omni-scale","repo_url":"https://github.com/MatthewAbugeja/osnet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"learning-generalisable-omni-scale","repo_url":"https://github.com/hukefei/deep-person-reid-master","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"learning-generalisable-omni-scale","repo_url":"https://github.com/jacobtyo/mudd","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"learning-generalisable-omni-scale","repo_url":"https://github.com/openvinotoolkit/deep-object-reid","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"learning-generalisable-omni-scale","repo_url":"https://github.com/tomektarabasz/deep_person_reid","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"learning-generalisable-omni-scale","repo_url":"https://github.com/MS-Mind/MS-Code-06/tree/main/osnet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null},{"paper_slug":"learning-generalisable-omni-scale","repo_url":"https://github.com/mszpc/osnet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null}],"tasks":[{"task_slug":"domain-adaptation","task_name":"Domain Adaptation"},{"task_slug":"person-re-identification","task_name":"Person Re-Identification"},{"task_slug":"unsupervised-domain-adaptation","task_name":"Unsupervised Domain Adaptation"},{"task_slug":"unsupervised-person-re-identification","task_name":"Unsupervised Person Re-Identification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/unsupervised-person-re-identification-on-1","task":"Unsupervised Person Re-Identification","dataset":"DukeMTMC-reID->Market-1501","model":"OSNet-AIN","rank_in_archive_order":5,"of":8,"metrics":{"Rank-1":"61","Rank-10":"82.5","Rank-5":"77","mAP":"30.6"},"uses_additional_data":false},{"leaderboard":"/sota/unsupervised-person-re-identification-on-6","task":"Unsupervised Person Re-Identification","dataset":"MSMT17->DukeMTMC-reID","model":"OSNet-AIN","rank_in_archive_order":1,"of":4,"metrics":{"Rank-1":"70.1","Rank-10":"88.6","Rank-5":"84.1","mAP":"43.3"},"uses_additional_data":false},{"leaderboard":"/sota/unsupervised-person-re-identification-on-7","task":"Unsupervised Person Re-Identification","dataset":"MSMT17->Market-1501","model":"OSNet-AIN","rank_in_archive_order":1,"of":3,"metrics":{"Rank-1":"71.1","Rank-10":"86.4","Rank-5":"83.3","mAP":"52.7"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1910.06827","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1910.06827"}},"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/jacobtyo/mudd","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/openvinotoolkit/deep-object-reid","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/MatthewAbugeja/osnet","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tomektarabasz/deep_person_reid","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/hukefei/deep-person-reid-master","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/KaiyangZhou/deep-person-reid","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/LeDuySon/torchreid_uet_lab","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/mszpc/osnet","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/MS-Mind/MS-Code-06/tree/main/osnet","reach":null}],"summary":{"ran_honours":1,"ran_draft_wrong":4,"ran_fixture":1,"unverified":3},"by_repo_kind":{"listed":{"samples":6,"ran":5,"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":6,"samples":[{"code_sha256_prefix":"a912fc7b24219286","entry":"file_size","repo":"jacobtyo/mudd","repo_kind":"listed","path":"tools/export.py","file_url":"https://github.com/jacobtyo/mudd/blob/HEAD/tools/export.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a912fc7b24219286"}},{"code_sha256_prefix":"c5cdc64a6b2b4eee","entry":"get_model_name","repo":"jacobtyo/mudd","repo_kind":"listed","path":"tools/export.py","file_url":"https://github.com/jacobtyo/mudd/blob/HEAD/tools/export.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c5cdc64a6b2b4eee"}},{"code_sha256_prefix":"b9e24c3e3e0e88a7","entry":"merge","repo":"mszpc/osnet","repo_kind":"listed","path":"osnet/model_utils/config.py","file_url":"https://github.com/mszpc/osnet/blob/HEAD/osnet/model_utils/config.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b9e24c3e3e0e88a7"}},{"code_sha256_prefix":"326803f4dfec5af1","entry":"osnet_x1_0","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"DEP_MISSING","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"326803f4dfec5af1"}},{"code_sha256_prefix":"ff75f4d130ead571","entry":"parse_cli_to_yaml","repo":"mszpc/osnet","repo_kind":"listed","path":"osnet/model_utils/config.py","file_url":"https://github.com/mszpc/osnet/blob/HEAD/osnet/model_utils/config.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ff75f4d130ead571"}},{"code_sha256_prefix":"8486896224aa5191","entry":"parse_yaml","repo":"mszpc/osnet","repo_kind":"listed","path":"osnet/model_utils/config.py","file_url":"https://github.com/mszpc/osnet/blob/HEAD/osnet/model_utils/config.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8486896224aa5191"}},{"code_sha256_prefix":"bae3b33459f2e29c","entry":"export_onnx","repo":"jacobtyo/mudd","repo_kind":"listed","path":"tools/export.py","file_url":"https://github.com/jacobtyo/mudd/blob/HEAD/tools/export.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bae3b33459f2e29c"}},{"code_sha256_prefix":"bd41824b39412f93","entry":"init_pretrained_weights","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"bd41824b39412f93"}},{"code_sha256_prefix":"33a8877d1eb68984","entry":"osnet_x0_75","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"33a8877d1eb68984"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}