## 2 Materials and Methods
### Feature Extraction and Multi-Feature Fusion Analysis  
#### 2.4.1 Extraction of Time-Domain Spectrum Features  
THz-TDS, as an essential data source for characterizing the TBCs' porosity, encompasses complex information. Processing and feature extraction were required in this study, and the fast independent component analysis (Fast ICA) algorithm was employed to process the terahertz time-domain data. The objective was to extract kurtosis as a parameter to represent the variations in TBCs' porosity [44]. Fast ICA was a statistical signal-processing method used to extract independent components from mixed signals. THz-TDS was considered as mixed signals, with different components corresponding to distinct physical processes and features. By applying the Fast ICA algorithm, these components can be separated, and the kurtosis of each independent component vector can be computed.  
Kurtosis, a statistical measure that quantifies the skewness of a probability distribution, was a significant statistical feature used to describe the shape of signal data distribution. A higher kurtosis value indicates a greater degree of skewness in the distribution. In this study, kurtosis was utilized as a feature parameter to represent porosity. TBCs' porosity influenced the propagation of terahertz waves within the material. As porosity increased, there was an enhanced occurrence of emission and scattering of the waves, resulting in changes in peak positions and kurtosis in the THz-TDS. Specifically, by calculating the kurtosis of each independent component vector, the degree and trend of porosity variations in TBC samples can be indirectly reflected. This approach enabled the quantitative analysis and comparison of variations among TBC samples with different levels of porosity.  
The specific processing process is as follows.  
It is assumed that the original terahertz signal data are \(x\), \(M\) represents the number of signal sampling points, and \(N\) represents the number of signals.  
\[x=\begin{bmatrix}x_{1,1}&\cdots&x_{M,1}\\ \vdots&\ddots&\vdots\\ x_{1,N}&\cdots&x_{M,N}\end{bmatrix} \tag{9}\]Then, processing of time-domain data is centralized:  
\[x_{c}(t)=x(t)-\frac{1}{N}{\sum_{i=1}^{N}{x_{i}}} \tag{10}\]  
where \(x_{c}(t)\) is the time-domain data after centralization, \(t\) is the time, and \(x_{i}\) is the column \(i\) data.  
The centralized time-domain data are processed by Fast ICA, and the independent component vector \(s(t)\) is obtained:  
\[s(t)=Ax_{c}(t) \tag{11}\]  
where \(A\) is the mixing matrix, representing the linear mixing process of the signal.  
The kurtosis \(k\) of each independent component vector is calculated:  
\[k=\frac{1}{T}{\int_{-\infty}^{\infty}{\left({\frac{{x_{c}(t)}}{\sigma}}\right) ^{4}}}dt-3 \tag{12}\]  
where \(T\) is the total time length of the signal, and \(\sigma\) is the standard deviation of the signal.  
Kurtosis is used as the characteristic parameter of porosity. The feature parameter vector is obtained:  
\[T\_parameter=[k_{1},k_{2},k_{3}\dots,k_{n}] \tag{13}\]  
where \(n\) is the number of independent components, and \(k_{n}\) is the kurtosis of the \(n\)-th independent component vector. \(T\_parameter\) is the feature parameter vector of time-domain data.