A method and system for multivariate filtering based on FPGA

By constructing a fourth-order tensor parallel processing and quantum particle swarm optimization algorithm using FPGA, the problems of low efficiency and inaccurate filtering parameter tuning in multivariate data processing are solved, and efficient filtering performance optimization is achieved in complex environments.

CN120342360BActive Publication Date: 2025-12-26WUHAN LIUGAN ZHONGYI TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510366374.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-26
Publication Date
2025-12-26
Estimated Expiration
2045-03-26

AI Technical Summary

Technical Problem

Existing multivariate data processing methods are inefficient when processing high-dimensional data, making it difficult to meet real-time requirements. Furthermore, filtering methods lack a deep understanding and optimization of the correlation between multiple variables, making it difficult to adaptively adjust parameters to achieve the best filtering effect in complex and ever-changing environments.

Method used

Raw data is synchronously acquired using a multi-channel ADC on an FPGA, a fourth-order tensor is constructed and preprocessed, the core tensor and factor matrix are extracted using a parallelized Tucker decomposition engine, a multivariate correlation matrix is ​​generated, the global optimal parameters are generated by combining a quantum particle swarm optimization algorithm, and the filtered data is filtered by an extended Kalman filter with feedback adjustment to optimize the filtering performance.

Benefits of technology

It achieves efficient data structuring and high-quality input, improves data processing speed and accuracy, and adaptively adjusts filtering parameters in complex and ever-changing environments to achieve the best filtering effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120342360B_ABST
    Figure CN120342360B_ABST
Patent Text Reader

Abstract

The application discloses a multivariate filtering method and system based on FPGA, and relates to the technical field of signal processing and optimization, which comprises the following steps: decomposing a fourth-order tensor after preprocessing through a Tucker decomposition engine parallelized by FPGA, acquiring a core tensor and a factor matrix, and constructing a multivariate correlation matrix; realizing quantum particle swarm optimization parameter setting of the multivariate correlation matrix in the FPGA to generate global optimal parameters; dynamically filtering the global optimal parameters through an extended Kalman filter in the FPGA to generate a filtered signal and a residual sequence; and calculating an improved dynamic signal-to-noise ratio and a channel correlation error based on the residual sequence and performing feedback adjustment. The application improves the speed and accuracy of data processing, and adaptively adjusts filtering parameters in a complex and variable environment, so that the best filtering effect is achieved, and finally an efficient, accurate and adaptive multivariate filtering solution is provided.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of signal processing and optimization, in particular to a multivariate filtering method and system based on FPGA. BACKGROUND

[0002] In the field of modern signal processing, especially in real-time processing and analysis of multivariate data, efficient data acquisition and filtering technology is particularly important. With the continuous progress of sensor technology and computing platforms (such as FPGA), multi-channel ADC synchronous acquisition technology has been widely applied and developed. This technology can acquire data from multiple sensors simultaneously and perform real-time processing through high-performance computing platforms.

[0003] The existing multivariate data processing method still has some deficiencies, first, it relies on traditional matrix decomposition algorithms, which are inefficient in processing high-dimensional data and difficult to meet real-time requirements; second, most existing filtering methods are based on single parameter setting, lacking deep understanding and optimization of multivariate correlation. This makes it difficult to adaptively adjust parameters to achieve the best filtering effect in the face of complex and variable environmental conditions. SUMMARY

[0004] In view of the above existing problems, the present application is proposed.

[0005] Therefore, the present application provides a multivariate filtering method based on FPGA, which solves the problems of low processing efficiency of high-dimensional data and inaccurate filtering parameter setting in the prior art.

[0006] To solve the above technical problems, the present application provides the following technical solutions:

[0007] In a first aspect, the present application provides a multivariate filtering method based on FPGA, which includes: acquiring original data including uranyl ion fluorescence signal, temperature and humidity through multi-channel ADC synchronous acquisition of FPGA, constructing the original data into a four-order tensor including time, channel, wavelet frequency band and environmental variable, and preprocessing; decomposing the preprocessed four-order tensor through FPGA parallelized Tucker decomposition engine, obtaining core tensor and factor matrix, and constructing multivariate correlation matrix; realizing quantum particle swarm optimization parameter setting of the multivariate correlation matrix in FPGA to generate global optimal parameters; dynamically filtering the global optimal parameters through the extended Kalman filter in FPGA to generate filtered signals and residual sequences; calculating dynamic signal-to-noise ratio improvement and channel correlation error based on the residual sequences, and performing feedback adjustment.

[0008] For a preferred scheme of the FPGA-based multivariate filtering method, the original data is constructed into a fourth-order tensor including time, channel, wavelet frequency band and environmental variables, and preprocessed, and the specific steps are as follows,

[0009] The original signal data is subjected to wavelet transform to obtain wavelet coefficients, combined with environmental variables for nonlinear coupling, and subjected to time-frequency domain data fusion to generate a fourth-order tensor;

[0010] The fourth-order tensor is preprocessed through cross-dimension interaction modeling and tensor standardization and storage.

[0011] For a preferred scheme of the FPGA-based multivariate filtering method, the original data is constructed into a fourth-order tensor including time, channel, wavelet frequency band and environmental variables, and preprocessed, and the specific steps are as follows,

[0012] The fourth-order tensor is split into sub-blocks through tensor block splitting and parallelization expansion, and Mode-n expansion is performed on each sub-block to generate an expanded matrix;

[0013] The covariance matrix of each expanded matrix is calculated, and SVD decomposition is performed on the covariance matrix to obtain an eigenvector matrix.

[0014] For a preferred scheme of the FPGA-based multivariate filtering method, the original data is constructed into a fourth-order tensor including time, channel, wavelet frequency band and environmental variables, and preprocessed, and the specific steps are as follows,

[0015] The eigenvector matrices of all sub-blocks are weighted and combined to generate a global factor matrix;

[0016] The initial core tensor is calculated according to the global factor matrix;

[0017] An optimization objective function is defined, and the initial core tensor is optimized using gradient descent method iterative optimization to generate a core tensor;

[0018] The multivariate correlation matrix is constructed through core tensor non-zero element analysis, correlation matrix generation and normalization.

[0019] For a preferred scheme of the FPGA-based multivariate filtering method, the original data is constructed into a fourth-order tensor including time, channel, wavelet frequency band and environmental variables, and preprocessed, and the specific steps are as follows,

[0020] The initial particle position is generated according to the multivariate correlation matrix, and the particle swarm is initialized, and the parameters to be optimized are encoded into particle positions;

[0021] The particle position is updated through quantum particle swarm optimization algorithm to generate global optimal parameters.

[0022] In a preferred embodiment of the FPGA-based multivariate filtering method of the present invention, the steps of dynamically filtering the globally optimal parameters using an extended Kalman filter within the FPGA to generate the filtered signal and residual sequence are as follows.

[0023] The global optimal parameters are updated using an extended Kalman filter to update the state equation and observation equation, and the Kalman gain is calculated to update the state estimate and covariance matrix.

[0024] Extract the filtered signal from the updated state estimate and compute the residual sequence.

[0025] In a preferred embodiment of the FPGA-based multivariable filtering method of the present invention, the feedback adjustment specifically includes the following steps.

[0026] Feedback adjustment is triggered based on the dynamic signal-to-noise ratio improvement and channel correlation error.

[0027] Secondly, this invention provides an FPGA-based multivariate filtering system, comprising: a data acquisition module for synchronously acquiring raw data, including uranyl ion fluorescence signals, temperature, and humidity, via a multi-channel ADC of the FPGA; constructing the raw data into a fourth-order tensor including time, channels, wavelet bands, and environmental variables; and preprocessing the data; a Tucker decomposition module for decomposing the preprocessed fourth-order tensor using a parallelized Tucker decomposition engine on the FPGA to obtain the core tensor and factor matrix, and constructing a multivariate correlation matrix; a parameter optimization module for tuning the multivariate correlation matrix within the FPGA to achieve quantum particle swarm optimization parameters, generating globally optimal parameters; and a verification and adjustment module for dynamically filtering the globally optimal parameters using an extended Kalman filter within the FPGA to generate a filtered signal and residual sequence; calculating the dynamic signal-to-noise ratio improvement and channel correlation error based on the residual sequence, and performing feedback adjustment.

[0028] Thirdly, the present invention provides a computer device including a memory and a processor, wherein the memory stores a computer program, wherein the computer program, when executed by the processor, implements any step of the FPGA-based multivariate filtering method described in the first aspect of the present invention.

[0029] Fourthly, the present invention provides a computer-readable storage medium having a computer program stored thereon, wherein: when the computer program is executed by a processor, it implements any step of the FPGA-based multivariate filtering method as described in the first aspect of the present invention.

[0030] The application has the beneficial effects that: the original data is synchronously collected by the multi-channel ADC and preprocessed by constructing a four-order tensor, realizing efficient data structuring and high-quality input; then, the key information is extracted by the parallelized Tucker decomposition engine, and the global optimal parameters are generated by the quantum particle swarm optimization algorithm, ensuring the optimal performance of the filter; and the speed and accuracy of data processing are improved, and the filter parameters are self-adaptively adjusted in the complex and changeable environment, so that the best filtering effect is achieved. BRIEF DESCRIPTION OF DRAWINGS

[0031] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.

[0032] Fig. 1 Flowchart of the multivariate filtering method based on FPGA in embodiment 1.

[0033] Fig. 2 Flowchart of tensor construction and Tucker decomposition in embodiment 1.

[0034] Fig. 3 Flowchart of quantum particle swarm optimization in embodiment 1.

[0035] Fig. 4 Flowchart of EKF filtering and feedback adjustment in embodiment 1. DETAILED DESCRIPTION

[0036] In order to make the above-mentioned purposes, features and advantages of the present application more apparent and easy to understand, the specific embodiments of the present application will be described in detail below with reference to the drawings of the specification.

[0037] In the following description, many specific details are set forth in order to provide a thorough understanding of the present application, but the present application can also be implemented in other ways different from those described herein, and those skilled in the art can make similar generalizations without departing from the concept of the present application, therefore the present application is not limited to the specific embodiments disclosed below.

[0038] Secondly, the "one embodiment" or "embodiment" referred to herein means that the specific features, structures or characteristics can be included in at least one implementation of the present application. "In one embodiment" appearing in different places in the specification does not mean the same embodiment, nor is it an independent or alternative embodiment that excludes other embodiments.

[0039] Embodiment 1, refer to Figs. 1-4For the first embodiment of the present application, the embodiment provides a multivariate filtering method based on FPGA, comprising the following steps:

[0040] S1: Synchronously collecting original signal data and environmental variables by a multi-channel ADC of FPGA, constructing the original signal data and the environmental variables into a four-order tensor, and performing preprocessing;

[0041] S1.1: Synchronously collecting original signal data and environmental variables by a multi-channel ADC of FPGA;

[0042] The original signal data is a fluorescence signal, 1024 points (time window 1.024 ms) are continuously collected per channel, the data format is 14-bit complement, and the data is transmitted to the FPGA through an LVDS interface;

[0043] The environmental variables include temperature and humidity, and the temperature and humidity are read once every 1 ms and converted into 16-bit fixed-point numbers.

[0044] S1.2: Constructing the original signal data and the environmental variables into a four-order tensor;

[0045] Wavelet coefficients are obtained by wavelet transforming the original signal data, the environmental variables are combined for nonlinear coupling, and a four-order tensor is generated through time-frequency domain data fusion, and the expression is:

[0046]

[0047] Wherein, x(t,s,f,e) is a four-order tensor at time t channel s wavelet frequency band f environmental variable e, t is a time index, s is a channel index, f is a current wavelet frequency band index, e is an environmental variable type, is a value of channel s, wavelet frequency band f at time t, E e (t) is an original value of the environmental variable e at time t, is a mean value of the environmental variable e, is a standard deviation of the environmental variable e, α e is a standard deviation of the environmental variable e, k is all wavelet frequency band indexes, N f is a wavelet decomposition frequency band number, and ∈ is a zero constant;

[0048] Further, the original signal data is decomposed into multiple frequency bands through discrete wavelet transform, and the approximation coefficients of each channel are extracted as wavelet coefficients;

[0049] The environmental variables are normalized, the normalized deviation of the environmental variables is mapped into a weight factor through an exponential function, and the wavelet coefficients are nonlinearly coupled;

[0050] The coupled results are normalized by frequency domain energy to eliminate inter-channel amplitude differences, and a fourth-order tensor is generated, which integrates multi-dimensional information of time domain, space domain, frequency domain and environmental variables.

[0051] S1.3: Preprocessing the fourth-order tensor by cross-dimensional interaction modeling and tensor normalization and storage;

[0052] The fourth-order tensor is cross-dimensionally modeled to generate an optimized fourth-order tensor, and the specific steps are as follows:

[0053] The partial derivative of the fourth-order tensor with respect to the environmental variable is calculated by the central difference method.

[0054] The environmental sensitivity mask is generated by the Sigmoid function to suppress the environmental coupling noise in the low-energy frequency band.

[0055] The partial derivative and the environmental sensitivity mask are combined by element-wise multiplication to generate a weighted interaction term.

[0056] The weighted interaction term is limited to the range of [-1, 1] by the tanh function to avoid gradient explosion.

[0057] The interaction term and the fourth-order tensor are multiplied element-wise by the Hadamard product to generate an optimized fourth-order tensor.

[0058] It should be noted that when calculating the partial derivative of the fourth-order tensor with respect to the environmental variable by the central difference method, first, a small perturbation step is set for each environmental variable parameter, and positive and negative perturbations are applied at its current value to generate corresponding perturbed fourth-order tensor instances; then the numerical difference between the perturbed fourth-order tensor and the original fourth-order tensor at the four-dimensional index is analyzed, and the partial derivative component is calculated, and the complete partial derivative field is constructed after traversing all environmental variables and four-dimensional indexes. Based on the energy distribution characteristics, an environmental sensitivity mask is designed: the frequency domain energy of the fourth-order tensor is mapped into the Sigmoid function to generate a mask weight. The partial derivative field and the environmental sensitivity mask are multiplied element-wise to generate a weighted interaction term, which strengthens the gradient characteristics of the high-sensitive frequency band and suppresses the noise in the low-sensitive region. Further, the weighted interaction term is subjected to nonlinear transformation by the tanh function to constrain its value range within [-1, 1] to avoid abnormal growth of gradient amplitude. Finally, the constrained interaction term and the original fourth-order tensor are multiplied element-wise by the Hadamard product to dynamically adjust the weight proportion of each element in the fourth-order tensor, so that the optimized fourth-order tensor retains high-frequency effective information while significantly reducing environmental noise coupling coefficients.

[0059] The influence of outliers in the fourth-order tensor is eliminated by tensor normalization and storage to realize adaptive normalization processing, and the fourth-order tensor is stored in a specified format to provide structured data for subsequent analysis, and the specific steps are as follows:

[0060] The mean and standard deviation of each channel and frequency band are calculated by sliding window or global statistical method;

[0061] The global environmental disturbance factor is calculated by the absolute deviation of the mean;

[0062] The standardization intensity is dynamically adjusted by the scaling factor, and the normalization is combined with the environmental disturbance factor;

[0063] The fourth-order tensor value is limited to the range of [-θ, θ] by the Clip function to eliminate outliers;

[0064] The elements of the fourth-order tensor are mapped to linear address by Mode-1 priority order.

[0065] It should be noted that when calculating the mean and standard deviation of each channel and frequency band by sliding window or global statistical method, first divide the local window or cover the total data along the channel dimension and frequency dimension of the fourth-order tensor respectively, and calculate the arithmetic mean and standard deviation of the elements in each window; The global environmental disturbance factor is calculated by the absolute deviation of the mean, which is to extract the absolute value of all elements of the fourth-order tensor, and calculate the absolute deviation of the theoretical steady-state value, which quantifies the disturbance intensity of environmental noise on the overall distribution of the fourth-order tensor. In the standardization stage, the standardization intensity is dynamically adjusted by the scaling factor: the original fourth-order elements are normalized. After normalization, the Clip function is applied to hard limit the fourth-order value, and the elements exceeding the environmental adaptive threshold [-θ, θ] are forced to be truncated to the boundary value, eliminating outliers caused by environmental mutations or sensor abnormalities. Finally, the fourth-order tensor is mapped to the linear address space by Mode-1 priority order: the elements are unfolded along the first dimension (Mode-1) of the fourth-order tensor according to the priority, and the index is converted to linear address.

[0066] S2: Decompose the preprocessed fourth-order tensor by the FPGA parallelized Tucker decomposition engine to obtain the core tensor and factor matrix, and construct the multivariate correlation matrix;

[0067] S2.1: The fourth-order tensor is divided into sub-blocks by tensor blocking and parallelized unfolding;

[0068] Further, the fourth-order tensor is divided into sub-blocks along the time dimension;

[0069] The sub-block data is stored in the BlockRAM of the FPGA for address mapping;

[0070] Mode-n unfolding is performed on each sub-block to generate a matrix, the specific steps are as follows:

[0071] Mode-1 unfolding is to unfold the time dimension into rows and combine the other dimensions into columns;

[0072] Mode-2 unfolding is to unfold the channel dimension as rows and combine other dimensions as columns;

[0073] Mode-3 unfolding is to unfold the frequency band dimension as rows and combine other dimensions as columns;

[0074] Mode-4 unfolding is to unfold the environment variable dimension as rows and combine other dimensions as columns;

[0075] The AXI-Stream interface of the FPGA is used to realize data pipeline transmission, ensuring efficient data flow.

[0076] S2.2: The factor matrix is calculated by parallelizing the SVD decomposition, capturing the main features of the tensor in different dimensions, providing a basis for subsequent core tensor calculation;

[0077] Further, the parallel matrix multiplication is realized by using the DSPSlice array of the FPGA to calculate the covariance matrix of each unfolded matrix;

[0078] It should be noted that the parallel matrix multiplication is realized by using the DSPSlice array of the FPGA, and the element-by-element multiplication and addition operation is performed on each unfolded matrix and its transpose matrix to generate the covariance matrix; the matrix multiplication is decomposed into multiple sub-tasks by using the parallel computing capability of the DSPSlice, and each DSPSlice is responsible for calculating an element of the covariance matrix, ensuring efficient completion of the covariance matrix calculation task.

[0079] The SVDIP core of the FPGA is used to realize acceleration, and the SVD decomposition is performed on the covariance matrix to obtain the eigenvector matrix;

[0080] It should be noted that the SVDIP core of the FPGA is used to realize acceleration, and the singular value decomposition (SVD) is performed on the covariance matrix to decompose it into an eigenvector matrix, a singular value matrix, and a transpose eigenvector matrix; the covariance matrix decomposition task is decomposed into multiple parallel computing units by using the hardware acceleration capability of the SVDIP core, and each unit is responsible for calculating part of the eigenvector and singular value, ensuring efficient acquisition of the eigenvector matrix.

[0081] The eigenvector matrices of all sub-blocks are weighted and combined to generate a global factor matrix.

[0082] S2.3: The initial core tensor is calculated by tensor contraction operation, and the core tensor is optimized by gradient descent method to improve the accuracy of Tucker decomposition;

[0083] Further, according to the global factor matrix, the parallel tensor contraction operation is realized by using the multiplication-addition unit of the FPGA to calculate the initial core tensor;

[0084] It should be noted that according to the global factor matrix, the parallel tensor contraction operation is realized by using the multiply-add unit of the FPGA, the preprocessed fourth-order tensor and the transpose of the factor matrix are contracted dimension by dimension, and the initial core tensor is calculated; the tensor contraction operation is decomposed into multiple subtasks, each multiply-add unit is responsible for calculating part of the tensor elements, and the calculation task of the initial core tensor is efficiently completed through the parallel pipeline structure.

[0085] An optimization objective function is defined, and gradient descent method is used for iterative optimization to optimize the initial core tensor to generate the core tensor.

[0086] It should be noted that based on the product form of the original fourth-order tensor and the core tensor and its factor matrix, the reconstruction error is calculated, the reconstruction error and the regularization term are weighted and summed to construct the optimization objective function, the global optimization of the core tensor is realized by minimization, the balance between reconstruction accuracy and model generalization ability is ensured, the initial core tensor is iteratively optimized by gradient descent method, the gradient of each iteration is calculated and the core tensor is updated, and through multiple iterations, the objective function is gradually converged to generate the final optimized core tensor.

[0087] S2.4: Constructing a multivariate correlation matrix by core tensor non-zero element analysis, correlation matrix generation and normalization;

[0088] Further, the significant non-zero elements in the core tensor are extracted, the correlation strength between different channels is quantified, and basic data is provided for generating the correlation matrix;

[0089] It should be noted that the mean and standard deviation of the core tensor are calculated, the significant non-zero elements greater than one-half of the core tensor standard deviation are extracted by traversing the core tensor, for each pair of channel combination, all significant non-zero elements related to the pair of channels are extracted, the correlation strength value of the channel pair is calculated by accumulating the sum of the absolute values of these elements, and the correlation strength values of all channel pairs constitute a symmetric channel correlation matrix. The channel correlation matrix is globally normalized and smoothed to suppress the oversaturation phenomenon in the high value area and enhance the contrast in the low value area, and the channel correlation strength is generated to provide basic data for generating the correlation matrix.

[0090] According to the channel correlation strength, a multivariate correlation matrix is generated, and through normalization and symmetry processing, the consistency and robustness of the matrix are ensured;

[0091] It should be noted that the correlation matrix is initialized according to the channel correlation strength, the matrix elements are scaled to the range of [0, 1] through normalization processing, and the normalized correlation matrix is symmetrically processed to ensure the consistency and robustness of the matrix, and reliable multi-channel coupling information is provided for subsequent filtering analysis.

[0092] S3: The multivariate correlation matrix is used to realize the quantum particle swarm optimization parameter setting in the FPGA, and the globally optimal parameters are generated.

[0093] S3.1: The particle swarm is initialized, and the parameters to be optimized are encoded as particle positions.

[0094] Further, the initial particle positions are generated according to the multivariate correlation matrix, and the initialization parameters are stored in the LUT of the FPGA.

[0095] It should be noted that the noise covariance matrix is expanded into a 9-dimensional vector, and the diagonal elements of the observation noise covariance matrix are extracted as a 4-dimensional vector, which together constitute a 13-dimensional particle position. The initial particle position is generated according to the multivariate correlation matrix, and the mean is calculated by the product of the multivariate correlation matrix and the unit matrix and the diagonal elements of the multivariate correlation matrix. The covariance matrix is generated by the column variance of the multivariate correlation matrix. The initial particle position is sampled from the normal distribution of the mean and the covariance. In order to efficiently store these initialization parameters, the lookup table (LUT) of the FPGA is used for storage, and each particle occupies 52 bytes of space, ensuring that the 13-dimensional 32-bit floating-point data can be quickly accessed and processed. This step provides a reasonable initial search space for the subsequent quantum particle swarm optimization algorithm, ensuring that the optimization process can start from an effective starting point, improving the efficiency and accuracy of parameter setting.

[0096] S3.2: Design the fitness function to quantify the performance of the parameters, and accelerate the particle evaluation through the parallel computing capability of the FPGA.

[0097] Further, the fitness function is designed in combination with the filtering error and the consistency of the multivariate correlation matrix, and the expression is:

[0098]

[0099] where J p is the fitness function of the pth particle, M is the total number of sampling points, y[m] is the true signal value of the mth sampling point, is the estimated signal value of the mth sampling point of the pth particle output by the extended Kalman filter, γ is the regularization coefficient, B is the multivariate correlation matrix, is the predicted multivariate correlation matrix of the pth particle, p is the particle index, and F represents the Frobenius norm.

[0100] It should be noted that the multi-dimensional evaluation index is constructed based on the mean square error of the filtered signal, the variance of the residual sequence and the trace of the covariance matrix, and the fitness function is formed by weighted linear combination; combined with the dynamic penalty term, the fitness cost is increased when the parameter deviates from the reference value to control the parameter search range; for real-time requirements, an additional calculation complexity index is superimposed, which is mapped using a normalization factor to balance accuracy and resources; finally, the parameter space is traversed by Monte Carlo sampling, and the complete filtering process is performed for each candidate parameter set and calculated, with the goal of minimizing the function value to drive the search and verification of the global optimal parameter.

[0101] Parallel particle evaluation is implemented using the DSP Slice array of the FPGA, with each DSP Slice processing one particle;

[0102] It should be noted that parallel particle evaluation is implemented using the DSP Slice array of the FPGA, and the fitness function calculation task of each particle is distributed to independent DSP Slices, with each DSP Slice responsible for processing the filtering error and correlation matrix consistency calculation of one particle; through a parallel pipeline structure, the DSP Slice simultaneously evaluates multiple particles, calculates the filtering error and correlation matrix consistency, and generates the fitness function value through accumulation; the parallel computing capability of the FPGA is utilized to significantly reduce the delay of particle evaluation, ensuring efficient completion of the fitness function calculation task.

[0103] S3.3: Based on the fitness function, update the particle position through the quantum particle swarm optimization algorithm to search for the global optimal parameter;

[0104] It should be noted that based on the fitness function, the particle position is updated through the quantum particle swarm optimization algorithm, and for each particle, the quantum potential well center of each particle is calculated based on its fitness function value through a weighted average formula, a new particle position is generated based on the Monte Carlo method, and the new particle position is efficiently generated through the linear feedback shift register and CORDIC algorithm of the FPGA; the updated particle position is used to search for the global optimal parameter, and through multiple iterations of optimization, the global optimal solution is gradually approached; the quantum particle swarm optimization algorithm enhances the global search capability by combining quantum potential wells and randomness, avoids falling into local optimality, and ensures the efficiency and robustness of parameter tuning.

[0105] S3.4: Select the global optimal parameter and solidify it to the Flash memory of the FPGA to provide high-precision parameters for subsequent filtering modules;

[0106] It should be noted that the process of selecting the global optimal parameter first selects the particle position with the minimum fitness from the particle swarm, and the particle position with the minimum fitness corresponds to the optimal process noise covariance matrix and observation noise covariance matrix; by extracting the first 9 elements of the minimum particle position and reshaping them into a 3x3 matrix, the global optimal parameter including the optimal process noise covariance and observation noise covariance is obtained.

[0107] S4: filtering the global optimal parameter through the extended Kalman filter in the FPGA to generate filtered original signal data and residual sequence;

[0108] S4.1: updating the state equation and observation equation by passing the global optimal parameter through the extended Kalman filter, to ensure that the filtering algorithm can adapt to environmental changes;

[0109] Further, the global optimal parameter obtained by offline optimization is transmitted in real time to the EKF module register in the FPGA through the high-speed AXI bus; in the state equation update stage, the process noise covariance is substituted into the covariance prediction formula to dynamically adjust the uncertainty quantization weight in the state transition process; in the observation equation update stage, the observation noise covariance is substituted into the Kalman gain calculation formula to real-time correct the influence of observation noise on the filtering result; at the same time, based on the process noise covariance and observation noise covariance, the iteration equation of the state vector and the covariance matrix is updated, so that the parameters of the Jacobian matrix and the environment dynamic characteristics are matched, and finally the adaptive adjustment of the Kalman gain is realized through the dynamic injection of parameters, to suppress noise coupling and improve state estimation accuracy when the environment mutates.

[0110] S4.2: calculating the Kalman gain to update the state estimate and covariance matrix, to ensure the accuracy of the filtering result;

[0111] It should be noted that based on the prediction covariance matrix and the observation matrix Jacobian matrix, the Kalman gain is calculated, and the weight proportion of the prediction error and the observation noise is dynamically balanced through matrix multiplication and inversion operation; then the state estimate value is updated using the Kalman gain, the observation residual is multiplied by the Kalman gain and then added to the predicted state, so that the state estimate is corrected in the direction of the observation data, and the projection matrix is used to compress the uncertainty range of the prediction covariance to avoid overfitting; this process completes the matrix operation through parallel DSP Slice in the FPGA, and uses the pipeline structure to reduce the calculation delay.

[0112] S4.3: extracting the filtering signal from the updated state estimate and calculating the residual sequence to provide data support for subsequent analysis;

[0113] It should be noted that based on the state vector output by the EKF module, the target signal dimension is located according to the preset signal index rule, the elements of the corresponding dimension in the state vector are arranged in time sequence, and a continuous time sequence is generated as a filtered signal; at the same time, in each observation update stage, the original observation value is collected in real time, the theoretical observation value is calculated through the linear combination of the observation matrix and the predicted state, and the instantaneous residual error is further generated; the instantaneous residual error is stored in the pre-allocated storage medium according to the time stamp, forming a residual error sequence, and the time alignment mechanism is used to ensure that the sampling points of the residual error sequence and the continuous time sequence correspond one by one; the filtered signal and the residual error sequence are stored in a structured array format, including three fields of time stamp, numerical value and confidence label, supporting subsequent data calling of spectral analysis, noise distribution modeling and parameter optimization algorithm; the residual error sequence is further calculated by a sliding window statistical calculation to obtain the mean, variance and autocorrelation function, which is used to dynamically evaluate the performance deviation of the filter and trigger the parameter adaptive update condition.

[0114] S5: Calculate the dynamic signal-to-noise ratio improvement and channel correlation error based on the residual error sequence, and perform feedback adjustment.

[0115] S5.1: Calculate the dynamic signal-to-noise ratio improvement to quantify the improvement or decline of the filter performance, and provide a basis for feedback adjustment;

[0116] It should be noted that based on the time-frequency distribution of the original signal data and the filtered signal, the energy of each frequency band is extracted by a sliding window, and the original signal-to-noise ratio and the filtered signal-to-noise ratio are calculated; the performance improvement threshold and the performance degradation threshold are set according to the historical data, the signal-to-noise ratio improvement of each frequency band is calculated, and the global improvement is obtained by frequency band weighting and accumulation;

[0117] If the global improvement is greater than the performance improvement threshold, a positive feedback adjustment instruction is generated to reduce the update step of the process noise covariance to stabilize the parameters;

[0118] If the global improvement is less than the performance degradation threshold, a dynamic recalibration mechanism is triggered to adjust the injection weight of the observation noise covariance through backpropagation gradient;

[0119] The improvement data is normalized by Fisher-Z transformation and stored in the historical performance queue to build a moving average baseline and eliminate the influence of environmental transient interference on the quantization result.

[0120] S5.2: Calculate the channel correlation error to evaluate the difference between the predicted correlation matrix and the real correlation matrix, and provide a basis for feedback adjustment;

[0121] A real correlation matrix is constructed based on multi-channel observation data, a correlation coefficient of each channel pair is calculated through a covariance matrix to form a symmetric matrix; a predicted correlation matrix is generated by using a state prediction model, and the predicted correlation matrix is obtained by linear transformation of a covariance matrix of a predicted state vector. Channel correlation errors are quantified by a Frobenius norm, and local errors are independently calculated for each channel pair. The local errors are statistically generated to obtain error mean and variance through a sliding window, and a channel correlation error threshold is set according to historical data;

[0122] When the mean is greater than the channel correlation error threshold, feedback adjustment is triggered, the weight coefficient of the Jacobian matrix in the state prediction model is adjusted through a back propagation algorithm, and an adaptive penalty factor is applied to the high-error channel pair according to the distribution characteristics of the local error, so that the channel correlation relationship with significant deviation is forced to be corrected preferentially in the iteration process, and finally the updated parameters are injected into the prediction model to reduce the difference between the correlation matrices, and when the mean is less than or equal to the channel correlation error threshold, the current parameters are kept stable.

[0123] The embodiment also provides a multivariate filtering system based on FPGA, comprising: a data acquisition module configured to synchronously acquire original data including a uranyl ion fluorescence signal, temperature and humidity through a multi-channel ADC of the FPGA, construct the original data into a fourth-order tensor including time, channels, wavelet frequency bands and environmental variables, and perform preprocessing; a Tucker decomposition module configured to decompose the preprocessed fourth-order tensor through a parallelized Tucker decomposition engine of the FPGA to obtain a core tensor and factor matrices, and construct a multivariate correlation matrix; a parameter optimization module configured to implement quantum particle swarm optimization parameter setting for the multivariate correlation matrix in the FPGA to generate global optimal parameters; a verification and adjustment module configured to filter the global optimal parameters through extended Kalman filtering in the FPGA to generate filtered signals and residual sequences; and calculate a dynamic signal-to-noise ratio improvement and a channel correlation error based on the residual sequences, and perform closed-loop verification and feedback adjustment. The embodiment also provides a computer device suitable for the multivariate filtering method based on FPGA, comprising: a memory and a processor; the memory is configured to store computer executable instructions, and the processor is configured to execute the computer executable instructions to implement the multivariate filtering method based on FPGA as proposed in the above embodiment.

[0124] The computer device can be a terminal, and the computer device includes a processor, a memory, a communication interface, a display screen and an input device connected by a system bus. The processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for running the operating system and the computer program in the non-volatile storage medium. The communication interface of the computer device is configured to perform wired or wireless communication with an external terminal. The wireless communication can be achieved by WIFI, an operator network, NFC (Near Field Communication) or other technologies. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen. The input device of the computer device can be a touch layer overlaid on the display screen, or a key, trackball or touchpad arranged on the shell of the computer device, or an external keyboard, touchpad or mouse, etc.

[0125] The embodiment also provides a storage medium having a computer program stored thereon, the program being executed by a processor to implement the multivariable filtering method based on FPGA as proposed in the above embodiment. The storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as a static random access memory (SRAM), an electrically erasable programmable read-only memory (EEPROM), an erasable programmable read-only memory (EPROM), a programmable read-only memory (PROM), a read-only memory (ROM), a magnetic storage, a flash memory, a magnetic disk or an optical disk.

[0126] To sum up, the application achieves efficient data structuring and high-quality input by synchronously collecting raw data through a multi-channel ADC and constructing a four-order tensor for preprocessing. Then, the application extracts key information through a parallelized Tucker decomposition engine and generates globally optimal parameters through a quantum particle swarm optimization algorithm, thereby ensuring optimal performance of the filter. The application improves the speed and accuracy of data processing and adaptively adjusts filter parameters in a complex and variable environment, thereby achieving optimal filtering effect.

[0127] It should be noted that the above examples are only used to illustrate the technical solutions of the present application but not limit the present application. Although the present application is described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solutions of the present application can be modified or equivalently replaced, without departing from the spirit and scope of the technical solutions of the present application, which should be covered in the scope of the claims of the present application.

Claims

1. A FPGA-based multivariate filtering method, characterized in that: comprising, Synchronously collect raw data by a multi-channel ADC of the FPGA, construct the raw data into a four-order tensor, and perform preprocessing; the raw data includes a uranyl ion fluorescence signal, temperature, and humidity, and the four-order tensor includes time, a channel, a wavelet frequency band, and an environmental variable; Perform decomposition on the preprocessed four-order tensor by a parallelized Tucker decomposition engine of the FPGA, obtain a core tensor and a factor matrix, and construct a multivariate correlation matrix, specifically as follows, Merge the eigenvector matrices of all subblocks by weighting, to generate a global factor matrix; Calculate an initial core tensor according to the global factor matrix; Define an optimization objective function, and perform iterative optimization on the initial core tensor by using a gradient descent method, to generate a core tensor; Construct a multivariate correlation matrix through core tensor non-zero element analysis, correlation matrix generation, and normalization; Realize quantum particle swarm optimization parameter setting of the multivariate correlation matrix in the FPGA, to generate a global optimal parameter; Filter the global optimal parameter dynamically by an extended Kalman filter in the FPGA, to generate a filtered signal and a residual sequence; Calculate a dynamic signal-to-noise ratio improvement amount and a channel correlation error based on the residual sequence, and perform feedback adjustment.

2. The FPGA-based multivariate filtering method of claim 1, wherein: The raw data is constructed into a four-order tensor and preprocessed, specifically as follows, Perform wavelet transform on the raw signal data to obtain wavelet coefficients, perform nonlinear coupling in combination with environmental variables, and perform time-frequency domain data fusion, to generate a four-order tensor; Preprocess the four-order tensor through cross-dimension interaction modeling and tensor standardization and storage.

3. The FPGA-based multivariate filtering method of claim 2, wherein: The preprocessed four-order tensor is decomposed by a parallelized Tucker decomposition engine of the FPGA, specifically as follows, Split the four-order tensor into subblocks by tensor blocking and parallelized expansion, and perform Mode-n expansion on each subblock to generate an expanded matrix; Calculate the covariance matrix of each expanded matrix, and perform SVD decomposition on the covariance matrix to obtain an eigenvector matrix.

4. The FPGA-based multivariate filtering method of claim 3, wherein: The global optimal parameter is generated, specifically as follows, Generate an initial particle position according to the multivariate correlation matrix, initialize a particle swarm, and encode the parameters to be optimized into the particle position; Update the particle position by using a quantum particle swarm optimization algorithm, to generate a global optimal parameter.

5. The FPGA-based multivariate filtering method of claim 4, wherein: The global optimal parameter is filtered dynamically by an extended Kalman filter in the FPGA, to generate a filtered signal and a residual sequence, specifically as follows, Update the state equation and the observation equation by filtering the global optimal parameter by the extended Kalman filter, calculate the Kalman gain, and update the state estimate and the covariance matrix; Extract the filtered signal from the updated state estimate, and calculate a residual sequence.

6. The FPGA-based multivariate filtering method according to claim 1, characterized in that: Trigger feedback adjustment according to the dynamic signal-to-noise ratio improvement amount and the channel correlation error.

7. A FPGA-based multivariable filtering system based on the FPGA-based multivariable filtering method of any one of claims 1-6, characterized in that: comprising a data acquisition module, a Tucker decomposition module, a parameter optimization module, a filtering processing module, and a verification adjustment module, A data acquisition module is configured to synchronously acquire original data including a uranium ion fluorescence signal, temperature and humidity by a multi-channel ADC of the FPGA, construct the original data into a fourth-order tensor including time, a channel, a wavelet frequency band and an environmental variable, and perform preprocessing; A Tucker decomposition module is configured to perform decomposition on the preprocessed fourth-order tensor by a Tucker decomposition engine parallelized by the FPGA, acquire a core tensor and a factor matrix, and construct a multivariate correlation matrix; A parameter optimization module is configured to implement quantum particle swarm optimization parameter setting on the multivariate correlation matrix in the FPGA, and generate a globally optimal parameter; A verification and adjustment module is configured to dynamically filter the globally optimal parameter by an extended Kalman filter in the FPGA, generate a filtered signal and a residual sequence, and perform feedback adjustment. An improved dynamic signal-to-noise ratio and a channel correlation error are calculated based on the residual sequence.

8. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that: The processor executes the computer program to implement the steps of the multivariate filtering method based on the FPGA according to any one of claims 1-6.

9. A computer readable storage medium having stored thereon a computer program, characterized in that: The computer program is executed by the processor to implement the steps of the multivariate filtering method based on the FPGA according to any one of claims 1-6.

Citation Information

Patent Citations

  • Magnetic resonance image noise reduction method based on signal domain and image domain joint filtering

    CN114283086A

  • Unsupervised microseismic denoising method and system based on multichannel Kalman filter network

    CN119126230A