## 2 Dataset and Proposed Model
### Proposed Model  
In this subsection, we describe the process applied to each EMG for the training and testing subsets of each user, which is represented in Figure 4.  
**Data Acquisition**: To simulate the recognition model functioning in online mode, the concept of a sliding window was used for data acquisition as can be observed in Figure 5. In this work, we simulate the operation of the system because the data were acquired offline. We used a window of \(n=66\) points, with a stride of also \(66\) points. This window was subsequently divided into six non-overlapping sub-windows of length \(m=11\) points each. The segment of EMG observed through a sub-window was stored in a matrix \(\mathbf{A}^{(i)}\in[-1,+1]^{m\times 8}\), where \(i\) denotes the number of the sub-window from which the data came from, with \(i=1,2,..,6\). It should be taken into account that \(\mathbf{F}_{i}\) denotes the EMG measured during the \(5\) s of data acquisition for each sample, while \(\mathbf{A}^{(i)}\) denotes exclusively the portion of an EMG viewed through an \(11\)-point sub-window. Figure 5 illustrates how a \(66\)-point window through sub-windows is divided in an EMG recording. The EMG signal is non-stationary, but if small windows are taken, the statistical variation of the probability distribution of the features is lower than large windows. We use sub-windows because empirically we observe that predicting a label for each EMG sub-window and then making a majority vote among these labels to predict the window label gave better results than predicting a single label considering only the \(66\)-point window. **Pre-Processing**: Each obtained sub-window \(\mathbf{A}^{(i)}\) goes through a process of rectification and filtering [30,31]. This process is used to obtain the envelope of each channel. The EMG envelope is assumed to contain the actual information of the gesture performed. For rectification, we used the absolute value function, thus obtaining the matrix \(\mathbf{B}^{(i)}=abs(\mathbf{A}^{(i)})\), which has its values in the  
Figure 4: Hand gesture recognition process for EMG signals by using the Myo Armband sensor. Figure 3: Scheme for dataset EMG-EPN-120. interval \([0,1]\). For filtering, a second-order Butterworth low-pass filter, with a cutoff frequency of \(1\) Hz, was applied to each column of the matrix \(\mathbf{B}^{(i)}\), obtaining the matrix \(\mathbf{C}^{(i)}\) with the signal filtered, with \(i=1,2,..,6\). **Feature Extraction**: In this step, we want to represent each of the pre-processed sub-window observations with a feature vector that belongs to a feature vector space, where the clusters of feature vectors of each class are compact and well separated from each other. For this purpose, we computed the covariance between the pre-processed channels of each subwindow observation. Together with the covariance, we also used the following functions for feature extraction: band power, mean frequency, occupied bandwidth, mean absolute value, and waveform length. The input of these five functions was the raw EMG signal observed through each sub-window. Below, we describe briefly each function used for feature extraction:  
* _Covariance_: This feature is used to measure how the values of an EMG channel vary with respect to the values of other seven channels. The covariance is calculated between each pair of channels, and it returns a vector \(\mathbf{x}_{\sigma}\) composed of \(\binom{8}{2}=28\) elements. * _Band power_: This function represents the mean power of the EMG signal. It calculates the average power for each channel and returns a vector \(\mathbf{x}_{bp}\) composed of eight elements. * _Mean frequency_: This feature is defined as the normalized mean frequency of the signal power spectrum in the time domain. The result of applying this function is a vector \(\mathbf{x}_{mf}\) composed of eight elements. * _Occupied bandwidth_: This function calculates the difference between two frequencies which enclose 99% of the power of the input signal.