{"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/lifting-transformer-for-3d-human-pose","title":"Exploiting Temporal Contexts with Strided Transformer for 3D Human Pose Estimation","arxiv_id":"2103.14304","date":"2021-03-26","proceeding":null,"authors":["Wenhao Li","Hong Liu","Runwei Ding","Mengyuan Liu","Pichao Wang","Wenming Yang"],"abstract":"Despite the great progress in 3D human pose estimation from videos, it is still an open problem to take full advantage of a redundant 2D pose sequence to learn representative representations for generating one 3D pose. To this end, we propose an improved Transformer-based architecture, called Strided Transformer, which simply and effectively lifts a long sequence of 2D joint locations to a single 3D pose. Specifically, a Vanilla Transformer Encoder (VTE) is adopted to model long-range dependencies of 2D pose sequences. To reduce the redundancy of the sequence, fully-connected layers in the feed-forward network of VTE are replaced with strided convolutions to progressively shrink the sequence length and aggregate information from local contexts. The modified VTE is termed as Strided Transformer Encoder (STE), which is built upon the outputs of VTE. STE not only effectively aggregates long-range information to a single-vector representation in a hierarchical global and local fashion, but also significantly reduces the computation cost. Furthermore, a full-to-single supervision scheme is designed at both full sequence and single target frame scales applied to the outputs of VTE and STE, respectively. This scheme imposes extra temporal smoothness constraints in conjunction with the single target frame supervision and hence helps produce smoother and more accurate 3D poses. The proposed Strided Transformer is evaluated on two challenging benchmark datasets, Human3.6M and HumanEva-I, and achieves state-of-the-art results with fewer parameters. Code and models are available at \\url{https://github.com/Vegetebird/StridedTransformer-Pose3D}.","url_abs":"https://arxiv.org/abs/2103.14304v8","url_pdf":"https://arxiv.org/pdf/2103.14304v8.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":"lifting-transformer-for-3d-human-pose","repo_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"3d-human-pose-estimation","task_name":"3D Human Pose Estimation"},{"task_slug":"monocular-3d-human-pose-estimation","task_name":"Monocular 3D Human Pose Estimation"},{"task_slug":"pose-estimation","task_name":"Pose Estimation"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/3d-human-pose-estimation-on-human36m","task":"3D Human Pose Estimation","dataset":"Human3.6M","model":"StridedTransformer (T=351)","rank_in_archive_order":31,"of":88,"metrics":{"Average MPJPE (mm)":"43.7","Multi-View or Monocular":"Monocular","Using 2D ground-truth joints":"No"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-pose-estimation-on-human36m","task":"3D Human Pose Estimation","dataset":"Human3.6M","model":"StridedTransformer (T=243)","rank_in_archive_order":32,"of":88,"metrics":{"Average MPJPE (mm)":"44","Multi-View or Monocular":"Monocular","Using 2D ground-truth joints":"No"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-pose-estimation-on-human36m","task":"3D Human Pose Estimation","dataset":"Human3.6M","model":"StridedTransformer (T=81)","rank_in_archive_order":46,"of":88,"metrics":{"Average MPJPE (mm)":"45.4","Multi-View or Monocular":"Monocular","Using 2D ground-truth joints":"No"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-pose-estimation-on-human36m","task":"3D Human Pose Estimation","dataset":"Human3.6M","model":"StridedTransformer (T=27)","rank_in_archive_order":50,"of":88,"metrics":{"Average MPJPE (mm)":"46.9","Multi-View or Monocular":"Monocular","Using 2D ground-truth joints":"No"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-pose-estimation-on-humaneva-i","task":"3D Human Pose Estimation","dataset":"HumanEva-I","model":"StridedTransformer (T=27 GT)","rank_in_archive_order":2,"of":31,"metrics":{"Mean Reconstruction Error (mm)":"12.2"},"uses_additional_data":false},{"leaderboard":"/sota/3d-human-pose-estimation-on-humaneva-i","task":"3D Human Pose Estimation","dataset":"HumanEva-I","model":"StridedTransformer (T=27 MRCNN)","rank_in_archive_order":9,"of":31,"metrics":{"Mean Reconstruction Error (mm)":"18.9"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2103.14304","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2103.14304"}},"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/Vegetebird/StridedTransformer-Pose3D","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":3,"unverified":7},"by_repo_kind":{"official":{"samples":10,"ran":3,"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":"f3a0f7cf8690505f","entry":"coco_h36m","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"demo/lib/preprocess.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/demo/lib/preprocess.py","link_basis":"plan_row","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":"f3a0f7cf8690505f"}},{"code_sha256_prefix":"85be84dc21eb6ce3","entry":"h36m_coco_format","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"demo/lib/preprocess.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/demo/lib/preprocess.py","link_basis":"plan_row","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":"85be84dc21eb6ce3"}},{"code_sha256_prefix":"b9f70678ddc9add2","entry":"revise_kpts","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"demo/lib/preprocess.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/demo/lib/preprocess.py","link_basis":"plan_row","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":"b9f70678ddc9add2"}},{"code_sha256_prefix":"0892bc8406224611","entry":"camera_to_world","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"common/camera.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/common/camera.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0892bc8406224611"}},{"code_sha256_prefix":"ec58bab810b80366","entry":"deterministic_random","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"common/utils.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/common/utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ec58bab810b80366"}},{"code_sha256_prefix":"c5148aea3c7b76b6","entry":"mpjpe_cal","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"common/utils.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/common/utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c5148aea3c7b76b6"}},{"code_sha256_prefix":"82baf6aa4fb040a1","entry":"normalize_screen_coordinates","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"common/camera.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/common/camera.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"82baf6aa4fb040a1"}},{"code_sha256_prefix":"912a1369d1563d3b","entry":"show2Dpose","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"demo/vis.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/demo/vis.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"912a1369d1563d3b"}},{"code_sha256_prefix":"d8222b9b5b8b97c9","entry":"test_calculation","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"common/utils.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/common/utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d8222b9b5b8b97c9"}},{"code_sha256_prefix":"32eca53ede0ea499","entry":"world_to_camera","repo":"Vegetebird/StridedTransformer-Pose3D","repo_kind":"official","path":"common/camera.py","file_url":"https://github.com/Vegetebird/StridedTransformer-Pose3D/blob/HEAD/common/camera.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"32eca53ede0ea499"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}