Sideslip ambiguity suppression method and system for stmvs

By utilizing GPU acceleration and CUDA computing in the STMV beamforming algorithm, adjusting the regularization factor, calculating the pseudo-inverse matrix of the covariance matrix, and normalizing the beamforming weights, the problems of large computational complexity and poor port and starboard fuzzy suppression of the STMV algorithm are solved, achieving real-time detection and reliable fuzzy suppression.

CN119780890BActive Publication Date: 2025-10-10HUNAN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411925903.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-25
Publication Date
2025-10-10
Estimated Expiration
2044-12-25

AI Technical Summary

Technical Problem

The existing STMV beamforming algorithm has a large amount of computation in underwater acoustic direction finding, cannot be processed in real time, and has the problem of poor port and starboard ambiguity suppression.

Method used

GPU acceleration and CUDA computing are used to adjust the regularization factor through the condition number of the covariance matrix, calculate the pseudo-inverse matrix, and normalize the beamforming weights to suppress the occurrence of pseudo peaks.

Benefits of technology

The real-time detection of fuzzy suppression on the port and starboard sides of STMV is realized, which improves the calculation speed and efficiency, enhances the reliability of fuzzy suppression, and effectively suppresses the occurrence of false peaks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119780890B_ABST
    Figure CN119780890B_ABST
Patent Text Reader

Abstract

The application discloses a STMV left and right side ambiguity suppression method and system, simulating a received signal in a target direction; preprocessing the input signal, accelerating the covariance matrix and the condition number of the received signal data through GPU and cuda calculation, adjusting the regularization factor, and accelerating the pseudo-inverse calculation of the covariance matrix; calculating the direction vector of each azimuth beam forming, weighting and combining the signal through the direction vector to obtain the weight in the beam forming algorithm, and then normalizing the weight; calculating the azimuth spectrum under a given direction through GPU acceleration and cuda; calculating the azimuth spectrum and the beam forming signal of each frequency band, accumulating the results of all frequency bands, and displaying the azimuth spectrum result. The application fully utilizes the advantages of GPU parallel acceleration calculation, and can satisfy the real-time processing of the STMV left and right side ambiguity suppression algorithm.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of underwater acoustic lateral guidance, and in particular to a method and system for suppressing port and starboard fuzziness of an STMV. Background Art

[0002] In the field of underwater acoustic direction finding, port and starboard ambiguity often arises. To address this issue, a common approach is to use specially structured linear arrays. Dual-linear arrays are a common array structure in array signal processing and are particularly well-suited for signal direction estimation. Combined with beamforming, these sonar arrays process the signals received. The basic idea of ​​beamforming is to utilize multiple sensors (such as microphones or array sensors) to receive signals from different directions. By appropriately weighting and combining these signals, these signals are enhanced to enhance signals from specific directions while suppressing noise or interference from other directions. Conventional beamforming (CBF) is relatively simple to implement and has low computational complexity, but it suffers from limited array gain, low spatial resolution, and poor interference resolution. Steered minimum variance beamforming (STMV) can significantly improve signal quality in high-interference environments by minimizing the effects of interference and noise. However, STMV involves the calculation of the covariance matrix and the solution of the inverse matrix, which greatly increases the computational complexity of signal processing. As a result, the broadband STMV algorithm based on conventional engineering implementation cannot be run in real time in the existing sonar detection system due to its excessive computational complexity. Summary of the Invention

[0003] The technical problem to be solved by the present invention is to provide a method and system for starboard and port fuzzy suppression of STMV in view of the deficiencies in the existing technology, so as to effectively suppress the occurrence of false peaks and enhance the reliability of starboard and port fuzzy suppression.

[0004] To solve the above technical problems, the technical solution adopted by the present invention is: a method for suppressing the port and starboard fuzziness of an STMV, comprising the following steps:

[0005] S1. Simulate the received signal in the target direction, generate received data of a linear frequency modulation signal, and calculate the delay of each array element. By using the delay difference between different array elements, simulate the different times when the signal in the target direction arrives at each array element to obtain the input signal;

[0006] S2. Preprocess the input signal, calculate the covariance matrix of the input signal data through GPU acceleration and CUDA, calculate the condition number of the covariance matrix, adjust the regularization factor according to the covariance matrix condition number, and use CUDA and GPU acceleration to calculate the pseudo-inverse matrix of the covariance matrix;

[0007] S3. Calculate the direction vector of each azimuth beamforming, and obtain the weight in the beamforming algorithm by weighting the direction vector and combining the pseudo-inverse matrix;

[0008] S4. Weighting and combining the weight and the received signal to obtain a value of an azimuth spectrum;

[0009] S5. For single-frequency signals, execute steps S2 to S4 once to calculate the beamforming and azimuth spectrum of the single-frequency signal. For broadband signals, select the frequency band of the broadband signal through the frequency range, and perform frequency domain decomposition of the broadband signal through fast Fourier transform, select the signal of the specified frequency band, repeat steps S2 to S4 for the signal of each frequency band, obtain the azimuth spectrum and beamforming signal of the corresponding frequency band, and accumulate the results of all frequency bands to obtain the azimuth spectrum result.

[0010] The present invention fully utilizes the covariance matrix to obtain the spatial correlation of the input signal, and through inverse matrix operations, it more effectively distinguishes and suppresses interfering signals, retaining the desired signal. It then generates beamforming weights for each azimuth angle to maximize the gain of the desired signal and minimize noise and interference. Finally, by combining the weights with the covariance matrix, it calculates the signal energy in the target direction, plots the azimuth spectrum, and clearly displays the signal strength in the target direction, achieving a port and starboard fuzzy suppression effect. At the same time, the present invention improves computational speed and efficiency by assigning the computational tasks of the STMV beamforming algorithm to the GPU.

[0011] The pseudo-inverse matrix expression is: + =VΣ + U H ; V is an N x N unitary matrix, U H is the conjugate transpose of U, which is an NxN unitary matrix, Σ + is the pseudo-inverse matrix of Σ, which is an N x N diagonal matrix, A + (R x +λI), R x is the covariance matrix of the input signal, which is an N x N square matrix, where N is the number of array elements, X n is the nth column vector of the input signal matrix, It's X n is the conjugate transpose of , λ is the regularization factor, and I is the N x N identity matrix.

[0012] In order to increase the numerical stability of the covariance matrix, the present invention introduces a regularization factor when calculating the pseudo-inverse to prevent the pseudo-inverse calculation from failing.

[0013] The process of determining the regularization factor λ includes:

[0014] When CR≤50, take λ=10-8 At this time, the signal quality is high, and by taking the minimum value, the original structure of the signal can be retained to the greatest extent, ensuring the accuracy of the result. 5 When λ=10, the signal matrix is ​​ill-conditioned, so the regularization factor is increased to effectively suppress the numerical error caused by the ill-conditioned matrix and improve the robustness of the algorithm.

[0015] When 50 <CR<4×10 5 hour, At this time, an appropriate λ is selected according to the specific CR value, and a smooth transition is achieved through linear interpolation to achieve a dynamic balance between accuracy and robustness.

[0016] Among them, the condition number σ max is the covariance matrix R x The largest singular value after SVD decomposition, σ min is the covariance matrix R x The smallest singular value after SVD decomposition. The present invention designs multiple CUDA-based kernel functions to achieve real-time detection of starboard and starboard fuzzy suppression. The calculation formula of the weight W(:, k) of the kth azimuth angle is: is the pseudo-inverse matrix, A k H Represents the array flow matrix A k The conjugate transpose of , g is the directional vector; A k =[α k1 α k2 ], f represents the frequency of the signal, c represents the speed of wave propagation, array represents the position vector matrix of each array element in the array receiving data, j is the imaginary unit, θ k is the kth azimuth angle.

[0017] The calculation formula of the azimuth spectrum value is: B(k)=W * (:, k) H ·R X W * (:, k); N is the number of array elements, X n is the nth column vector of the input signal matrix, It's X n The conjugate transpose of , k represents the azimuth angle number, ranging from 1 to 361, W*(:, k) is the normalized vector of W(:, k), W(:, k) is the weight of the kth azimuth angle, W*(:, k) H is the conjugate transpose of W*(:, k).

[0018] The present invention performs normalization processing on the weight vector to maintain numerical stability, thereby suppressing the occurrence of pseudo peaks.

[0019] Azimuth spectrum B final The calculation formula is: Where f0 is the starting frequency, f1 is the ending frequency, and B(f) is the azimuth spectrum at each frequency point.

[0020] As an inventive concept, the present invention also provides a STMV starboard and port fuzzy suppression system, comprising a memory, a processor, and a computer program stored in the memory; the processor executes the computer program to implement the steps of the above method.

[0021] Compared with the prior art, the beneficial effects of the present invention are as follows: the present invention addresses the problem that the existing STMV beamforming algorithm has a slow computing speed on the C language platform and cannot meet the real-time requirements. By allocating the computing tasks of the STMV beamforming algorithm to the GPU, the computing speed and efficiency are improved, and multiple CUDA-based kernel functions are designed to achieve real-time detection of port and starboard fuzzy suppression. Stability processing is introduced. The condition number calculation is used to adjust the regularization factor to avoid numerical instability, and the beamforming weight vector is normalized to ensure the stability of the pseudo-inverse calculation and the beamforming weight vector, thereby suppressing the occurrence of pseudo-peaks. Experiments have shown that the present invention can perform real-time port and starboard fuzzy suppression processing on dual-line array data with a sampling rate of 5000HZ and 512 array elements on a platform with a CPU of i9-12900K, a GPU of RTX-4090, and a memory of 128G, and obtains an acceleration ratio of about 30 times, which greatly shortens the running time, effectively suppresses the occurrence of pseudo-peaks, and enhances the reliability of port and starboard fuzzy suppression. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 This is the flow chart of the STMV port and starboard fuzzy suppression method;

[0023] Figure 2 Design graphs for data processing and heterogeneous programming models;

[0024] Figure 3 Comparison of azimuth spectrum results without and with stabilization processing; (a) result without stabilization processing, (b) result with stabilization processing;

[0025] Figure 4 Comparison of the azimuth spectrum results of a broadband signal using CPU serial calculation and GPU parallel calculation; (a) CPU serial method results, (b) CPU parallel method results. DETAILED DESCRIPTION

[0026] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.

[0027] Example 1

[0028] An embodiment of the present invention provides a CUDA-accelerated STMV starboard and port blur suppression method, comprising the following steps:

[0029] S1. Simulate the received signal in the target direction, generate the received data of a linear frequency modulation signal (wideband signal), and calculate the delay of each array element. By using the delay difference between different array elements, simulate the different times at which the signal in the target direction arrives at each array element, providing the input signal for subsequent beamforming, represented as X. The input signal is an array containing complex signals, and each complex number is represented by a real part and an imaginary part. Because the size of the input data is N x M x 2, N is the size of the data matrix (that is, the number of array elements), and M is the sampling frequency.

[0030] The phase of the FM signal is expressed as follows:

[0031]

[0032] Where f0 is the starting frequency, k0 is the modulation frequency, τ k is the delay of the kth array element.

[0033] S2. Preprocess the input signal, calculate the covariance matrix of the received signal data through GPU acceleration and CUDA, and calculate the condition number of the covariance matrix. Specifically, perform singular value decomposition on the GPU by calling the cusolverDnZgesvd function, and calculate the ratio of the singular values ​​(i.e., the condition number). Then, adjust the regularization factor sigma according to the covariance matrix condition number of the signal to adapt to different matrix condition numbers. Finally, use CUDA and GPU acceleration to calculate the pseudo-inverse of the covariance matrix.

[0034] (2.1) The covariance matrix is ​​solved by the matrix multiplication kernal function. The covariance matrix calculation formula is as follows:

[0035]

[0036] Where X is the signal matrix generated in S1, X H is the conjugate transpose of X, N is the number of array elements, X nis the nth column vector of the signal matrix.

[0037] Without a GPU, the complexity of calculating the covariance matrix is ​​N x N x M, where N is the number of array elements and M is the sampling frequency. On a GPU, however, computing threads can be allocated to different loop levels to execute loops in parallel.

[0038] First, the input data from the CPU is copied to the GPU device memory. The two-dimensional thread index (i, k) is obtained using blockIdx and threadIdx, which serve as the row and column indices of the covariance matrix. A for loop is used to iterate over the data at each frequency point, calculating the real and imaginary parts of the complex signal. These values ​​are then used with the CUDA kernel to calculate the covariance matrix. After the calculation is complete, the result is copied from the GPU device back to the host. On the GPU, if each (i, k) element is assigned to a thread, each thread only needs to perform N operations.

[0039] (2.2) Condition number solution is implemented by the condition number calculation kernal function. The condition number is usually used to measure the numerical stability of a matrix. A higher condition number indicates that the matrix is ​​more unstable or more susceptible to numerical errors. Here, the condition number of a given matrix is ​​calculated by singular value decomposition (SVD). SVD is a computationally intensive operation. When processing large matrices, the calculation speed can be significantly improved through GPU acceleration. The zgesvd used on the CPU adopts the SVD algorithm in the LAPACK library. For an MxN complex matrix, the computational complexity of the SVD decomposition is NxNxN. The cusolverDnZgesvd on the GPU uses the cuSOLVER library to perform SVD, which can significantly reduce the actual execution time.

[0040] First, allocate memory for the covariance matrix on the CUDA device, transfer it from host memory to GPU memory, and perform singular value decomposition (SVD) using cusolverDnZgesvd. The SVD decomposition formula is as follows:

[0041] R x =UΣV H

[0042] SVD converts the covariance matrix R x The matrix is ​​decomposed into three parts: U∑V H , R x is an N x N square matrix, U is an N x N unitary matrix, V H is the conjugate transpose of V, which is an N x N unitary matrix, ∑ is an N x N diagonal matrix, and the elements on the diagonal are all non-negative real numbers σ i , called R x The singular values ​​of .

[0043] SVD decomposes the matrix into three parts: U∑V H After the SVD calculation is completed, the condition number is obtained by calculating the ratio of the singular values. The formula is:

[0044]

[0045] Among them, σ max is the largest singular value, σ min is the smallest singular value.

[0046] (2.3) Then, the regularization factor λ is adjusted according to the covariance matrix condition number CR to adapt to different matrix condition numbers. The adjustment rule is as follows:

[0047] 1. When CR≤50, the numerical stability of the covariance matrix is ​​better, and λ=10 -8 .

[0048] 2. When CR≥4×10 5 When , the numerical stability of the covariance matrix is ​​poor, so we take λ = 10.

[0049] 3. When 50 <CR<4×10 5 When the regularization factor λ is 10 -8 The linear interpolation calculation between 1 and 10 is as follows:

[0050]

[0051] Since the covariance matrix R x Find the pseudo-inverse, if R x The condition number of is very high or close to singularity, which can lead to numerical instability or pseudo-inverse calculation failure. To solve this problem, the regularization term λ·I is introduced to stabilize the pseudo-inverse calculation, where is the identity matrix. The formula for calculating the pseudo-inverse matrix is ​​as follows:

[0052]

[0053] where pinv(·) represents the pseudo-inverse of the matrix.

[0054] (2.4) The pseudo-inverse matrix is ​​solved by the pseudo-inverse matrix calculation kernal function. The pseudo-inverse matrix is ​​solved by performing singular value decomposition (SVD) through cusolverDnZgesvd, and (R x +λI) is decomposed into U∑V H ,, thereby obtaining the pseudo-inverse matrix of the input matrix, which is used to calculate the beamforming weight vector in step S3. The formula is:

[0055] A + =V∑ + U H

[0056] Among them, A + (R x +λI), and then use the pseudo-inverse matrix Indicates that R x is an N x N square matrix, V is an NxN unitary matrix, U H It is the conjugate transpose of U, which is an Nx N unitary matrix, and ∑ is an Nx N diagonal matrix. The elements on the diagonal are all (R x +λI), ∑ + is the pseudo-inverse matrix of ∑.

[0057] S3. Loop through each azimuth angle, calculate the direction vector of each azimuth beamforming, and use the direction vector to weight and combine the pseudo-inverse matrix processed in step (2.4) to obtain the weight in the beamforming algorithm.

[0058] (3.1) First, define a zero matrix W to store the beamforming weights at each angle, and generate the array flow vector α according to the current angle k. k1 and α k2 , v k1 is the main arrival direction of the wave, corresponding to θ k Angle, another arrival direction v k 2 corresponds to an angle of -θ k , expressed as:

[0059]

[0060] According to the arrival direction v k1 Calculate the array flow vector α k1 :

[0061]

[0062] According to the arrival direction v k2 Calculate the array flow vector α k2 :

[0063]

[0064] Combination α k1 and α k2 Construct array flow matrix A k :

[0065] A k =[α k1 α k2 ]

[0066] Then calculate the beamforming weight vector W(:, k):

[0067]

[0068] in, is the pseudo-inverse matrix of the covariance matrix, obtained by step (2.4), A k H Represents the array flow matrix A k The conjugate transpose of , k represents the kth azimuth angle, and its value range is an integer from 1 to 361. W(:, k) represents the weight vector result of the kth azimuth angle. g is a directional vector used to set the weight distribution. f represents the frequency of the signal, c represents the speed of wave propagation, array represents the position vector matrix of each element in the array, and j is the imaginary unit.

[0069] Finally, the weight vector W is normalized. Normalization can maintain numerical stability and thus suppress the appearance of pseudo peaks. The formula is:

[0070]

[0071] Wherein, norm(W(:,k)) is the l2 norm of the calculated vector W(:,k).

[0072] S4 uses GPU acceleration and CUDA to calculate the azimuth spectrum for a given direction. The weights and the received signal are weighted and combined to obtain the azimuth spectrum value. The azimuth spectrum is commonly used in directional signal processing, particularly in beamforming, to quantify and display signal energy in different directions. By calculating the azimuth spectrum in different directions, the direction of the target signal can be determined and the optimal signal direction can be found in multipath propagation or interference environments.

[0073] (4.1) The azimuth spectrum calculation is implemented by the azimuth spectrum calculation kernel function. When the azimuth spectrum is calculated without a GPU, the entire calculation process has a complexity of K x N x N, while the complexity of the GPU is N x N, where K is the number of azimuth angles and N is the number of array elements.

[0074] First, allocate device memory for the input weight matrix, received signal data, and output azimuth spectrum B, transfer them from host memory to GPU memory, then each thread calculates the azimuth spectrum corresponding to a direction and stores the calculation results. The formula for calculating the azimuth spectrum is:

[0075] B(k)=W * (:,k) H ·R X W * (:,k); where W * (:,k) H W * Conjugate transpose of (:,k).

[0076] S5. For a single-frequency signal, execute steps S2 to S4 once to calculate the beamforming and azimuth spectrum of the single-frequency signal.

[0077] S6. For broadband signals, select the frequency band of the signal through the frequency range, decompose the signal in the frequency domain through fast Fourier transform, select the signal of the specified frequency band, repeat steps S2 to S4 for the signal of each frequency band, obtain the azimuth spectrum and beamforming signal of the frequency band, accumulate the results of all frequency bands, and display the azimuth spectrum results.

[0078] (6.1) Conversion of time domain signal to frequency domain:

[0079] X fft =F(X)

[0080] Wherein, F(X) represents FFT transformation of X.

[0081] (6.2) STMV calculation of frequency domain signal: For each frequency point f, calculate the azimuth spectrum based on the weight matrix and frequency domain signal:

[0082] B(k)=W * (:,k) H ·R X W * (:,k)

[0083] ; (6.3) Final spectrum synthesis: After processing all frequency points, the final azimuth spectrum is obtained:

[0084]

[0085] Where f0 is the starting frequency, f1 is the ending frequency, and B(f) is the azimuth spectrum at each frequency point.

[0086] Figure 2 This is the relationship between the CPU host device and the GPU device involved in the above implementation method when performing the STMV starboard and port fuzzy suppression calculations.

[0087] In order to verify the algorithm proposed in the embodiment of the present invention, comparative experiments are conducted based on the CPU serial implementation of STMV starboard and port fuzzy suppression and the CUDA parallel implementation algorithm.

[0088] Experimental data: Simulated data with a target direction of -45°. The data sampling rate is 5000 Hz, the starting frequency is 445 Hz, and the ending frequency is 450 Hz. The receiving array is a dual-linear array with 512 elements, the element spacing is half a wavelength, and the signal duration is 1 second. The total input data size is 5000x512x2.

[0089] Hardware requirements: CPU model i9-12900K, GPU model RTX-4090, memory 128G.

[0090] Experimental content 1: Based on the input experimental data, the algorithm is implemented without stability processing and after stability processing. The results are compared. Figure 3 shown.

[0091] Experiment 2: Based on the input experimental data, the STMV port and starboard fuzzy suppression algorithms were implemented serially on the CPU and in parallel on CUDA. The computational time of each module within a single frequency band was statistically analyzed in segments. The results are shown in Table 1.

[0092] Table 1 Comparison of the time taken by the CPU-based serial implementation method and the CUDA-based parallel implementation method within a single frequency band

[0093]

[0094] Steps 1 and 5 are both executed on the CPU device.

[0095] Result analysis: refer to Figure 3 Under the same input signal conditions, a pseudo peak appears at 45° before stabilization processing, but after stabilization processing, the pseudo peak at 45° is suppressed. Figure 4 Under the same input signal conditions, the results obtained by the CPU serial method and the GPU parallel method are consistent. It can be seen that the target direction is at -45°, which is consistent with the experimental data direction.

[0096] Table 1 is a comparison table of the time taken by the CPU-based serial implementation method and the GPU-based parallel implementation method. It can be seen that the method proposed in the present invention reduces the operation time within a single frequency band from 60.346 seconds to 1.921 seconds, which can meet the real-time processing of the STMV starboard and port fuzzy suppression algorithms.

[0097] Example 2

[0098] Embodiment 2 of the present invention provides a system corresponding to the above-mentioned embodiment 1, including a memory, a processor, and a computer program stored in the memory; the processor executes the computer program in the memory to implement the steps of the method in the above-mentioned embodiment 1.

[0099] In some implementations, the memory may be a high-speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk storage.

[0100] In other implementations, the processor can be a central processing unit (CPU), a digital signal processor (DSP), a microprocessor, or other processing unit or device, without limitation.

[0101] Embodiment 3

[0102] Embodiment 3 of the present application provides a computer readable storage medium corresponding to the above-mentioned embodiment 1, which stores computer programs / instructions. The computer programs / instructions are executed by a processor to implement the steps of the method of embodiment 1.

[0103] The computer readable storage medium can be a tangible device that maintains and stores instructions for use by an instruction execution device. The computer readable storage medium can be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any combination thereof.

[0104] Those skilled in the art will understand that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, etc.) containing computer usable program code. The solutions in the embodiments of the present application can be implemented in various computer languages, such as the object-oriented programming language Java and the interpreted scripting language JavaScript, etc.

[0105] The present application is described with reference to flowcharts and / or block diagrams according to the methods, devices (systems), and computer program products of the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to produce a machine, so that the instructions executed by the computer or other programmable data processing devices produce a device that implements the functions specified in the flowcharts and / or block diagrams. Figure 1 The functions specified in a flow or multiple flows and / or blocks Figure 1 The functions specified in a flow or multiple flows and / or blocks

[0106] These computer program instructions can also be loaded onto a computer or other programmable data processing device to cause a series of operational steps to be performed on the computer or other programmable data processing device to produce a computer-implemented process such that the instructions executed by the computer or other programmable data processing device provide the functions specified in the flowcharts and / or block diagrams. Figure 1 The functions specified in a flow or multiple flows and / or blocks Figure 1The steps for the function specified in one or more boxes.

[0107] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present application.

[0108] Obviously, those skilled in the art may make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.

Claims

1. A method for suppressing port and starboard fuzziness of STMV, characterized in that: The following steps are involved: S1. Simulate the received signal in the target direction, generate received data of a linear frequency modulation signal, and calculate the delay of each array element. By using the delay difference between different array elements, simulate the different times when the signal in the target direction arrives at each array element to obtain the input signal; S2. Preprocess the input signal, calculate the covariance matrix of the input signal data through GPU acceleration and CUDA, calculate the condition number of the covariance matrix, adjust the regularization factor according to the covariance matrix condition number, and use CUDA and GPU acceleration to calculate the pseudo-inverse matrix of the covariance matrix; S3. Calculate the direction vector of each azimuth beamforming, and obtain the weight in the beamforming algorithm by weighting the direction vector and combining the pseudo-inverse matrix; S4. Weighting and combining the weight and the received signal to obtain a value of an azimuth spectrum; S5. For single-frequency signals, execute steps S2 to S4 once to calculate the beamforming and azimuth spectrum of the single-frequency signal. For broadband signals, select the frequency band of the broadband signal through the frequency range, and perform frequency domain decomposition of the broadband signal through fast Fourier transform, select the signal of the specified frequency band, repeat steps S2 to S4 for the signal of each frequency band, obtain the azimuth spectrum and beamforming signal of the corresponding frequency band, and accumulate the results of all frequency bands to obtain the azimuth spectrum result.

2. The STMV starboard and port blur suppression method according to claim 1, characterized in that: In step S2, the pseudo-inverse matrix expression is: + =VΣ+U H ; V is an N x N unitary matrix, U H is the conjugate transpose of U, which is an NxN unitary matrix, Σ + is the pseudo-inverse matrix of Σ, which is an N x N diagonal matrix, A + (R x +λI), R x is the covariance matrix of the input signal, which is an N x N square matrix, where N is the number of array elements, X n is the nth column vector of the input signal matrix, It's X n is the conjugate transpose of , λ is the regularization factor, and I is the N x N identity matrix.

3. The STMV starboard and port blur suppression method according to claim 2, characterized in that: The process of determining the regularization factor λ includes: When CR≤50, take λ=10 -8 ; When CR≥4×10 5 When λ=10, When 50 <CR<4×10 5 hour, Among them, the condition number σ max is the covariance matrix R x The largest singular value after SVD decomposition, σ min is the covariance matrix R x The smallest singular value after SVD decomposition.

4. The STMV starboard and port blur suppression method according to claim 1, characterized in that: In step S3, the calculation formula of the weight W(:,k) of the kth azimuth angle is: is the pseudo-inverse matrix, A k H Represents the array flow matrix A k The conjugate transpose of , g is the directional vector; A k =[α k1 α k2 ], f represents the frequency of the signal, c represents the speed of wave propagation, array represents the position vector matrix of each array element in the array receiving data, j is the imaginary unit, θ k is the kth azimuth angle.

5. The STMV starboard and port blur suppression method according to claim 1, characterized in that: In step S4, the calculation formula of the azimuth spectrum value is: B(k)=W * (:,k) H ·R X W * (:,k); N is the number of array elements, X n is the nth column vector of the input signal matrix, It's X n The conjugate transpose of , k represents the azimuth angle number, ranging from 1 to 361, W * (:,k) is the normalized vector of W(:,k), W(:,k) is the weight of the kth azimuth, W * (:,k) H W * Conjugate transpose of (:,k).

6. The STMV starboard and port blur suppression method according to claim 1, characterized in that: For broadband signals, the azimuth spectrum B final The calculation formula is: Where f0 is the starting frequency, f1 is the ending frequency, and B(f) is the azimuth spectrum at each frequency point.

7. A STMV port and starboard fuzzy suppression system, comprising a memory, a processor, and a computer program stored in the memory; characterized in that: The processor executes the computer program to implement the steps of the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Twin-line array sonar port-and-starboard identification method and corresponding system

    CN101666876A

  • Adaptive focusing broadband beam forming method and system

    CN113422630A