mobgap
The Mobilise-D algorithm toolbox - Implemented in Python
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 17 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (17.9%) to scientific vocabulary
Keywords
Repository
The Mobilise-D algorithm toolbox - Implemented in Python
Basic Info
- Host: GitHub
- Owner: mobilise-d
- License: apache-2.0
- Language: Python
- Default Branch: main
- Homepage: https://mobgap.readthedocs.io
- Size: 19.6 MB
Statistics
- Stars: 39
- Watchers: 5
- Forks: 7
- Open Issues: 17
- Releases: 13
Topics
Metadata Files
README.md
[!NOTE] We recently released Mobgap 1.0, marking the first release with fully re-validated algorithms! We highly recommend updating to the 1.0 release. We will not actively support versions < 1.0
To learn more about the revalidation of the algorithms, visit the documentation.
MobGap - The Mobilise-D algorithm toolbox
A Python implementation of the Mobilise-D algorithm pipeline for gait analysis using IMU worn at the lower back (Learn more about the Mobilise-D project). This package is meant as reference implementation for research and production use.
We are open to contributions and feedback, and are actively interested in expanding the library beyond its current scope and include algorithms and tools, that would allow mobgap to grow into a general purpose library for gait and mobility analysis.
Installation
First install a supported Python version (3.9 or higher) and then install the package using pip.
bash
pip install mobgap
From Source
If you need the latest unreleased version of mobgap, install the package using pip (or poetry) with the git repository URL
bash
pip install "git+https://github.com/mobilise-d/mobgap.git" --upgrade
If you run into problems, clone the repository and install the package locally.
bash
git clone https://github.com/mobilise-d/mobgap.git
cd mobgap
pip install .
Or the equivalent commands of the python package manager you are using to install local dependencies.
Citing
If you are using mobgap in your research or work, we would like to ask you to mention the library in your publications. For papers, we recommend citing the library using the following reference:
Küderle, A., Tasca, P., Bicer, M., Kirk, C., Megaritis, D., Hinchliffe, C., Stihi, A., Muecke, A., Babar, Z., Kluge, F., Mueller,
A., Mazzà, C., Del Din, S., Cereatti, A., Rochester, L., Rooks, D., & Caulfield, B.
MobGap [Computer software]. https://doi.org/10.5281/zenodo.14035833 URL: https://github.com/mobilise-d/mobgap/
@software{Kuderle_MobGap,
author = {Küderle, Arne and Tasca, Paolo and Bicer, Metin and Kirk, Cameron and Megaritis, Dimitrios and Hinchliffe, Chloe and
Stihi, Alexandru and Muecke, Annika and Babar, Zamal and Kluge, Felix and Mueller, Arne and Mazzà, Claudia
and Del Din, Silvia and Cereatti, Andrea and Rochester, Lynn and Rooks, Daniel and Caulfield, Brian},
license = {Apache-2.0},
title = {{MobGap}},
url = {https://github.com/mobilise-d/mobgap/}
doi = {10.5281/zenodo.14035833},
}
For concrete examples on how to cite the library in your work, see the Usage Recommendation section below.
Usage Recommendation
The package is designed to be used in two modes:
- Usage as a full end-to-end pipeline:
We provide high level pipelines that take in raw sensor data and output final gait parameters on a walking bout level, and on various aggregation levels (e.g. per day or per week). These pipelines were validated as part of the Technical Validation Study of Mobilise-D and are the recommended way to obtain gait parameters according to the Mobilise-D algorithms. Depending on the clinical cohort and the amount of gait impairment, we recommend different pipelines. When using the pipelines in the recommended way, you can expect error ranges as reported in [1]. Outside, this recommended use case, we cannot provide any supported evidence about the correctness of the results.
If you are using the pipelines in this way, we recommend citing [1, 2] and mobgap [3] itself as follows:
Gait parameters were obtained using the Mobilise-D algorithm pipeline [1, 2] in its official implementation provided with the mobgap Python library [3] version {insert version you used}.
In general, we would like to ask you to be precise about the version of the mobgap library you used and only use the term "Mobilise-D algorithm pipeline" if you used the pipelines as described in the technical validation study and not when you just use individual algorithms (see point 2) or use the pipelines with modified parameters.
In the latter case, we recommend the following citation:
Gait parameters were obtained using an approach inspired by Mobilise-D algorithm pipeline [1, 2]. The algorithm pipeline was implemented based on {name of Pipeline class} available as part of the mobgap Python library [3] version {insert version you used} with the following modifications: {insert modifications you made}.
``` 1 Kirk, C., Küderle, A., Micó-Amigo, M.E. et al. Mobilise-D insights to estimate real-world walking speed in multiple conditions with a wearable device. Sci Rep 14, 1754 (2024). https://doi.org/10.1038/s41598-024-51766-5
2 Micó-Amigo, M., Bonci, T., Paraschiv-Ionescu, A. et al. Assessing real-world gait with digital technology? Validation, insights and recommendations from the Mobilise-D consortium. J NeuroEngineering Rehabil 20, 78 (2023). https://doi.org/10.1186/s12984-023-01198-5
3 Küderle, A., Tasca, P., Bicer, M., Kirk, C., Megaritis, D., Hinchliffe, C., Stihi, A., Muecke, A., Babar, Z., Kluge, F., Mueller, A., Mazzà, C., Del Din, S., Cereatti, A., Rochester, L., Rooks, D., & Caulfield, B. MobGap [Computer software]. https://doi.org/10.1177/0894439316660340 URL: https://github.com/mobilise-d/mobgap/ ```
- Usage of individual algorithms:
Besides the pipelines, we also provide individual algorithms to be used independently or in custom pipelines. This can be helpful to build highly customized pipelines in a research context. But be aware that for most algorithms, we did not perform a specific validation outside the context of the official pipelines. Hence, we urge you to perform thorough validation of the algorithms in your specific use case.
If you are using individual algorithms in this way, we recommend citing the original papers the algorithms were proposed in and mobgap as a software library. You can find the best references for each algorithm in the documentation of the respective algorithm.
Gait parameters were obtained using the {name of algorithm} algorithm [algo-citation] as implemented in the mobgap Python library [3] version {insert version you used}.
[3] Küderle, A., Tasca, P., Bicer, M., Kirk, C., Megaritis, D., Hinchliffe, C., Stihi, A., Muecke, A., Babar, Z., Kluge, F., Mueller,
A., Mazzà, C., Del Din, S., Cereatti, A., Rochester, L., Rooks, D., & Caulfield, B.
MobGap [Computer software]. https://doi.org/10.1177/0894439316660340 URL: https://github.com/mobilise-d/mobgap/
Used by
While mobgap is a relatively young project, it is used in multiple projects and by multiple companies. Below a list (in no particular order) of projects and companies that use mobgap:
- Mobilise-D: (obviously)
- ActiGraph: Learn more
- Empatica: Learn more
- McRoberts: Learn more
If you are using mobgap in your project or company and would like to be listed here, please let us know via Github Issues or Email.
License and Usage of Names
The library was developed under the lead of the Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU) as part of the Mobilise-D project. The original copyright lies with the Machine Learning and Data Analytics Lab (MAD Lab) at the FAU (See NOTICE). For any legal inquiries regarding copyright, contact Björn Eskofier. Copyright of any community contributions remains with the respective code authors.
The mobgap library is licensed under an Apache 2.0 license. This means it is free to use for any purpose (including commercial use), but you have to include the license text in any distribution of the code. See the LICENSE file for the full license text.
Please note that this software comes with no warranty, all code is provided as is. In particular, we do not guarantee any correctness of the results, algorithmic performance or any other properties of the software. This software is not a medical product nor licensed for medical use.
Neither the name "Mobilise-D" nor "mobgap" are registered trademarks. However, we ask you to use the names appropriately when working with this software. Ideally, we recommend using the names as described in the usage recommendation above and not use the name "Mobilise-D algorithm pipeline" for any custom pipelines or pipelines with modified parameters. If in doubt, feel free ask using the Github issue tracker or the Github discussions.
Development Setup
If you are planning to make any changes to the code, follow this guide
To run typical development tasks, you can use the provided poethepoet commands:
```
poetry run poe ... CONFIGURED TASKS format
formatunsafe
lint Lint all files with ruff. cicheck Check all potential format and linting issues. test Run Pytest with coverage. testci Run Pytest with coverage and fail on missing snapshots. docs Build the html docs using Sphinx. docsclean Remove all old build files and build a clean version of the docs. docslinkcheck Check all links in the built html docs. docspreview Preview the built html docs. version Bump the version number in all relevant files. confjupyter Add a new jupyter kernel for the project. removejupyter Remove the project specific jupyter kernel. updateexampledata Update the example data registry. ```
Before you push, you should run the format, lint and test task to make sure your code is in a good state.
Note about tests
Some of the tests can only be executed when certain data is available. To make sure that the tests concerning the TVS dataset are run, you need to export an environment variable with the path to the TVS dataset.
bash
MOBGAP_TVS_DATASET_PATH="/path/to/tvs/dataset" poe test
Funding and Support
This work was supported by the Mobilise-D project that has received funding from the Innovative Medicines Initiative 2 Joint Undertaking (JU) under grant agreement No. 820820. This JU receives support from the European Union‘s Horizon 2020 research and innovation program and the European Federation of Pharmaceutical Industries and Associations (EFPIA). Content in this publication reflects the authors‘ view and neither IMI nor the European Union, EFPIA, or any Associated Partners are responsible for any use that may be made of the information contained herein.
And of course, this development was only made possible by the joint work of all Mobilise-D partners.
Owner
- Name: Mobilise-D
- Login: mobilise-d
- Kind: organization
- Website: https://www.mobilise-d.eu
- Repositories: 3
- Profile: https://github.com/mobilise-d
Connecting digital mobility assessment to clinical outcomes for regulatory and clinical endorsement
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: MobGap
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Arne
family-names: Küderle
email: arne.kuederle@fau.de
affiliation: Friedrich-Alexander-Universität Erlangen-Nürnberg
orcid: 'https://orcid.org/0000-0002-5686-281X'
- given-names: Paolo
family-names: Tasca
email: paolo.tasca@polito.it
affiliation: Politecnico di Torino
orcid: 'https://orcid.org/0009-0008-7157-3451'
- given-names: Metin
family-names: Bicer
email: metin.bicer@newcastle.ac.uk
affiliation: Newcastle University
orcid: 'https://orcid.org/0000-0002-9491-2080'
- given-names: Cameron
family-names: Kirk
email: cameron.kirk@newcastle.ac.uk
affiliation: Newcastle University
orcid: 'https://orcid.org/0000-0003-2508-5816'
- given-names: Dimitrios
family-names: Megaritis
orcid: 'https://orcid.org/0000-0001-6786-4346'
email: d.megaritis@northumbria.ac.uk
affiliation: Newcastle University
- given-names: Chloe
family-names: Hinchliffe
email: chloe.hinchliffe@newcastle.ac.uk
affiliation: Newcastle University
orcid: 'https://orcid.org/0000-0002-5002-1120'
- given-names: Alexandru
orcid: 'https://orcid.org/0000-0002-6073-671X'
family-names: Stihi
email: astihi1@sheffield.ac.uk
affiliation: University of Sheffield
- given-names: Annika
family-names: Muecke
email: annika.muecke@fau.de
affiliation: Friedrich-Alexander-Universität Erlangen-Nürnberg
- given-names: Zamal
family-names: Babar
affiliation: Friedrich-Alexander-Universität Erlangen-Nürnberg
- given-names: Felix
family-names: Kluge
email: felix.kluge@novartis.com
affiliation: Novartis Institutes for BioMedical Research Inc
orcid: 'https://orcid.org/0000-0003-4921-6104'
- given-names: Arne
family-names: Mueller
email: arne.mueller@novartis.com
affiliation: Novartis Institutes for BioMedical Research Inc
- given-names: Claudia
family-names: Mazzà
email: claudia.mazza@indivi.io
affiliation: INDIVI
orcid: 'https://orcid.org/0000-0002-5215-1746'
- given-names: Silvia
family-names: Del Din
email: silvia.del-din@newcastle.ac.uk
affiliation: Newcastle University
orcid: 'https://orcid.org/0000-0003-1154-4751'
- given-names: Andrea
family-names: Cereatti
email: andrea.cereatti@polito.it
affiliation: Politecnico di Torino
orcid: 'https://orcid.org/0000-0002-7276-5382'
- given-names: Lynn
family-names: Rochester
email: lynn.rochester@newcastle.ac.uk
affiliation: Newcastle University
orcid: 'https://orcid.org/0000-0001-5774-9272'
- given-names: Daniel
family-names: Rooks
affiliation: Novartis Institutes for BioMedical Research Inc
orcid: 'https://orcid.org/0000-0002-1121-3517'
email: daniel.rooks@novartis.com
- given-names: Brian
family-names: Caulfield
orcid: 'https://orcid.org/0000-0003-3877-475X'
affiliation: University of Dublin Trinity College
email: b.caulfield@ucd.ie
identifiers:
- type: doi
value: 10.5281/zenodo.14035833
description: >-
This DOI points to the latest released version of
MobGap. If you want a DOI badge for a specific
release, please follow the DOI link for one of the
specific releases and grab DOI from the archived
record.
repository-code: 'https://github.com/mobilise-d/mobgap/'
url: 'https://mobgap.readthedocs.io/en/latest/README.html'
repository: >-
https://github.com/mobilise-d/Mobilise-D-TVS-Recommended-Algorithms
abstract: >-
A Python implementation of the Mobilise-D algorithm
pipeline for gait analysis using IMU worn at the lower
back. This package is meant as reference implementation
for research and production use.
keywords:
- gait analysis
- walking speed estimation
- wearable sensors
- end-to-end pipeline
- mobilise-d
license: Apache-2.0
GitHub Events
Total
- Create event: 27
- Issues event: 34
- Watch event: 7
- Delete event: 30
- Member event: 2
- Issue comment event: 55
- Push event: 240
- Pull request review comment event: 30
- Pull request review event: 37
- Pull request event: 42
- Fork event: 6
Last Year
- Create event: 27
- Issues event: 34
- Watch event: 7
- Delete event: 30
- Member event: 2
- Issue comment event: 55
- Push event: 240
- Pull request review comment event: 30
- Pull request review event: 37
- Pull request event: 42
- Fork event: 6
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 13
- Total pull requests: 15
- Average time to close issues: 7 months
- Average time to close pull requests: 22 days
- Total issue authors: 4
- Total pull request authors: 3
- Average comments per issue: 0.54
- Average comments per pull request: 0.33
- Merged pull requests: 9
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 8
- Pull requests: 15
- Average time to close issues: about 2 months
- Average time to close pull requests: 22 days
- Issue authors: 4
- Pull request authors: 3
- Average comments per issue: 0.5
- Average comments per pull request: 0.33
- Merged pull requests: 9
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- AKuederle (32)
- a-mosquito (4)
- pltsc18 (4)
- metinbicer (2)
- rmndrs89 (1)
- richrobe (1)
- redicane (1)
Pull Request Authors
- AKuederle (37)
- a-mosquito (9)
- metinbicer (6)
- pltsc18 (5)
- CJkirk105 (2)
- tbonewmy (1)
- rouzbeh (1)
- felixkluge (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 1,210 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 13
- Total maintainers: 2
pypi.org: mobgap
A Python implementation of the Mobilise-D algorithm pipeline for gait analysis using IMU worn at the lower back.
- Documentation: https://mobgap.readthedocs.io/
- License: apache-2.0
-
Latest release: 1.0.0
published 7 months ago