This project was created as part of the Johns Hopkins Biomedical Engineering Innovation Program.
Parkinson’s Disease (PD) affects over 6 million people globally, but PD diagnosis is subjective and relies on PD specialists, which limits diagnosis accessibility. This project proposes an automated, vision-based method of detecting PD-related gait irregularities using pose detection in an uncontrolled environment. Primary testing on three walking conditions (normal, left-leg limp, right-leg limp) found gait asymmetry values of approximately 0.04 seconds (normal) and 0.09 seconds (limping), suggesting the method can detect irregular gait.
- PD is a neurodegenerative disorder causing tremors, slowness of movement, freezing in gait, and loss of balance.1
- PD is diagnosed using a variety of administered tests. When administered by experts, these tests have an approximate diagnostic accuracy of 82.7%.
- Automated detection techniques have been proposed based on various symptoms of PD, such as gait, speech, and handwriting analysis, but they often rely on large datasets collected by high quality sensors in controlled environments, limiting accessibility.1
- Developments in pose estimation allow detection of joints at moderately high accuracy, which can be used to detect gait events in uncontrolled environments.
Create a method of detecting irregularities in gait using camera data from an iPhone in an uncontrolled environment. Criteria:
- Uses only iPhone camera (iPhone 13 selfie camera)
- Detects left and right step durations
- No external markers or other preparation Constraints:
- Limited camera quality
- Variability in environment
- Lack of large dataset
- Detection of joint positions is not in 3D space
- iPhone 13 front-facing camera (any 4K or 1080P camera)
- Computer with following packages: Python 3.10.5; OpenCV 4.12.0; MMPose 1.3.2; Matplotlib 3.10.3
- Record video walking towards iPhone from about 10 feet away
- Used MMPose to detect 2D joint locations from recorded video (Figure 1a)
- Calculated the normalized vertical distance from the hip to the ankle (Figure 1b)
- Smoothed the data using Gaussian Filtering (Figure 1c)
- Detected downward spikes as indicators of steps (Figure 1d)
- Calculated mean and standard deviation for left and right step duration
The pipeline for detecting steps from input video to step detection. Data associated with the right leg is shown in blue and data with the left leg is in orange. Large downward spikes in the data correspond to the foot’s highest point off the ground mid-step (the point at which the ankle is closest to the hip). Gaussian smoothing and peak detection were mostly accurate at detecting these large peaks but did fail to identify some steps (e.g. the 2nd step of the left foot, which was detected as a small drop in the data rather than the large spike).
- Recorded three videos: normal gait, left-leg limp, and right-leg limp.
- Found irregularities in average step durations while limping (see Figure 2). The asymmetry values of gait while limping (0.09 seconds in both left-leg and right-leg limp) was approximately twice as large as normal gait (0.04 seconds).
Preliminary testing data on average step duration. Data associated with the right leg is shown in blue and data with the left leg is in orange. Each bar shows the average step duration of the corresponding leg. In normal gait, stride durations were similar, but in both limps, the limping foot’s stride duration was approximately half of the normal foot.
- Pose estimation software (such as MMPose) allows for promising gait analysis in uncontrolled environments.
- Accurate 3D pose estimation would allow further accuracy in detection and could account for other PD symptoms like stiff arms while walking or short step distances.
- Rigorous testing on a dataset of PD patients and healthy individuals would allow the prototype to be refined and further PD detection metrics to be defined
[1] Loh, H. W., Hong, W., Ooi, C. P., Chakraborty, S., Barua, P. D., Deo, R. C., Soar, J., Palmer, E. E., & Acharya, U. R. (2021). Application of Deep Learning Models for Automated Identification of Parkinson’s Disease: A Review (2011–2021). Sensors, 21(21), 7034. https://doi.org/10.3390/s21217034
[2] Rizzo, G., Copetti, M., Arcuti, S., Martino, D., Fontana, A., & Logroscino, G. (2016). Accuracy of clinical diagnosis of Parkinson disease. Neurology, 86(6), 566–576. https://doi.org/10.1212/wnl.0000000000002350
[3] Somasundaram, I., Tu, A., Olleac, R., Baddour, N., & Lemaire, E. D. (2025). Automated Implementation of the Edinburgh Visual Gait Score (EVGS). Sensors (14248220), 25(10), 3226. https://doi.org/10.3390/s25103226
[4] Zheng, L., Yang, Y., Tian, Y., Wang, C., Wang, Y., & Li, W. (2020). MMPose: OpenMMLab Pose Estimation Toolbox and Benchmark. https://github.com/open-mmlab/mmpose
This project is licensed under the MIT License. See the LICENSE file for details.

