{"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/qagait-revisit-gait-recognition-from-a","title":"QAGait: Revisit Gait Recognition from a Quality Perspective","arxiv_id":"2401.13531","date":"2024-01-24","proceeding":null,"authors":["Zengbin Wang","Saihui Hou","Man Zhang","Xu Liu","Chunshui Cao","Yongzhen Huang","Peipei Li","Shibiao Xu"],"abstract":"Gait recognition is a promising biometric method that aims to identify pedestrians from their unique walking patterns. Silhouette modality, renowned for its easy acquisition, simple structure, sparse representation, and convenient modeling, has been widely employed in controlled in-the-lab research. However, as gait recognition rapidly advances from in-the-lab to in-the-wild scenarios, various conditions raise significant challenges for silhouette modality, including 1) unidentifiable low-quality silhouettes (abnormal segmentation, severe occlusion, or even non-human shape), and 2) identifiable but challenging silhouettes (background noise, non-standard posture, slight occlusion). To address these challenges, we revisit gait recognition pipeline and approach gait recognition from a quality perspective, namely QAGait. Specifically, we propose a series of cost-effective quality assessment strategies, including Maxmial Connect Area and Template Match to eliminate background noises and unidentifiable silhouettes, Alignment strategy to handle non-standard postures. We also propose two quality-aware loss functions to integrate silhouette quality into optimization within the embedding space. Extensive experiments demonstrate our QAGait can guarantee both gait reliability and performance enhancement. Furthermore, our quality assessment strategies can seamlessly integrate with existing gait datasets, showcasing our superiority. Code is available at https://github.com/wzb-bupt/QAGait.","url_abs":"https://arxiv.org/abs/2401.13531v1","url_pdf":"https://arxiv.org/pdf/2401.13531v1.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":"qagait-revisit-gait-recognition-from-a","repo_url":"https://github.com/wzb-bupt/qagait","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"gait-recognition","task_name":"Gait Recognition"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2401.13531","atlas_url":"https://app.syntology.ai/?focus=2401.13531","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2401.13531"}},"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/wzb-bupt/qagait","reach":{"status":"ok"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/wzb-bupt/QAGait","reach":{"status":"ok"}}],"summary":{"ran":4,"ran_draft_wrong":2,"unverified":2},"by_repo_kind":{"official":{"samples":8,"ran":6,"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":8,"samples":[{"code_sha256_prefix":"83997e97170e137d","entry":"connect_area","repo":"wzb-bupt/QAGait","repo_kind":"official","path":"datasets/wild_connect_area.py","file_url":"https://github.com/wzb-bupt/QAGait/blob/HEAD/datasets/wild_connect_area.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"83997e97170e137d"}},{"code_sha256_prefix":"d9def42110729a85","entry":"conv1x1","repo":"wzb-bupt/QAGait","repo_kind":"official","path":"opengait/modeling/modules.py","file_url":"https://github.com/wzb-bupt/QAGait/blob/HEAD/opengait/modeling/modules.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d9def42110729a85"}},{"code_sha256_prefix":"160bb14bd76201b4","entry":"conv3x3","repo":"wzb-bupt/QAGait","repo_kind":"official","path":"opengait/modeling/modules.py","file_url":"https://github.com/wzb-bupt/QAGait/blob/HEAD/opengait/modeling/modules.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"160bb14bd76201b4"}},{"code_sha256_prefix":"3edf541d67bfb333","entry":"cut_image_resize","repo":"wzb-bupt/QAGait","repo_kind":"official","path":"datasets/wild_minAreaRect.py","file_url":"https://github.com/wzb-bupt/QAGait/blob/HEAD/datasets/wild_minAreaRect.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3edf541d67bfb333"}},{"code_sha256_prefix":"1453df8f6855833f","entry":"cut_image_resize","repo":"wzb-bupt/QAGait","repo_kind":"official","path":"datasets/wild_template.py","file_url":"https://github.com/wzb-bupt/QAGait/blob/HEAD/datasets/wild_template.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1453df8f6855833f"}},{"code_sha256_prefix":"de0144129637e6e8","entry":"setup_logger","repo":"wzb-bupt/QAGait","repo_kind":"official","path":"datasets/qagait_pretreatment.py","file_url":"https://github.com/wzb-bupt/QAGait/blob/HEAD/datasets/qagait_pretreatment.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"de0144129637e6e8"}},{"code_sha256_prefix":"86ca124dd0fd4f94","entry":"sils_align_minAreaRect","repo":"wzb-bupt/QAGait","repo_kind":"official","path":"datasets/wild_minAreaRect.py","file_url":"https://github.com/wzb-bupt/QAGait/blob/HEAD/datasets/wild_minAreaRect.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":"86ca124dd0fd4f94"}},{"code_sha256_prefix":"9ea9160d5e635833","entry":"template_match_dist_man_woman","repo":"wzb-bupt/QAGait","repo_kind":"official","path":"datasets/wild_template.py","file_url":"https://github.com/wzb-bupt/QAGait/blob/HEAD/datasets/wild_template.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":"9ea9160d5e635833"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}