PaWFE: Fast Signal Feature Extraction Using Parallel Time Windows - Atzori, Manfredo; Müller, Henning (Frontiers in Neurorobotics, 2019)
Motivation: Hand amputations can dramatically affect the quality of life of a person. Researchers are developing surface electromyography and machine learning solutions to control dexterous and robotic prosthetic hands, however long computational times can slow down this process. Objective: This paper aims at creating a fast signal feature extraction algorithms that can extract widely used features and allow researchers to easily add new ones. Methods: The code extracts the signal features from several time windows in parallel. The MATLAB code is publicly available and supports several time domain and frequency features. The code was tested and benchmarked using 1,2,4,8,16,32 and 48 threads on a server with four Xeon E7- 4820 and 128 GB RAM using the first 5 datasets of the Ninapro database, that are recorded with different acquisition setups. Results: The parallel computing approach allows to reduce the computational time up to 20 times when using 32 cores, showing a very good scalability. Signal features can be extracted in few seconds from an entire data acquisition and in less than 100 microseconds from a single time window. The code allows users to easily add new signal feature extraction scripts, that can be added to the code and on the Ninapro website upon request. Significance: The code allows researchers in machine learning and biosignals data analysis to easily and quickly test modern machine learning approaches on big datasets and it can be used as a resource for real time data analysis too.