## 3 Wavelet Packet Transform-Based Feature Extraction
### Basic Theory of Wavelet Packet Transform  
A wavelet is a function that forms a fluctuation over a distance. The wavelet basis function can be obtained by varying the size and position of the mother wavelet and scale function to allow a multi-resolution analysis of the signal. The wavelet packet transform can localize the signal in both the time- and frequency-domains. It is sensitive to the details of the signal and is beneficial in achieving the extraction of local subtle features of the signal transients. The wavelet packet transform based on multi-resolution analysis uses an orthogonal wavelet basis to decompose the signal into individual components at different scales. The process of implementation is equivalent to reusing a set of high-pass and low-pass filters to progressively decompose the time series signal, with the high-pass filter producing the high-frequency detail component of the signal, and the low-pass filter producing the low-frequency approximation component. Repeat the above operation for the filtered low-frequency signal to obtain the next layer of high- and low-frequency band signals [28]. The basic principle of wavelet packet transform is briefly introduced here.  
For the original signal \(f(t)\), the coefficients of each layer after wavelet packet decomposition can be expressed by the following equation,  
\[\left\{\begin{aligned} c_{0}^{0}(t)=f(t)\\ c_{j+1}^{2n}(t)=\sum\limits_{k}h(k-2t)c_{j}^{n}\\ c_{j+1}^{2n+1}(t)=\sum\limits_{k}g(k-2t)c_{j}^{n}\end{aligned}\right. \tag{1}\]  
In the above equation, \(n=0,\ 1,\ 2,\ \ldots,\ 2^{j},\ j=1,\ 2,\ \ldots,\ J,\ f(t)\) is the original signal should be decomposed, \(j\) denotes the number of layers of wavelet packet decomposition, \(J\) denotes the maximum number of layers of decomposition, \(c_{j}^{n}(\cdot)\) denotes the coefficient of the n-th node of the jth level of the decomposition, \(h(\cdot)\) denotes the high-pass filter, \(g(\cdot)\) denotes the low-pass filter, \(c_{j+1}^{2n}(\cdot)\) denotes the low-frequency part of \(c_{j}^{n}(\cdot)\), and \(c_{j+1}^{2n+1}(\cdot)\) denotes the high-frequency part of \(c_{j}^{n}(\cdot)\).  
The wavelet packet is simultaneously decomposed for both subspaces and can be expressed according to the following equation:  
\[\begin{array}{l}V_{0}=U(1,0)\oplus U(1,1)\\ =[U(2,0)\oplus U(2,1)]\oplus[U(2,2)\oplus U(2,3)]\\ =\ \ldots\\ =\ \frac{\mathbb{R}}{b=1}\ U(J,B)\end{array} \tag{2}\]  
where \(B=2^{J}-1\) denotes the number of decompositions, and \(J\) denotes a maximum number of layers of decompositions. A three-layer wavelet packet decomposition schematic is shown below.  
After the above decomposition, the frequency band range of the decomposition coefficients at each level can be expressed as follows,  
\[\left\{\begin{aligned} c_{j}^{2n+1}:&\ [2^{-(j+1)}f_{s},2^{-j}f_{s}]\\ c_{j}^{2n}:&\ [0,2^{-(j+1)}f_{s}]\end{aligned} \right.,j=1,2,\ldots,J \tag{3}\]  
where \(f_{s}\) denotes sampling frequency, \(c_{j}^{2n+1}\) denotes the high-frequency band signal decomposition coefficient at the \(j\)-th level, and \(c_{j}^{2n}\) denotes the low-frequency band signal decomposition coefficient at the \(j\)-th level.  
From the above analysis, it can be seen that a wavelet packet not only decomposes both low and high frequencies of the signal, but also can adaptively select the corresponding frequency band to match the signal spectrum, according to the characteristics of the signal being analyzed, thus, improving the time-frequency resolution.