{"id":40896465,"url":"https://github.com/cschell/xr-motion-dataset-conversion-scripts","last_synced_at":"2026-01-22T02:23:52.347Z","repository":{"id":217511684,"uuid":"743869802","full_name":"cschell/xr-motion-dataset-conversion-scripts","owner":"cschell","description":"This repository contains Python scripts capable of converting various XR motion datasets into our proposed standardized format. The aim is to streamline data handling and analysis processes in XR research by promoting a consistent format across different datasets.","archived":false,"fork":false,"pushed_at":"2024-04-20T12:02:52.000Z","size":31,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-10T06:39:02.284Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cschell.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-01-16T06:54:50.000Z","updated_at":"2024-04-20T12:02:55.000Z","dependencies_parsed_at":"2025-09-10T05:04:17.497Z","dependency_job_id":"06002ced-eb94-4a8a-a0f1-b41a92903298","html_url":"https://github.com/cschell/xr-motion-dataset-conversion-scripts","commit_stats":null,"previous_names":["cschell/xr-motion-dataset-conversion-scripts"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cschell/xr-motion-dataset-conversion-scripts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cschell%2Fxr-motion-dataset-conversion-scripts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cschell%2Fxr-motion-dataset-conversion-scripts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cschell%2Fxr-motion-dataset-conversion-scripts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cschell%2Fxr-motion-dataset-conversion-scripts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cschell","download_url":"https://codeload.github.com/cschell/xr-motion-dataset-conversion-scripts/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cschell%2Fxr-motion-dataset-conversion-scripts/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28651385,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-22T02:23:52.294Z","updated_at":"2026-01-22T02:23:52.343Z","avatar_url":"https://github.com/cschell.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# XR Motion Dataset Conversion Tool\n\nWelcome to our XR Motion Dataset Conversion repository. This tool is designed for researchers and developers\nworking with XR motion datasets, providing a unified and standardized approach to handling these datasets as proposed in\nour [paper](https://cschell.github.io/kinematic-maze).\n\n## About This Repository\n\nThis repository contains Python scripts capable of converting various XR motion datasets into our proposed standardized\nformat. The aim is to streamline data handling and analysis processes in XR research by promoting a consistent format across\ndifferent datasets.\n\n## Standardized Format\n\nOur `convert.py` scripts transform each XR motion dataset into a uniform format following our proposed\nspecifications, which includes:\n\n1. **Coordinate System:** X: Right, Y: Up, Z: Forward (RUF)\n2. **Units of Measurement**: Centimeters\n3. **Representation of Rotation:** Quaternions\n4. **Time Encoding**: Column with relative time in milliseconds\n5. **File Structure**: Column mapping:\n    - `delta_time_ms`\n    - `head_pos_x`\n    - `head_pos_y`\n    - `head_pos_z`\n    - `head_rot_x`\n    - `head_rot_y`\n    - `head_rot_z`\n    - `head_rot_w`\n    - `left_hand_pos_x`\n    - `left_hand_pos_y`\n    - `left_hand_pos_z`\n    - `left_hand_rot_x`\n    - `left_hand_rot_y`\n    - `left_hand_rot_z`\n    - `left_hand_rot_w`\n    - `right_hand_pos_x`\n    - `right_hand_pos_y`\n    - `right_hand_pos_z`\n    - `right_hand_rot_x`\n    - `right_hand_rot_y`\n    - `right_hand_rot_z`\n    - `right_hand_rot_w`\n6. **File Format:** CSV\n\n## Setup Instructions\n\nBefore you can use these scripts, you need to set up your environment:\n\n1. Clone this repository to your local machine.\n2. Install the necessary dependencies by running:\n\n```bash\npip install -r requirements.txt\n```\n\n## Usage\n\nFor each dataset, there is one module with a conversion script. To do the conversion yourself, create a\nscript, and import the respective module. For example, to convert the Who Is Alyx? dataset, you can follow\nthese steps:\n\n1. download the dataset (see links in the table below).\n2. create a Python script in this directory\n3. import and use the conversion script:\n```python\nimport who_is_alyx\n\nconverter = who_is_alyx.convert(dataset_path=\"path/to/the/downloaded/dataset\")\n\n# the returned tuple returned by `converter` differs for each dataset, please check\n# the source code of `convert` for details\nfor recording, (user, session) in converter:\n   print(f\"loaded session {session} of user {user}\")\n\n   recording # this is your pandas DataFrame with the loaded recording\n```\n4. if you want to convert and store the whole dataset, you can use `convert_and_store`:\n```python\nimport who_is_alyx\n\nwho_is_alyx.convert_and_store(\n        dataset_path=\"path/to/the/downloaded/dataset\",\n        output_path=\"path/to/converted/dataset\",\n        format=\"csv\" # or \"parquet\"\n    )\n```\n\nYou can check out [xr_motion_dataset_catalogue_conversion.py] as an example – this is the script we used to\nconvert each dataset for the [XR Motion Dataset Catalogue](https://huggingface.co/datasets/cschell/xr-motion-dataset-catalogue).\n\n## Dataset Overview\n\nThis repository provides conversion scripts for the datasets in the table below. Follow the source links\nto download desired datasets. We have also uploaded most of theese datasets into our\n[XR Motion Dataset Catalogue](https://huggingface.co/datasets/cschell/xr-motion-dataset-catalogue),\nso you can go there for quick and easy access of already converted and aligned datasets.\n\n| Dataset Name       | Description                                                                                                                                                 |\n| ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| LiebersLabStudy21  | Users performing specific bowling and archery motions.                                                                                                      | [source](https://www.hci.wiwi.uni-due.de/en/publikationen/understanding-user-identification-in-virtual-reality-through-behavioral-biometrics-and-the-effect-of-body-normalization/) |\n| LiebersHand22      | Users performing interactions with various interface elements, such as buttons and sliders, in AR and VR environments for motion-based user identification. | [source](https://www.hci.wiwi.uni-due.de/en/publications/identifying-users-by-their-hand-tracking-data-in-augmented-and-virtual-reality)                                            |\n| RMillerBall22      | Users performing ball throwing actions in VR.                                                                                                               | [source](https://github.com/Terascale-All-sensing-Research-Studio/VR-Biometric-Authentication)                                                                                      |\n| Who-Is-Alyx        | Users playing the game 'Half-Life: Alyx' in VR.                                                                                                             | [source](https://github.com/cschell/who-is-alyx)                                                                                                                                    |\n| BOXRR              | Users playing the game Beat Saber and Tilt Brush in VR.                                                                                                     | [source](https://rdi.berkeley.edu/metaverse/boxrr-23/)                                                                                                                              |\n| LiebersBeatSaber23 | Users playing the game Beat Saber.                                                                                                                          | [source](https://www.hci.wiwi.uni-due.de/en/publikationen/exploring-the-stability-of-behavioral-biometrics-in-virtual-reality-in-a-remote-field-study/)                             |\n| MooreCrossDomain23 | Users performing assembly tasks in VR.                                                                                                                      | [source](https://github.com/tapiralec/Identifying_Virtual_Reality_Users_Across_Domain_Specific_Tasks)                                                                               |\n| VR.net             | Users playing various VR games, designed for cybersickness research.                                                                                        | [source](https://vrnet.ahlab.org)                                                                                                                                                   |\n\n## License\n\nThis project is licensed under Creative Commons. Please see the LICENSE file for more details.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcschell%2Fxr-motion-dataset-conversion-scripts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcschell%2Fxr-motion-dataset-conversion-scripts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcschell%2Fxr-motion-dataset-conversion-scripts/lists"}