{"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/deep-dual-consecutive-network-for-human-pose","title":"Deep Dual Consecutive Network for Human Pose Estimation","arxiv_id":"2103.07254","date":"2021-03-12","proceeding":"CVPR 2021 1","authors":["Zhenguang Liu","Haoming Chen","Runyang Feng","Shuang Wu","Shouling Ji","Bailin Yang","Xun Wang"],"abstract":"Multi-frame human pose estimation in complicated situations is challenging. Although state-of-the-art human joints detectors have demonstrated remarkable results for static images, their performances come short when we apply these models to video sequences. Prevalent shortcomings include the failure to handle motion blur, video defocus, or pose occlusions, arising from the inability in capturing the temporal dependency among video frames. On the other hand, directly employing conventional recurrent neural networks incurs empirical difficulties in modeling spatial contexts, especially for dealing with pose occlusions. In this paper, we propose a novel multi-frame human pose estimation framework, leveraging abundant temporal cues between video frames to facilitate keypoint detection. Three modular components are designed in our framework. A Pose Temporal Merger encodes keypoint spatiotemporal context to generate effective searching scopes while a Pose Residual Fusion module computes weighted pose residuals in dual directions. These are then processed via our Pose Correction Network for efficient refining of pose estimations. Our method ranks No.1 in the Multi-frame Person Pose Estimation Challenge on the large-scale benchmark datasets PoseTrack2017 and PoseTrack2018. We have released our code, hoping to inspire future research.","url_abs":"https://arxiv.org/abs/2103.07254v3","url_pdf":"https://arxiv.org/pdf/2103.07254v3.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":"deep-dual-consecutive-network-for-human-pose","repo_url":"https://github.com/Pose-Group/DCPose","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"keypoint-detection","task_name":"Keypoint Detection"},{"task_slug":"multi-person-pose-estimation","task_name":"Multi-Person Pose Estimation"},{"task_slug":"pose-estimation","task_name":"Pose Estimation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/multi-person-pose-estimation-on-posetrack2017","task":"Multi-Person Pose Estimation","dataset":"PoseTrack2017","model":"DCPose","rank_in_archive_order":1,"of":3,"metrics":{"Mean mAP":"79.2"},"uses_additional_data":true},{"leaderboard":"/sota/multi-person-pose-estimation-on-posetrack2018","task":"Multi-Person Pose Estimation","dataset":"PoseTrack2018","model":"DCPose","rank_in_archive_order":2,"of":4,"metrics":{"Mean mAP":"79"},"uses_additional_data":true}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2103.07254","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2103.07254"}},"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":"deterministic:regex_extraction","url":"https://github.com/Pose-Group/DCPose","reach":null}],"summary":{"ran":9,"ran_draft_wrong":2,"unverified":2},"by_repo_kind":{"official":{"samples":13,"ran":11,"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":"065f3aa69eb76a36","entry":"BaseModel","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"065f3aa69eb76a36"}},{"code_sha256_prefix":"ab85f167dd93d7c2","entry":"BasicBlock","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"ab85f167dd93d7c2"}},{"code_sha256_prefix":"5176a55bf25581f9","entry":"Bottleneck","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"5176a55bf25581f9"}},{"code_sha256_prefix":"41821c5a59e8c23f","entry":"DeformConv","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"41821c5a59e8c23f"}},{"code_sha256_prefix":"7c8d498a3673244d","entry":"DeformableCONV","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"7c8d498a3673244d"}},{"code_sha256_prefix":"d60eb2597157cdee","entry":"HighResolutionModule","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"d60eb2597157cdee"}},{"code_sha256_prefix":"39ffef63bb4c0766","entry":"Interpolate","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"39ffef63bb4c0766"}},{"code_sha256_prefix":"41b9660f3a4181b6","entry":"ModulatedDeformConv","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"41b9660f3a4181b6"}},{"code_sha256_prefix":"2c92cb30907f5117","entry":"Registry","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"2c92cb30907f5117"}},{"code_sha256_prefix":"e9bddedbc350840c","entry":"conv3x3","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e9bddedbc350840c"}},{"code_sha256_prefix":"c5ca0d92bc7d4f13","entry":"modulated_deform_conv","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c5ca0d92bc7d4f13"}},{"code_sha256_prefix":"03eae168dbab756c","entry":"DcPose_RSN","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"03eae168dbab756c"}},{"code_sha256_prefix":"cb186466299bdfc4","entry":"HRNet","repo":"Pose-Group/DCPose","repo_kind":"official","path":"posetimation/zoo/DcPose/dcpose_rsn.py","file_url":"https://github.com/Pose-Group/DCPose/blob/HEAD/posetimation/zoo/DcPose/dcpose_rsn.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":"cb186466299bdfc4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}