{"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/view-adaptive-neural-networks-for-high","title":"View Adaptive Neural Networks for High Performance Skeleton-based Human Action Recognition","arxiv_id":"1804.07453","date":"2018-04-20","proceeding":null,"authors":["Pengfei Zhang","Cuiling Lan","Junliang Xing","Wen-Jun Zeng","Jianru Xue","Nanning Zheng"],"abstract":"Skeleton-based human action recognition has recently attracted increasing attention thanks to the accessibility and the popularity of 3D skeleton data. One of the key challenges in skeleton-based action recognition lies in the large view variations when capturing data. In order to alleviate the effects of view variations, this paper introduces a novel view adaptation scheme, which automatically determines the virtual observation viewpoints in a learning based data driven manner. We design two view adaptive neural networks, i.e., VA-RNN based on RNN, and VA-CNN based on CNN. For each network, a novel view adaptation module learns and determines the most suitable observation viewpoints, and transforms the skeletons to those viewpoints for the end-to-end recognition with a main classification network. Ablation studies find that the proposed view adaptive models are capable of transforming the skeletons of various viewpoints to much more consistent virtual viewpoints which largely eliminates the viewpoint influence. In addition, we design a two-stream scheme (referred to as VA-fusion) that fuses the scores of the two networks to provide the fused prediction. Extensive experimental evaluations on five challenging benchmarks demonstrate that the effectiveness of the proposed view-adaptive networks and superior performance over state-of-the-art approaches. The source code is available at https://github.com/microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition.","url_abs":"https://arxiv.org/abs/1804.07453v3","url_pdf":"https://arxiv.org/pdf/1804.07453v3.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":"view-adaptive-neural-networks-for-high","repo_url":"https://github.com/microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"view-adaptive-neural-networks-for-high","repo_url":"https://github.com/iamjeff7/j-va-aagcn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"action-recognition-in-videos","task_name":"Action Recognition"},{"task_slug":"skeleton-based-action-recognition","task_name":"Skeleton Based Action Recognition"},{"task_slug":"action-recognition","task_name":"Temporal Action Localization"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/skeleton-based-action-recognition-on-n-ucla","task":"Skeleton Based Action Recognition","dataset":"N-UCLA","model":"VA-fusion (aug.)","rank_in_archive_order":24,"of":25,"metrics":{"Accuracy":"88.1%"},"uses_additional_data":false},{"leaderboard":"/sota/skeleton-based-action-recognition-on-ntu-rgbd","task":"Skeleton Based Action Recognition","dataset":"NTU RGB+D","model":"VA-fusion (aug.)","rank_in_archive_order":63,"of":135,"metrics":{"Accuracy (CS)":"89.4","Accuracy (CV)":"95.0"},"uses_additional_data":false},{"leaderboard":"/sota/skeleton-based-action-recognition-on-sbu","task":"Skeleton Based Action Recognition","dataset":"SBU / SBU-Refine","model":"VA-fusion (aug.)","rank_in_archive_order":3,"of":9,"metrics":{"Accuracy":"98.3%"},"uses_additional_data":false},{"leaderboard":"/sota/skeleton-based-action-recognition-on-sysu-3d","task":"Skeleton Based Action Recognition","dataset":"SYSU 3D","model":"VA-fusion (aug.)","rank_in_archive_order":2,"of":9,"metrics":{"Accuracy":"86.7%"},"uses_additional_data":false},{"leaderboard":"/sota/skeleton-based-action-recognition-on-uwa3d","task":"Skeleton Based Action Recognition","dataset":"UWA3D","model":"VA-fusion (aug.)","rank_in_archive_order":1,"of":3,"metrics":{"Accuracy":"81.4%"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1804.07453","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1804.07453"}},"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/microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/iamjeff7/j-va-aagcn","reach":null}],"summary":{"ran":2,"ran_draft_wrong":3,"ran_fixture":1,"unverified":6},"by_repo_kind":{"official":{"samples":3,"ran":2,"repositories":1},"listed":{"samples":9,"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":9,"samples":[{"code_sha256_prefix":"3a25e4f4f3e2102b","entry":"ViewAdaptive","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/va.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/va.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":"3a25e4f4f3e2102b"}},{"code_sha256_prefix":"a81543549eef1c99","entry":"_fusion","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/va.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/va.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":"a81543549eef1c99"}},{"code_sha256_prefix":"4a38057c7a246784","entry":"_trans_rot","repo":"microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition","repo_kind":"official","path":"transform_cnn.py","file_url":"https://github.com/microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition/blob/HEAD/transform_cnn.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":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4a38057c7a246784"}},{"code_sha256_prefix":"1c698afd2e4f3e16","entry":"_transform","repo":"microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition","repo_kind":"official","path":"transform_cnn.py","file_url":"https://github.com/microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition/blob/HEAD/transform_cnn.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1c698afd2e4f3e16"}},{"code_sha256_prefix":"3bfc6fc53c102f12","entry":"_transform_rot","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/va.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/va.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3bfc6fc53c102f12"}},{"code_sha256_prefix":"ffed4f85d50832c9","entry":"import_class","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/aagcn.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/aagcn.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ffed4f85d50832c9"}},{"code_sha256_prefix":"655d47879b934c04","entry":"VA","repo":"microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition","repo_kind":"official","path":"transform_cnn.py","file_url":"https://github.com/microsoft/View-Adaptive-Neural-Networks-for-Skeleton-based-Human-Action-Recognition/blob/HEAD/transform_cnn.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":"655d47879b934c04"}},{"code_sha256_prefix":"a6c3d7e8bad96f28","entry":"VA","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/va.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/va.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":"a6c3d7e8bad96f28"}},{"code_sha256_prefix":"a49db427a9440c7b","entry":"_rotation_x","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/va.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/va.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":"a49db427a9440c7b"}},{"code_sha256_prefix":"66343a6dce37f47c","entry":"_rotation_y","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/va.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/va.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":"66343a6dce37f47c"}},{"code_sha256_prefix":"8983aace45a9f5ed","entry":"_rotation_z","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/va.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/va.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":"8983aace45a9f5ed"}},{"code_sha256_prefix":"38921860dd10e647","entry":"_translate_by_centroid","repo":"iamjeff7/j-va-aagcn","repo_kind":"listed","path":"model/va.py","file_url":"https://github.com/iamjeff7/j-va-aagcn/blob/HEAD/model/va.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":"38921860dd10e647"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}