Gait Trajectory Prediction on an Embedded Microcontroller Using Deep Learning

被引:16
作者
Karakish, Mohamed [1 ,2 ]
Fouz, Moustafa A. [1 ]
ELsawaf, Ahmed [1 ]
机构
[1] Arab Acad Sci Technol & Maritime Transport AASTMT, Coll Engn & Technol, Mech Engn Dept, Cairo Campus, Cairo 11757, Egypt
[2] German Int Univ, Fac Engn, Cairo, Egypt
关键词
gait trajectory prediction; deep learning; MLP; CNN; embedded system; microcontroller; TensorFlow Lite micro; ESP32; COMPUTATIONAL INTELLIGENCE; RECOGNITION; SYSTEMS; SENSORS;
D O I
10.3390/s22218441
中图分类号
O65 [分析化学];
学科分类号
070302 ; 081704 ;
摘要
Achieving a normal gait trajectory for an amputee's active prosthesis is challenging due to its kinematic complexity. Accordingly, lower limb gait trajectory kinematics and gait phase segmentation are essential parameters in controlling an active prosthesis. Recently, the most practiced algorithm in gait trajectory generation is the neural network. Deploying such a complex Artificial Neural Network (ANN) algorithm on an embedded system requires performing the calculations on an external computational device; however, this approach lacks mobility and reliability. In this paper, more simple and reliable ANNs are investigated to be deployed on a single low-cost Microcontroller (MC) and hence provide system mobility. Two neural network configurations were studied: Multi-Layered Perceptron (MLP) and Convolutional Neural Network (CNN); the models were trained on shank and foot IMU data. The data were collected from four subjects and tested on a fifth to predict the trajectory of 200 ms ahead. The prediction was made for two cases: with and without providing the current phase of the gait. Then, the models were deployed on a low-cost microcontroller (ESP32). It was found that with fewer data (excluding the current gait phase), CNN achieved a better correlation coefficient of 0.973 when compared to 0.945 for MLP; when including the current phase, both network configurations achieved better correlation coefficients of nearly 0.98. However, when comparing the execution time required for the prediction on the intended MC, MLP was much faster than CNN, with an execution time of 2.4 ms and 142 ms, respectively. In summary, it was found that when training data are scarce, CNN is more efficient within the acceptable execution time, while MLP achieves relative accuracy with low execution time with enough data.
引用
收藏
页数:22
相关论文
共 54 条
[1]   3D Human Gait Reconstruction and Monitoring Using Body-Worn Inertial Sensors and Kinematic Modeling [J].
Ahmadi, Amin ;
Destelle, Francois ;
Unzueta, Luis ;
Monaghan, David S. ;
Linaza, Maria Teresa ;
Moran, Kieran ;
O'Connor, Noel E. .
IEEE SENSORS JOURNAL, 2016, 16 (24) :8823-8831
[2]   Evaluation of Inertial Sensor-Based Pre-Impact Fall Detection Algorithms Using Public Dataset [J].
Ahn, Soonjae ;
Kim, Jongman ;
Koo, Bummo ;
Kim, Youngho .
SENSORS, 2019, 19 (04)
[3]   Application of wearable sensors for human gait analysis using fuzzy computational algorithm [J].
Alaqtash, Murad ;
Yu, Huiying ;
Brower, Richard ;
Abdelgawad, Amr ;
Sarkodie-Gyan, Thompson .
ENGINEERING APPLICATIONS OF ARTIFICIAL INTELLIGENCE, 2011, 24 (06) :1018-1025
[4]   Recurrent Neural Network for Human Activity Recognition in Embedded Systems Using PPG and Accelerometer Data [J].
Alessandrini, Michele ;
Biagetti, Giorgio ;
Crippa, Paolo ;
Falaschetti, Laura ;
Turchetti, Claudio .
ELECTRONICS, 2021, 10 (14)
[5]  
[Anonymous], 2002, Kinesiology of the Musculoskelatl System: Foundations for Physical Rehabilitation
[6]  
Atmaja BT, 2020, ASIAPAC SIGN INFO PR, P325
[7]   Window Size Impact in Human Activity Recognition [J].
Banos, Oresti ;
Galvez, Juan-Manuel ;
Damas, Miguel ;
Pomares, Hector ;
Rojas, Ignacio .
SENSORS, 2014, 14 (04) :6474-6499
[8]  
Bonaccorso G., 2018, Mastering Machine Learning Algorithms: Expert Techniques to Implement Popular Machine Learning Algorithms and Fine-Tune your Models
[9]  
Botchkarev A., 2018, Evaluating performance of regression machine learning models using multiple error metrics in azure machine learning studio, DOI 10.2139/ssrn.3177507
[10]  
Brownlee J, 2020, Imbalanced classification with python