{"id":45374670,"url":"https://github.com/mobilise-d/mobgap","last_synced_at":"2026-02-21T16:00:59.128Z","repository":{"id":229043441,"uuid":"685937416","full_name":"mobilise-d/mobgap","owner":"mobilise-d","description":"The Mobilise-D algorithm toolbox - Implemented in Python","archived":false,"fork":false,"pushed_at":"2025-11-30T21:55:03.000Z","size":20108,"stargazers_count":44,"open_issues_count":18,"forks_count":9,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-12-03T07:34:18.550Z","etag":null,"topics":["accelerometer","imu-sensor","movement-analysis","research"],"latest_commit_sha":null,"homepage":"https://mobgap.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mobilise-d.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-09-01T11:03:25.000Z","updated_at":"2025-11-30T21:55:07.000Z","dependencies_parsed_at":"2024-12-18T13:36:13.251Z","dependency_job_id":"b636eeb2-56ab-4a96-83d1-488baab4220b","html_url":"https://github.com/mobilise-d/mobgap","commit_stats":null,"previous_names":["mobilise-d/mobgap"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/mobilise-d/mobgap","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobilise-d%2Fmobgap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobilise-d%2Fmobgap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobilise-d%2Fmobgap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobilise-d%2Fmobgap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mobilise-d","download_url":"https://codeload.github.com/mobilise-d/mobgap/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobilise-d%2Fmobgap/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29685018,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-21T15:51:39.154Z","status":"ssl_error","status_checked_at":"2026-02-21T15:49:03.425Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["accelerometer","imu-sensor","movement-analysis","research"],"created_at":"2026-02-21T16:00:58.448Z","updated_at":"2026-02-21T16:00:59.122Z","avatar_url":"https://github.com/mobilise-d.png","language":"Python","readme":"\u003e [!NOTE]\n\u003e We recently released Mobgap 1.0, marking the first release with fully re-validated algorithms!\n\u003e We highly recommend updating to the 1.0 release. We will not actively support versions \u003c 1.0\n\u003e \n\u003e To learn more about the revalidation of the algorithms, visit [the documentation](https://mobgap.readthedocs.io/en/latest/auto_revalidation/index.html).\n\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"./docs/_static/logo/mobilise_d_and_imi.png\" height=\"200\"\u003e\n\u003c/p\u003e\n\n[![PyPI](https://img.shields.io/pypi/v/mobgap)](https://pypi.org/project/mobgap/)\n[![Documentation Status](https://readthedocs.org/projects/mobgap/badge/?version=latest)](https://mobgap.readthedocs.io/en/latest/?badge=latest)\n[![DOI](https://zenodo.org/badge/685937416.svg)](https://doi.org/10.5281/zenodo.14035833)\n[![codecov](https://codecov.io/gh/mobilise-d/mobgap/branch/main/graph/badge.svg?token=ZNVT5LNYHO)](https://codecov.io/gh/mobilise-d/mobgap)\n[![Test and Lint](https://github.com/mobilise-d/mobgap/actions/workflows/test-and-lint.yml/badge.svg?branch=main)](https://github.com/mobilise-d/mobgap/actions/workflows/test-and-lint.yml)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/mobgap)\n\n# MobGap - The Mobilise-D algorithm toolbox\n\nA Python implementation of the Mobilise-D algorithm pipeline for gait analysis using IMU worn at the lower back\n(Learn more about [the Mobilise-D project](https://mobilise-d.eu)).\nThis package is meant as reference implementation for research and production use.\n\nWe are open to contributions and feedback, and are actively interested in expanding the library beyond its current scope\nand include algorithms and tools, that would allow mobgap to grow into a general purpose library for gait and mobility\nanalysis.\n\n\n## Installation\n\nFirst install a supported Python version (3.9 or higher) and then install the package using pip.\n\n\u003e [!WARNING]\n\u003e Python 3.14 is supported, but our current `pywavelets\u003c1.9` pin resolves to `pywavelets 1.8.x`, which has no pre-built\n\u003e `cp314` wheels and may require a source build during installation.\n\u003e For the smoothest installation experience, we currently recommend Python 3.13.\n\u003e We are tracking the PyWavelets upgrade/unpin work in https://github.com/mobilise-d/mobgap/issues/228.\n\n```bash\npip install mobgap\n```\n\n### From Source\n\nIf you need the latest unreleased version of mobgap, install the package using pip (or poetry) with the git repository URL\n\n\n```bash\npip install \"git+https://github.com/mobilise-d/mobgap.git\" --upgrade\n```\n\nIf you run into problems, clone the repository and install the package locally.\n\n```bash\ngit clone https://github.com/mobilise-d/mobgap.git\ncd mobgap\npip install .\n```\n\nOr the equivalent commands of the python package manager you are using to install local dependencies.\n\n## Citing\n\nIf you are using mobgap in your research or work, we would like to ask you to mention the library in your publications.\nFor papers, we recommend citing the library using the following reference:\n\n```\nKüderle, A., Tasca, P., Bicer, M., Kirk, C., Megaritis, D., Hinchliffe, C., Stihi, A., Muecke, A., Babar, Z., Kluge, F., Mueller, \nA., Mazzà, C., Del Din, S., Cereatti, A., Rochester, L., Rooks, D., \u0026 Caulfield, B. \nMobGap [Computer software]. https://doi.org/10.5281/zenodo.14035833 URL: https://github.com/mobilise-d/mobgap/ \n```\n\n```\n@software{Kuderle_MobGap,\n   author = {Küderle, Arne and Tasca, Paolo and Bicer, Metin and Kirk, Cameron and Megaritis, Dimitrios and Hinchliffe, Chloe and\n    Stihi, Alexandru and Muecke, Annika and Babar, Zamal and Kluge, Felix and Mueller, Arne and Mazzà, Claudia \n    and Del Din, Silvia and Cereatti, Andrea and Rochester, Lynn and Rooks, Daniel and Caulfield, Brian},\n   license = {Apache-2.0},\n   title = {{MobGap}},\n   url = {https://github.com/mobilise-d/mobgap/}\n   doi = {10.5281/zenodo.14035833},\n }\n```\n\nFor concrete examples on how to cite the library in your work, see the [Usage Recommendation](#usage-recommendation) \nsection below.\n\n## Usage Recommendation\n\nThe package is designed to be used in two modes:\n\n1. Usage as a full end-to-end pipeline:\n\n   We provide high level pipelines that take in raw sensor data and output final gait parameters on a walking bout\n   level, and on various aggregation levels (e.g. per day or per week).\n   These pipelines were validated as part of the Technical Validation Study of Mobilise-D and are the **recommended**\n   way to obtain gait parameters according to the Mobilise-D algorithms.\n   Depending on the clinical cohort and the amount of gait impairment, we recommend different pipelines.\n   When using the pipelines in the recommended way, you can expect error ranges as reported in [[1]].\n   Outside, this recommended use case, we cannot provide any supported evidence about the correctness of the results.\n\n   If you are using the pipelines in this way, we recommend citing [[1], [2]] and mobgap [[3]] itself as follows:\n   \n   \u003e Gait parameters were obtained using the Mobilise-D algorithm pipeline [[1], [2]] in its official implementation\n   \u003e provided with the mobgap Python library [[3]] version {insert version you used}.\n\n   In general, we would like to ask you to be precise about the version of the mobgap library you used and only\n   use the term \"Mobilise-D algorithm pipeline\" if you used the pipelines as described in the technical validation\n   study and not when you just use individual algorithms (see point 2) or use the pipelines with modified parameters.\n\n   In the latter case, we recommend the following citation:\n\n   \u003e Gait parameters were obtained using an approach inspired by Mobilise-D algorithm pipeline [[1], [2]].\n   \u003e The algorithm pipeline was implemented based on {name of Pipeline class} available as part of the mobgap Python\n   \u003e library [[3]] version {insert version you used} with the following modifications:\n   \u003e {insert modifications you made}.\n   \n   ```\n   [1] Kirk, C., Küderle, A., Micó-Amigo, M.E. et al. Mobilise-D insights to estimate real-world walking speed in \n   multiple conditions with a wearable device. Sci Rep 14, 1754 (2024). \n   https://doi.org/10.1038/s41598-024-51766-5\n   \n   [2] Micó-Amigo, M., Bonci, T., Paraschiv-Ionescu, A. et al. Assessing real-world gait with digital technology? \n   Validation, insights and recommendations from the Mobilise-D consortium. J NeuroEngineering Rehabil 20, 78 (2023). \n   https://doi.org/10.1186/s12984-023-01198-5\n   \n   [3] Küderle, A., Tasca, P., Bicer, M., Kirk, C., Megaritis, D., Hinchliffe, C., Stihi, A., Muecke, A., Babar, Z., Kluge, F., Mueller, \n   A., Mazzà, C., Del Din, S., Cereatti, A., Rochester, L., Rooks, D., \u0026 Caulfield, B. \n   MobGap [Computer software]. https://doi.org/10.5281/zenodo.14035833 URL: https://github.com/mobilise-d/mobgap/ \n   ```\n\n2. Usage of individual algorithms:\n\n   Besides the pipelines, we also provide individual algorithms to be used independently or in custom pipelines.\n   This can be helpful to build highly customized pipelines in a research context.\n   But be aware that for most algorithms, we did not perform a specific validation outside the context of the official\n   pipelines.\n   Hence, we urge you to perform thorough validation of the algorithms in your specific use case.\n\n   If you are using individual algorithms in this way, we recommend citing the original papers the algorithms were\n   proposed in and mobgap as a software library.\n   You can find the best references for each algorithm in the documentation of the respective algorithm.\n\n   \u003e Gait parameters were obtained using the {name of algorithm} algorithm [algo-citation] as implemented in the\n   \u003e mobgap Python library [[3]] version {insert version you used}.\n\n   ```\n   [3] Küderle, A., Tasca, P., Bicer, M., Kirk, C., Megaritis, D., Hinchliffe, C., Stihi, A., Muecke, A., Babar, Z., Kluge, F., Mueller, \n   A., Mazzà, C., Del Din, S., Cereatti, A., Rochester, L., Rooks, D., \u0026 Caulfield, B. \n   MobGap [Computer software]. https://doi.org/10.5281/zenodo.14035833 URL: https://github.com/mobilise-d/mobgap/ \n   ```\n\n[1]: https://doi.org/10.1038/s41598-024-51766-5\n[2]: https://doi.org/10.1186/s12984-023-01198-5\n[3]: https://github.com/mobilise-d/mobgap/\n\n## Used by\n\n\u003cp float=\"left\"\u003e\n   \u003cimg src=\"./docs/_static/used_by_logos/mobilise_d_logo.png\" alt=\"Mobilise-D logo\" height=\"25\" align=\"bottom\"\u003e  \n   \u003cimg src=\"./docs/_static/used_by_logos/actigraph_logo.svg\" alt=\"Actigraph logo\" height=\"25\" align=\"bottom\"\u003e\n   \u003cimg src=\"./docs/_static/used_by_logos/empatica-logo-full-red.png\" alt=\"Empatica logo\" height=\"28\" align=\"bottom\"\u003e\n   \u003cimg src=\"./docs/_static/used_by_logos/mc_roberts.png\" alt=\"McRoberts logo\" height=\"23\" align=\"bottom\"\u003e\n   \u003cimg src=\"./docs/_static/used_by_logos/clario.png\" alt=\"Clarios logo\" height=\"33\" align=\"bottom\"\u003e\n\u003c/p\u003e  \n\nWhile mobgap is a relatively young project, it is used in multiple projects and by multiple companies.\nBelow a list (in no particular order) of projects and companies that use mobgap:\n\n- [Mobilise-D](https://mobilise-d.eu): (obviously)\n- [ActiGraph](https://theactigraph.com): [Learn\nmore](https://blog.theactigraph.com/blog/mobilise-d-algorithms-centrepoint-integration)\n- [Empatica](https://www.empatica.com): [Learn\nmore](https://www.empatica.com/blog/empatica-announces-integration-of-mobilise-d-mobility-outcomes,-advancing-toward-unified-solution-for-clinical-professionals.html)\n- [McRoberts](https://www.mcroberts.nl): [Learn more](https://www.mcroberts.nl/)\n- [Clario](https://clario.com/solutions/precision-motion/): [Learn more](https://clario.com/about/newsroom/clario-joins-forces-with-mobilise-d-to-advance-digital-mobility-outcomes-in-clinical-trials/)\n\nIf you are using mobgap in your project or company and would like to be listed here, please let us know via Github \nIssues or Email.\n\n## License and Usage of Names\n\nThe library was developed under the lead of the Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU) as part of \n[the Mobilise-D project](https://mobilise-d.eu). \nThe original copyright lies with the Machine Learning and Data Analytics Lab\n([MAD Lab](https://www.mad.tf.fau.de/)) at the FAU (See [NOTICE](./NOTICE)).\nFor any legal inquiries regarding copyright, contact \n[Björn Eskofier](https://www.mad.tf.fau.de/person/bjoern-eskofier/).\nCopyright of any community contributions remains with the respective code authors.\n\nThe mobgap library is licensed under an Apache 2.0 license.\nThis means it is free to use for any purpose (including commercial use), but you have to include the license text\nin any distribution of the code.\nSee the [LICENSE](./LICENSE) file for the full license text.\n\nPlease note that this software comes with no warranty, all code is provided as is.\nIn particular, we do not guarantee any correctness of the results, algorithmic performance or any other properties\nof the software.\nThis software is not a medical product nor licensed for medical use.\n\nNeither the name \"Mobilise-D\" nor \"mobgap\" are registered trademarks.\nHowever, we ask you to use the names appropriately when working with this software.\nIdeally, we recommend using the names as described in the usage recommendation above and not use the name \n\"Mobilise-D algorithm pipeline\" for any custom pipelines or pipelines with modified parameters.\nIf in doubt, feel free ask using the [Github issue tracker](https://github.com/mobilise-d/mobgap/issues) or \nthe Github discussions.\n\n\n## Development Setup\n\nIf you are planning to make any changes to the code, follow \n[this guide](https://mobgap.readthedocs.io/en/latest/guides/developer_guide.html)\n\nTo run typical development tasks, you can use the provided [poethepoet](https://github.com/nat-n/poethepoet) commands:\n\n```\n\u003e\u003e\u003e poetry run poe\n...\nCONFIGURED TASKS\n  format                      \n  format_unsafe               \n  lint                        Lint all files with ruff.\n  ci_check                    Check all potential format and linting issues.\n  test                        Run Pytest with coverage.\n  test_ci                     Run Pytest with coverage and fail on missing snapshots.\n  docs                        Build the html docs using Sphinx.\n  docs_clean                  Remove all old build files and build a clean version of the docs.\n  docs_linkcheck              Check all links in the built html docs.\n  docs_preview                Preview the built html docs.\n  version                     Bump the version number in all relevant files.\n  conf_jupyter                Add a new jupyter kernel for the project.\n  remove_jupyter              Remove the project specific jupyter kernel.\n  update_example_data         Update the example data registry.\n```\n\nBefore you push, you should run the `format`, `lint` and `test` task to make sure your code is in a good state.\n\n### Note about tests\n\nSome of the tests can only be executed when certain data is available.\nTo make sure that the tests concerning the TVS dataset are run, you need to export an environment variable\nwith the path to the TVS dataset.\n\n```bash\nMOBGAP_TVS_DATASET_PATH=\"/path/to/tvs/dataset\" poe test\n```\n\n## Funding and Support\n\nThis work was supported by the Mobilise-D project that has received funding from the Innovative Medicines Initiative 2 \nJoint Undertaking (JU) under grant agreement No. 820820.\nThis JU receives support from the European Union‘s Horizon 2020 research and innovation program and the European \nFederation of Pharmaceutical Industries and Associations (EFPIA).\nContent in this publication reflects the authors‘ view and neither IMI nor the European Union, EFPIA, or any Associated \nPartners are responsible for any use that may be made of the information contained herein.\n\nAnd of course, this development was only made possible by the joint work of all Mobilise-D partners.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"./docs/_static/logo/mobilise_d_partners.png\" height=\"400\"\u003e\n\u003c/p\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmobilise-d%2Fmobgap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmobilise-d%2Fmobgap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmobilise-d%2Fmobgap/lists"}