## 2 Time-Frequency Representations for Vibration Signals
### Mel Frequency Cepstral Coefficients  
One of the time-frequency representations used successfully in speech recognition is the MFCC. The approach has also been used successfully for fault detection in rotating machinery [43; 44], and it has the advantage of being robust for extracting non-linear features from stationary and non-stationary signals [39]. The 2D MFCC pipeline calculation starts by estimating the spectrogram, and then several post-processing stages are used to obtain the cepstral coefficients. The MFCC calculation procedure is detailed in [45; 46]. The MFCC calculation can be summarized as follows:  
1. Energy spectrum calculation. The short time-frequency representation and their energy spectrum are calculated using Equations (1)-(3). 2. Energy band calculation. A filter bank of triangular filters is used to perform the energy band calculation. Such a filter bank is denoted \(H(l,j)\) where the number of filters is defined by \(0\leq j<J\), and each filter is represented in the frequency domain with coefficients defined by \(0\leq l<L\). The coefficients of the filter bank are calculated as follows: \[H(l,j)= \begin{cases}0&\text{for}\ \ f(l)<f_{c}(j-1)\\ \frac{f(l)-f_{c}(j-1)}{f_{c}(j)-f_{c}(j-1)}&\text{for}\ \ f_{c}(j-1)\leq f(l)<f_{c}(j) \\ \frac{f(l)-f_{c}(j+1)}{f_{c}(j)-f_{c}(j+1)}&\text{for}\ \ f_{c}(j)\leq f(l)<f_{c}(j+1) \\ 0&\text{for}\ \ f(l)\geq f_{c}(j+1)\end{cases} \] (4)  
The center frequency of each triangular filter \(j\) is denoted as \(f_{c}(j)\), and their values are calculated by approximating the Mel scale as detailed in [45; 47]. Application of such a filter-bank is performed in the frequency domain, providing a matrix denoted \(\mathbf{E}\) with elements \(E(j,k)\) with \(0\leq j<J\) and \(0\leq k<K\). The filter bank is applied column-wise to the energy spectrum. Denoting as \(X_{k}(l)\) the elements of a column of \(X_{l,k}\) defined in Equation (3), the elements of the filtered column are obtained as:  
\[E_{k}(j)=\sum_{l=0}^{L-1}X_{k}(l)H(l,j) \tag{5}\]
3. MFCC calculation:  
The coefficients can be calculated as the product between the log of the filtered spectrum \(\mathbf{E}\) and a matrix of weighting coefficients \(\mathbf{D}\) corresponding to a discrete cosine transform with elements denoted \(d_{m,j}\) with \(0\leq m<N_{c}\) and \(0\leq j<J\). In this case, \(N_{c}\) represents the number of cepstral coefficients with \(N_{c}\leq J\). The coefficients of the cosine transform are calculated as:  
\[d_{m,j}=cos(m\frac{\pi}{J}(j+0.5)) \tag{6}\]  
The cepstral representation of the vibration signal is denoted \(\mathbf{C}\) with elements \(c_{m,k}\). Such representation is obtained as:  
\[\mathbf{C}=\mathbf{D}\ log(\mathbf{E}) \tag{7}\]  
As each of filters \(H(l,j_{0})\) of the filter-bank comply to the following constraint:  
\[\sum_{l=0}^{L-1}H(l,j_{0})=1,\ \ \forall j_{0} \tag{8}\]  
The amplitude of filters in the high logarithmic frequency range decreases because the separation between filters is larger, and the bandwidth increases. Additionally, \(c_{m,k}\) decreases as \(m\) increases. In consequence, the high-frequency components of faults are attenuated in the cepstral domain. The frequency representation for a filter bank is shown in Figure 1.  
A solution is to apply a filtering operation using an exponential function to compensate for the decrease in amplitude. Such operation in the cepstral domain is known as filtering [46; 48]. The MFCC representation for two vibration signals acquired from the multi-stage centrifugal pump is shown in Figure 2. The MFCC for the healthy centrifugal pump is in Figure 2a while the MFCC for a vibration signal corresponding to a centrifugal pump with the faulty condition is shown in Figure 2b.