{"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/human-motion-analysis-with-deep-metric","title":"Human Motion Analysis with Deep Metric Learning","arxiv_id":"1807.11176","date":"2018-07-30","proceeding":"ECCV 2018 9","authors":["Huseyin Coskun","David Joseph Tan","Sailesh Conjeti","Nassir Navab","Federico Tombari"],"abstract":"Effectively measuring the similarity between two human motions is necessary\nfor several computer vision tasks such as gait analysis, person identi-\nfication and action retrieval. Nevertheless, we believe that traditional\napproaches such as L2 distance or Dynamic Time Warping based on hand-crafted\nlocal pose metrics fail to appropriately capture the semantic relationship\nacross motions and, as such, are not suitable for being employed as metrics\nwithin these tasks. This work addresses this limitation by means of a\ntriplet-based deep metric learning specifically tailored to deal with human\nmotion data, in particular with the prob- lem of varying input size and\ncomputationally expensive hard negative mining due to motion pair alignment.\nSpecifically, we propose (1) a novel metric learn- ing objective based on a\ntriplet architecture and Maximum Mean Discrepancy; as well as, (2) a novel deep\narchitecture based on attentive recurrent neural networks. One benefit of our\nobjective function is that it enforces a better separation within the learned\nembedding space of the different motion categories by means of the associated\ndistribution moments. At the same time, our attentive recurrent neural network\nallows processing varying input sizes to a fixed size of embedding while\nlearning to focus on those motion parts that are semantically distinctive. Our\nex- periments on two different datasets demonstrate significant improvements\nover conventional human motion metrics.","url_abs":"http://arxiv.org/abs/1807.11176v2","url_pdf":"http://arxiv.org/pdf/1807.11176v2.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":"human-motion-analysis-with-deep-metric","repo_url":"https://github.com/dhesenkamp/attentive-lstm","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"human-motion-analysis-with-deep-metric","repo_url":"https://github.com/xrenaa/Human-Motion-Analysis-with-Deep-Metric-Learning","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"dynamic-time-warping","task_name":"Dynamic Time Warping"},{"task_slug":"metric-learning","task_name":"Metric Learning"},{"task_slug":"retrieval","task_name":"Retrieval"},{"task_slug":null,"task_name":"Triplet"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1807.11176","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1807.11176"}},"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/xrenaa/Human-Motion-Analysis-with-Deep-Metric-Learning","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/dhesenkamp/attentive-lstm","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":8},"by_repo_kind":{"listed":{"samples":8,"ran":0,"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":"dbe995781db97e28","entry":"create_batch","repo":"dhesenkamp/attentive-lstm","repo_kind":"listed","path":"util.py","file_url":"https://github.com/dhesenkamp/attentive-lstm/blob/HEAD/util.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":"dbe995781db97e28"}},{"code_sha256_prefix":"d5630fd28e883eb9","entry":"cut_sequences","repo":"dhesenkamp/attentive-lstm","repo_kind":"listed","path":"preprocessing.py","file_url":"https://github.com/dhesenkamp/attentive-lstm/blob/HEAD/preprocessing.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":"d5630fd28e883eb9"}},{"code_sha256_prefix":"ca2392922acf9318","entry":"downsample_data","repo":"dhesenkamp/attentive-lstm","repo_kind":"listed","path":"preprocessing.py","file_url":"https://github.com/dhesenkamp/attentive-lstm/blob/HEAD/preprocessing.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":"ca2392922acf9318"}},{"code_sha256_prefix":"224ff12b736dcb86","entry":"get_paths","repo":"dhesenkamp/attentive-lstm","repo_kind":"listed","path":"util.py","file_url":"https://github.com/dhesenkamp/attentive-lstm/blob/HEAD/util.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":"224ff12b736dcb86"}},{"code_sha256_prefix":"2ef10c89fefd5c31","entry":"kernel_function","repo":"dhesenkamp/attentive-lstm","repo_kind":"listed","path":"loss.py","file_url":"https://github.com/dhesenkamp/attentive-lstm/blob/HEAD/loss.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":"2ef10c89fefd5c31"}},{"code_sha256_prefix":"36f20b488dfdc730","entry":"mmd","repo":"dhesenkamp/attentive-lstm","repo_kind":"listed","path":"loss.py","file_url":"https://github.com/dhesenkamp/attentive-lstm/blob/HEAD/loss.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":"36f20b488dfdc730"}},{"code_sha256_prefix":"0cbbf3782585a4f8","entry":"mmd_nca_loss","repo":"dhesenkamp/attentive-lstm","repo_kind":"listed","path":"loss.py","file_url":"https://github.com/dhesenkamp/attentive-lstm/blob/HEAD/loss.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":"0cbbf3782585a4f8"}},{"code_sha256_prefix":"f05297cf22e98849","entry":"normalize_data","repo":"dhesenkamp/attentive-lstm","repo_kind":"listed","path":"preprocessing.py","file_url":"https://github.com/dhesenkamp/attentive-lstm/blob/HEAD/preprocessing.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":"f05297cf22e98849"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}