A Real-time Processing Method and System for Underwater Pulse Signals

Through the combination of double-threshold energy detection and Fourier transform combined with feature matching method, real-time detection and parameter estimation of underwater pulse signals are realized, solving the problem of insufficient detection performance of underwater pulse signals in the prior art, and improving detection efficiency and accuracy.

CN119298903BActive Publication Date: 2025-07-25INST OF ACOUSTICS CHINESE ACAD OF SCI
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411333095.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-24
Publication Date
2025-07-25
Estimated Expiration
2044-09-24

AI Technical Summary

Technical Problem

The existing water acoustic signal processing methods are difficult to achieve real-time detection and parameter estimation of underwater pulse signals under non-cooperative conditions, especially under low signal-to-noise ratio conditions, resulting in a degradation of detection performance.

Method used

The dual-threshold energy detection method is used to set the signal detection window and sliding step length to detect the rising and falling edges of the pulse, and the average energy of the pulse part and the non-pulse part is optimized. The pulse parameters are estimated in combination with the Fourier transform and feature matching method, including pulse width, center frequency, bandwidth and type.

Benefits of technology

It improves the efficiency and credibility of underwater pulse signal detection, can accurately estimate pulse parameters, and is more adaptable to LFM signals, can identify single-frequency and linear frequency modulation signals, and calculate combined pulse periods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119298903B_ABST
    Figure CN119298903B_ABST
Patent Text Reader

Abstract

The present invention belongs to the field of underwater acoustic signal processing, and discloses a real-time processing method and system for underwater pulse signals. The method includes: receiving continuous underwater pulse signals, and at the same time sliding a window based on the set signal detection window size and sliding step, and calculating the energy of the current window; detecting the pulse rising edge and pulse falling edge in the current window by comparing the energy of the current window with the rising edge energy threshold and the falling edge energy threshold respectively, and optimizing and correcting the rising edge energy threshold and the falling edge energy threshold by using the average energy of the pulse part and the non-pulse part respectively; using the currently detected pulse rising edge and pulse falling edge to extract the current pulse signal and estimate the pulse parameters. Because the energy detection method using double thresholds is used for pulse signal detection, it has higher efficiency and credibility compared with the energy detection method using a single threshold.
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 signal processing, and particularly to a real-time processing method and system for underwater pulse signals. Background Art

[0002] In recent years, underwater acoustic countermeasure has been developing towards the direction of systemization, unmannedness, and intelligence. In the process of underwater acoustic signal processing, intercepting and analyzing pulse signals in a timely manner is one of the important tasks of underwater acoustic countermeasure. In the field of underwater target detection, it is necessary to detect underwater acoustic pulse signals under non-cooperative conditions and estimate pulse parameters such as the center frequency, bandwidth, pulse width, and period of the signal. Affected by factors such as ocean ambient noise, platform noise, and multi-path, it is challenging to achieve real-time detection and parameter estimation of unknown sonar signals.

[0003] Single-frequency signals (Continuous Wave, CW) and linear frequency-modulated signals (Linear Frequency Modulated, LFM), as well as combined signals of the two, are commonly used underwater acoustic pulse signals. A single-frequency modulated signal refers to a signal that uses only one frequency carrier for transmission and does not involve changes in multiple frequencies or modulation methods. A linear frequency-modulated signal refers to a signal whose frequency continuously changes linearly during the duration, and its carrier frequency increases or decreases uniformly with time.

[0004] In practical applications, in the case where the form of the sonar pulse is unknown, it is necessary to detect the presence of the pulse in real time and accurately estimate parameter information such as the center frequency, pulse width, frequency modulation width, and period of the pulse. The short-time Fourier transform algorithm is an efficient time-frequency analysis method and has wide applications in the real-time detection and parameter estimation of unknown pulse signals. However, LFM signals have time-varying frequencies, and relying solely on the short-time Fourier transform for parameter estimation will result in performance degradation.

[0005] In addition, when detecting non-cooperative underwater acoustic pulse signals, in order to avoid missing arrival time and pulse width information, it is necessary to perform real-time detection on the received signals. There are certain deficiencies in the existing time-frequency analysis methods in terms of usage, and their adaptability to different signals needs to be further improved. It is difficult to meet the detection requirements under low signal-to-noise ratio conditions. Therefore, it is of great significance to study an appropriate real-time processing method for underwater sonar pulse signals to ensure the accuracy of real-time detection and parameter estimation of underwater sonar pulse signals. Summary of the Invention

[0006] The purpose of the present invention is to overcome the defects of the prior art and propose a real-time processing method for underwater pulse signals.

[0007] On the one hand, the present invention provides a real-time processing method for underwater pulse signals, including:

[0008] Receive continuous underwater pulse signals, and at the same time, slide a window based on the set signal detection window size and sliding step length, and calculate the energy of the current window;

[0009] Detect the pulse rising edge and pulse falling edge in the current window by comparing the energy of the current window with the rising edge energy threshold and the falling edge energy threshold respectively, and optimize and correct the rising edge energy threshold and the falling edge energy threshold by using the average energy of the pulse part and the non-pulse part respectively;

[0010] Extract the current pulse signal by using the currently detected pulse rising edge and pulse falling edge, and estimate the pulse parameters, where the pulse parameters include: some or all of the pulse width, pulse center frequency, pulse bandwidth, and pulse interval.

[0011] In an improved real-time processing method for underwater pulse signals, the pulse parameters further include: pulse type; the method further includes:

[0012] Determine the pulse type of the current pulse signal according to the pulse bandwidth, and the pulse type includes: single-frequency signal and chirp signal.

[0013] In an improved real-time processing method for underwater pulse signals, the pulse parameters further include: pulse period; the method further includes:

[0014] Accumulate the determined pulse types, and judge whether the current continuous signal contains a combined pulse according to whether the accumulated pulse types are the same pulse type;

[0015] If it is a combined pulse, construct a pulse feature vector, and when subsequent pulses arrive, find the number of sub-pulses in the combined pulse according to the feature matching method, so as to calculate the combined pulse period; if it is not a combined pulse, calculate the ratio of the pulse interval to the signal sampling rate to obtain the pulse period.

[0016] In an improved real-time processing method for underwater pulse signals, detect the pulse rising edge and pulse falling edge in the current window by comparing the energy of the current window with the rising edge energy threshold and the falling edge energy threshold respectively, and optimize and correct the rising edge energy threshold and the falling edge energy threshold by using the average energy of the pulse part and the non-pulse part respectively, specifically including:

[0017] Determine whether the current window energy average is greater than the rising edge energy threshold k1*average1. If average > k1*average1, it is determined that there is a pulse rising edge in the current window, and the current window energy average is assigned to average2; otherwise, update average1 = (average1 + average) / 2. Here, k1*average1 is the rising edge energy threshold, k1 is the pulse rising edge energy threshold coefficient, and the initial value of average1 is the window energy of the first window.

[0018] Determine whether the current window energy average is less than the falling edge energy threshold k2*average2. If the current window energy average < k2*average2, it is determined that there is a pulse falling edge in the current window, and the current window energy is recorded as average1; otherwise, update average2 = (average2 + average) / 2. Here, k2*average2 is the falling edge energy threshold, k2 is the pulse falling edge energy threshold coefficient, and the initial value of average2 is pre-set.

[0019] Record the position of the first window where average > k1*average1, and take the midpoint of this window as the sampling point of the position where the currently detected pulse rising edge is located.

[0020] After obtaining the rising edge, slide the window, record the position of the first window where average < k2*average2, and take the midpoint of this window as the sampling point of the position where the currently detected pulse falling edge is located.

[0021] In an improved real-time processing method for underwater pulse signals, using the currently detected pulse rising edge and pulse falling edge, extract the current pulse signal and estimate the pulse parameters, including:

[0022] Using the sampling point of the position where the rising edge of the current pulse is located and the sampling point of the position where the falling edge of the current pulse is located, extract the current pulse signal x pulse ;

[0023] Calculate the pulse width w using the following formula i :

[0024]

[0025] where i is the current pulse index, n is the number of pulses, w i is the current pulse width, d i is the sampling point position of the current pulse falling edge, u i is the sampling point position of the current pulse rising edge, f sis the sampling rate;

[0026] Calculate the pulse interval p using the following formula i :

[0027]

[0028] For the current pulse x pulse Perform the Fourier transform FFT(.) to obtain the spectrum Xf(ω), calculate the power spectrum P(ω) of the current pulse spectrum, and take the positive frequency part P of the power spectrum half ;

[0029] Xf(ω) = FFT(x pulse )

[0030] P(ω) = |Xf(ω)| 2 = Xf(ω)·Xf * (ω), ω = 0, 1,..., N - 1

[0031] P half = P(ω), ω = 0, 1,..., N / 2 - 1

[0032] where Xf * (ω) is the conjugate of Xf(ω), ω is the frequency index, and N is the number of Fourier transform points;

[0033] Perform energy detection on the positive frequency part P of the above power spectrum to obtain the position f half of the rising edge of the power spectrum, and the position f i1 of the falling edge of the power spectrum. The pulse bandwidth b i2 of the current pulse is expressed as: i is expressed as:

[0034] b i = f i2 - f i1 , i = 1, 2,..., n

[0035] The center frequency f i of the current pulse is expressed as:

[0036]

[0037] In an improved real-time processing method for underwater pulse signals, according to the pulse bandwidth, determine the pulse type of the current pulse signal, including:

[0038] Compare the pulse bandwidth of the current pulse signal with the set bandwidth threshold. If it is greater than the set bandwidth threshold, determine that the pulse type of the current pulse signal is a chirp signal; otherwise, determine it as a single-frequency signal.

[0039] In an improved real-time processing method for underwater pulse signals, when constructing the pulse feature vector and subsequent pulses arrive, the number of sub-pulses in the combined pulse is found according to the feature matching method, and then the combined pulse period is calculated, including:

[0040] Construct a pulse feature vector F i =[w i ,p i ,f i ,b i ,t i , where w i is the pulse width of the current pulse, p i is the pulse interval of the current pulse, f i is the center frequency of the current pulse, b i is the pulse bandwidth of the current pulse, t i is the pulse type of the current pulse;

[0041] Calculate the correlation coefficient matrix R using the following formula:

[0042] R = corr(F)

[0043]

[0044] where F is a 5×n pulse feature matrix composed of n pulse feature vectors, 5 is the number of features in the feature vector, n is the number of pulses, corr(F) is the Pearson correlation coefficient between all pairs of feature vectors of F, and the returned is an n×n symmetric matrix R. R(i,j) is the correlation coefficient between the i-th feature vector and the j-th feature vector. k is the feature index, and the value of k is 1…5; x ki is the value of the k-th feature in the i-th feature vector, is the average value of the i-th feature vector; x kj is the value of the k-th feature in the j-th feature vector, is the average value of the j-th feature vector;

[0045] Find the number of sub-pulses h of the combined pulse such that there is at least one h×h sub-matrix in the matrix R, and all elements except the diagonal elements are greater than p, where, p > 0.9;

[0046] Calculate the combined pulse period CT using the following formula i :

[0047]

[0048] where u i is the sampling point position where the rising edge of the i-th pulse is located, u i+h+1is the sampling point position where the rising edges of h + 1 sub-pulses are located after the i-th pulse.

[0049] In an improved real-time processing method for underwater pulse signals, the method further includes:

[0050] Calculate the combined pulse width cw using the following formula i :

[0051]

[0052] The combined pulse center frequency cf i

[0053]

[0054] where d i+h is the sampling point position of the position where the falling edges of h pulses are located after the i-th pulse.

[0055] On the other hand, the present invention provides an underwater pulse signal real-time processing system, including:

[0056] An energy calculation module, configured to receive a continuous signal, and at the same time, slide a window based on a set signal detection window size and a sliding step, and calculate the current window energy;

[0057] A pulse detection module, configured to detect the pulse rising edge and the pulse falling edge in the current window by comparing the current window energy with the rising edge energy threshold and the falling edge energy threshold respectively, and optimize and correct the rising edge energy threshold and the falling edge energy threshold by using the average energy of the pulse part and the non-pulse part; and

[0058] A pulse parameter estimation module, configured to use the currently detected pulse rising edge and pulse falling edge to extract the current pulse signal and estimate pulse parameters, where the pulse parameters include: some or all of the pulse width, the pulse center frequency, the pulse bandwidth, and the pulse interval.

[0059] In an improved underwater pulse signal real-time processing system, the pulse parameters further include: pulse type;

[0060] The pulse parameter estimation module is further configured to determine the pulse type of the current pulse signal according to the pulse bandwidth, and the pulse type includes: single-frequency signal and chirp signal.

[0061] Compared with the prior art, the advantages of the present invention are:

[0062] 1. Common pulse signals include single - frequency pulses, linear frequency - modulated pulses, etc., which have strong energy concentration. The present invention uses a dual - threshold energy detection method for pulse signal detection, which has higher efficiency and credibility compared to the single - threshold energy detection method.

[0063] 2. Construct a feature vector with the pulse width, pulse interval, bandwidth, center frequency, and pulse type of sub - pulses, and use the feature - matching method to calculate the correlation coefficient to obtain the number of combined pulses, thereby estimating the parameters of combined pulses, which has higher reliability. BRIEF DESCRIPTION OF THE DRAWINGS

[0064] Figure 1 is the overall flowchart of the real - time underwater pulse signal processing method based on feature matching of the present invention;

[0065] Figure 2 is the schematic diagram of pulse detection of the present invention;

[0066] FIG. 3(a) is the time - frequency diagram of the single - frequency pulse of the present invention;

[0067] FIG. 3(b) is the time - domain waveform of the single - frequency pulse of the present invention;

[0068] FIG. 4(a) is the time - frequency diagram of the linear frequency - modulated pulse of the present invention;

[0069] FIG. 4(b) is the time - domain waveform of the linear frequency - modulated pulse of the present invention;

[0070] FIG. 5(a) is the time - frequency diagram of the combined pulse of the present invention;

[0071] FIG. 5(b) is the time - domain waveform of the combined pulse of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0072] CW, LFM, and combined signals of the two signals are common underwater acoustic pulse signals. The present invention mainly aims at identifying single - frequency signals, linear frequency - modulated signals, and combined signals of the two signals. It includes: single - frequency signals with fixed frequencies and combinations of single - frequency signals with different frequencies, linear frequency - modulated signals with fixed frequency ranges and combinations of linear frequency - modulated signals with different frequency ranges, and signal combinations of single - frequency signals and linear frequency - modulated signals.

[0073] A real - time underwater pulse signal processing method provided by the present invention includes:

[0074] Receiving continuous underwater pulse signals, and at the same time, sliding a window based on the set signal detection window size and sliding step, and calculating the energy of the current window;

[0075] By comparing the current window energy with the rising-edge energy threshold and the falling-edge energy threshold respectively, the pulse rising edge and the pulse falling edge in the current window are detected, and the average energy of the pulse part and the non-pulse part are used to optimize and correct the rising-edge energy threshold and the falling-edge energy threshold respectively;

[0076] Using the currently detected pulse rising edge and pulse falling edge, the current pulse signal is extracted and the pulse parameters are estimated, where the pulse parameters include: some or all of the pulse width, pulse center frequency, pulse bandwidth, and pulse interval.

[0077] In an improved real-time processing method for underwater pulse signals, the pulse parameters further include: pulse type; the method further includes:

[0078] According to the pulse bandwidth, the pulse type of the current pulse signal is determined, and the pulse type includes: single-frequency signal and chirp signal.

[0079] In an improved real-time processing method for underwater pulse signals, the pulse parameters further include: pulse period; the method further includes:

[0080] Accumulate the determined pulse types, and judge whether the current continuous signal contains a combined pulse according to whether the accumulated pulse types are the same pulse type;

[0081] If it is a combined pulse, a pulse feature vector is constructed. When the subsequent pulse arrives, the number of sub-pulses in the combined pulse is found according to the feature matching method, so as to calculate the combined pulse period; if it is not a combined pulse, the ratio of the pulse interval to the signal sampling rate is calculated to obtain the pulse period.

[0082] In an improved real-time processing method for underwater pulse signals, by comparing the current window energy with the rising-edge energy threshold and the falling-edge energy threshold respectively, the pulse rising edge and the pulse falling edge in the current window are detected, and the average energy of the pulse part and the non-pulse part are used to optimize and correct the rising-edge energy threshold and the falling-edge energy threshold respectively, specifically including:

[0083] Judge whether the current window energy average is greater than the rising-edge energy threshold k1*average1. If average > k1*average1, it is determined that there is a pulse rising edge in the current window, and the current window energy average is assigned to average2, otherwise update average1 = (average1 + average) / 2; where, k1*average1 is the rising-edge energy threshold, k1 is the pulse rising-edge energy threshold coefficient, and the initial value of average1 is the window energy of the first window;

[0084] Determine whether the current window energy average is less than the falling edge energy threshold k2*average2. If the current window energy average < k2*average2, it is determined that there is a pulse falling edge in the current window, and the current window energy is recorded as average1; otherwise, update average2 = (average2 + average) / 2. Here, k2*average2 is the falling edge energy threshold, k2 is the pulse falling edge energy threshold coefficient, and the initial value of average2 is pre-set.

[0085] Record the position of the first window where average > k1*average1, and take the midpoint of this window as the sampling point of the position where the current detected pulse rising edge is located.

[0086] After obtaining the rising edge, slide the window, record the position of the first window where average < k2*average2, and take the midpoint of this window as the sampling point of the position where the current detected pulse falling edge is located.

[0087] In an improved real-time processing method for underwater pulse signals, using the currently detected pulse rising edge and pulse falling edge, extract the current pulse signal and estimate the pulse parameters, including:

[0088] Using the sampling point of the position where the rising edge of the current pulse is located and the sampling point of the position where the falling edge of the current pulse is located, extract the current pulse signal x pulse ;

[0089] Calculate the pulse width w using the following formula i :

[0090]

[0091] where i is the current pulse index, n is the number of pulses, w i is the current pulse width, d i is the sampling point position where the falling edge of the current pulse is located, u i is the sampling point position where the rising edge of the current pulse is located, f s is the sampling rate;

[0092] Calculate the pulse interval p using the following formula i :

[0093]

[0094] Perform Fourier transform FFT(.) on the current pulse x pulse to obtain the spectrum Xf(ω), calculate the power spectrum P(ω) of the current pulse spectrum, and take the positive frequency part P of the power spectrum half ;

[0095] Xf(ω) = FFT(x pulse )

[0096] P(ω) = |Xf(ω)| 2 = Xf(ω)·Xf * (ω), ω = 0, 1, ..., N - 1

[0097] P half = P(ω), ω = 0, 1, ..., N / 2 - 1

[0098] where Xf * (ω) is the conjugate of Xf(ω), ω is the frequency index, and N is the number of points of the Fourier transform;

[0099] Perform energy detection on the positive frequency part P of the above power spectrum to obtain the position f of the rising edge of the power spectrum half , and the position f of the falling edge of the power spectrum i1 , and the pulse bandwidth b of the current pulse i2 is expressed as: i

[0100] b i = f i2 - f i1 , i = 1, 2, ..., n, i = 1, 2, ..., n

[0101] The center frequency f of the current pulse i is expressed as:

[0102]

[0103] In an improved real-time processing method for underwater pulse signals, according to the pulse bandwidth, determine the pulse type of the current pulse signal, including:

[0104] Compare the pulse bandwidth of the current pulse signal with a set bandwidth threshold. If it is greater than the set bandwidth threshold, determine that the pulse type of the current pulse signal is a chirp signal; otherwise, determine it as a single-frequency signal.

[0105] In an improved real-time processing method for underwater pulse signals, when constructing the pulse feature vector and subsequent pulses arrive, find the number of sub-pulses in the combined pulse according to the feature matching method, and then calculate the combined pulse period, including:

[0106] Construct the pulse feature vector F i = [w i , p i , f i , b i , t i , where w i is the pulse width of the current pulse, pi is the pulse interval of the current pulse, f i is the center frequency of the current pulse, b i is the pulse bandwidth of the current pulse, t i is the pulse type of the current pulse;

[0107] The correlation coefficient matrix R is calculated using the following formula:

[0108] R = corr(F)

[0109]

[0110] where F is a 5×n pulse feature matrix composed of n pulse feature vectors, 5 is the number of features in the feature vector, n is the number of pulses, corr(F) is the Pearson correlation coefficient between all pairs of feature vectors of F, and the returned is an n×n symmetric matrix R. R(i,j) is the correlation coefficient between the i-th feature vector and the j-th feature vector, k is the feature index, and the value of k is 1…5; x ki is the value of the k-th feature in the i-th feature vector, is the average value of the i-th feature vector; x kj is the value of the k-th feature in the j-th feature vector, is the average value of the j-th feature vector;

[0111] Find the number of sub-pulses h of the combined pulse such that there is at least one h×h sub-matrix in the matrix R, and all elements except the diagonal elements are greater than p, where, p > 0.9;

[0112] The combined pulse period CT is calculated using the following formula i :

[0113]

[0114] where, u i is the sampling point position where the rising edge of the i-th pulse is located, u i+h+1 is the sampling point position where the rising edge of h + 1 sub-pulses after the i-th pulse is located.

[0115] In an improved real-time processing method for underwater pulse signals, the method further includes:

[0116] The combined pulse width cw is calculated using the following formula i :

[0117]

[0118] The combined pulse center frequency cf i

[0119]

[0120] where d i+h is the position of the sampling point at the falling edge of h pulses after the i-th pulse.

[0121] The technical solution of the present invention will be described in detail below with reference to the accompanying drawings and embodiments.

[0122] As Figure 1 shown, it is a real-time processing method for underwater pulse signals based on feature matching proposed in an embodiment of the present invention, and its implementation manner includes the following steps:

[0123] Step 1) Set the window size and sliding step length for signal detection, and calculate the energy of the first window of the input continuous signal. The specific implementation is as follows:

[0124] Step 1-1) Set the window length for signal detection to L;

[0125] Step 1-2) Set the window sliding step length for signal detection to M, where M ≤ L;

[0126] Step 1-3) Calculate the energy value of each sampling point within the window, sum to obtain the total energy of the first window, and denote it as average1.

[0127] Step 2) Set the energy threshold, and continue to calculate the energy of the current window by sliding the window. The specific implementation is as follows:

[0128] Step 2-1) Continue to slide the detection window, continuously calculate the energy average of the current window, and make the following judgments;

[0129] Step 2-2) If the energy average of the current window > k1 * average1, then assign the energy of the current window to average2, that is, average2 = average; otherwise, update average1 = (average1 + average) / 2;

[0130] Step 2-3) If the energy average of the current window < k2 * average2, record the current energy as average1; otherwise, update average2 = (average2 + average) / 2.

[0131] Use a window to slide on the signal and calculate the energy. The first energy refers to the energy of the first window, and the current energy refers to the energy when the window slides to the current position.

[0132] Here, k1 and k2 are determined according to signal characteristics and historical experience. In this invention, 2 and 0.5 are used, and fine-tuning may be required for different signals during actual use.

[0133] Step 3) Real-time capture of the pulse is performed through the rising edge and falling edge of the energy detection pulse. The specific implementation is as follows:

[0134] Step 3-1) Record the first window position where average > k1 * average1, and take the midpoint of this window as the sampling point of the rising edge position of the currently detected pulse;

[0135] Step 3-2) After obtaining the rising edge, record the first window position where average < k2 * average2, and take the midpoint of this window as the sampling point of the falling edge position of the currently detected pulse.

[0136] The above steps 2) and 3) illustrate the detection process of this invention. Figure 2 The schematic diagram of the detection principle of this invention is given. The pulse signal detection principle of this invention is energy detection. The place where the energy changes is regarded as the pulse occurrence moment. Therefore, each moment of the signal is traversed in the form of a sliding window. Each time the energy of a window is calculated, it is compared with two energy thresholds to obtain the positions of the rising edge and the falling edge. In addition, the two energy thresholds are optimized and corrected by calculating the average energy of the pulse part and the non-pulse part.

[0137] Because a continuous signal is continuously input, and pulse detection is required, it is necessary to detect while inputting. This invention simulates the signal input process by setting the form of a sliding window. Set the initial values average1 = 0, average2 = 0, set the rising edge energy threshold k1 * average1, and the falling edge energy threshold k2 * average2.

[0138] Figure 2 In, at the initial moment ST1, the energy average of the first window is assigned to average1;

[0139] At the ST2 moment, the sliding window continues to calculate the current average and compare it with the two energy thresholds respectively. If it does not exceed the set rising edge energy threshold, it is averaged with the energy of the previous window, and so on. The essence is to calculate the average energy of the non-pulse part;

[0140] At the ST3 moment, a pulse is detected, that is, average is greater than the set rising edge energy threshold. Assign the average at this time to average2, record the middle position of the window as the rising edge position, and continue to slide the window to calculate the average energy of the pulse part and compare it with the two energy thresholds;

[0141] At time ST4, calculate the average and compare it with two energy thresholds. It is found that the average is less than the falling-edge energy threshold, and the position of the falling edge is obtained, and so on.

[0142] After detecting at time ST3 and ST4 to obtain a complete pulse, the pulse-related parameters can be calculated.

[0143] Step 4) Extract the currently detected pulse signal and calculate the pulse width, center frequency, bandwidth, and pulse interval. The specific implementation is as follows:

[0144] Step 4-1) After obtaining the sampling points at the rising edge and falling edge positions of the current pulse, extract the current pulse signal x pulse ;

[0145] Step 4-2) According to the rising edge and falling edge positions of the pulse, calculate the number of sampling points occupied by the pulse and calculate the pulse width

[0146]

[0147] where i is the current pulse index, n is the number of pulses, wi is the current pulse width, d i is the sampling point position where the falling edge of the current pulse is located, u i is the sampling point position where the rising edge of the current pulse is located, f s is the sampling rate.

[0148] The pulse interval can be expressed as

[0149]

[0150] Step 4-3) Perform a Fourier transform on the current pulse x pulse to obtain the spectrum

[0151] Xf(ω) = FFT(x pulse )

[0152] The power spectrum of the current pulse spectrum can be expressed as:

[0153] P(ω) = |Xf(ω)| 2 = Xf(ω)·Xf * (ω), ω = 0, 1,..., N - 1

[0154] where Xf * (ω) is the conjugate of Xf(ω), w is the frequency index, and N is the number of Fourier transform points.

[0155] Take the positive frequency part of the power spectrum

[0156] P half= P(ω), ω = 0, 1, ..., N / 2 - 1

[0157] where ω is the frequency index and N is the number of points of the Fourier transform.

[0158] Step 4-4) Perform energy detection on the above power spectrum to obtain the rising edge position f i1 of the power spectrum, and the falling edge position f i2 of the power spectrum. Then the bandwidth of the current pulse can be expressed as

[0159] b i = f i2 - f i1 , i = 1, 2, ..., n

[0160] The center frequency of the current pulse can be expressed as

[0161]

[0162] Step 5) Determine the type of each current pulse, construct a pulse feature vector, and when subsequent pulses arrive, calculate the pulse period through feature matching. The specific implementation is as follows:

[0163] Step 5-1) Determine the type of the current pulse according to the pulse signal bandwidth: single-frequency or frequency-modulated signal. If the current pulse is a single-frequency signal, record the type as t i = 0. If the current pulse is a frequency-modulated signal, record the type as t i = 1.

[0164] A single-frequency signal only contains one frequency component, so its bandwidth is very narrow. A frequency-modulated signal transmits information by changing the frequency of the carrier signal, and the frequency of the signal changes during transmission, making the spectrum of the signal occupy a relatively wide frequency range and the bandwidth is relatively wide. According to this characteristic, by setting an appropriate bandwidth threshold, the two signals can be distinguished.

[0165] Step 5-2) Judge the pulse composition of the current signal according to the above pulse type. If the types t i of the cumulative pulses are all 0, then this section of the signal only contains single-frequency pulses, and the pulse period T i is the pulse interval p i / f s ; if the types t i of the cumulative pulses are all 1, then this section of the signal only contains frequency-modulated pulses, and the pulse period T i is the pulse interval p i / f s ; if the types t iIf it includes both 0 and 1, then the pulses included in this segment of the signal are combined pulses, and it is necessary to find the number of sub-pulses of the combined pulses according to the feature matching method, so as to calculate the pulse period.

[0166] To achieve the above object, the specific steps of step 5-2) include:

[0167] Step 5-2-1) Construct a pulse feature vector F i =[w i , p i , f i , b i , t i , where w i is the pulse width of the current pulse, p i is the pulse interval of the current pulse, f i is the center frequency of the current pulse, b i is the bandwidth of the current pulse, t i is the type of the current pulse;

[0168] Step 5-2-2) Calculate the correlation coefficient matrix. For the given feature matrix F, calculate the Pearson correlation coefficient between all its eigenpairs to obtain the correlation coefficient matrix R

[0169] R = corr(F)

[0170] where F is an m×n matrix, m is the number of features (here m = 5), and n is the number of samples. corr(F) returns an n×n symmetric matrix R, where R(i,j) represents the correlation coefficient between the i-th eigenvector and the j-th eigenvector. R(i,j) refers to the correlation coefficient between the i-th eigenvector and the j-th eigenvector.

[0171] Construct a pulse feature matrix F from all n pulse feature vectors.

[0172] The calculation formula for the correlation coefficient R(i,j) is:

[0173]

[0174] where k is the feature index, and the value range of k is 1…m, and m is the number of features in the eigenvector; x ki is the value of the k-th feature in the i-th eigenvector, is the average value of the i-th eigenvector; x kj is the value of the k-th feature in the j-th eigenvector, is the average value of the j-th eigenvector.

[0175] Step 5-2-3) Find the grouping size k (1 < h ≤ n) of the combined pulses such that there is at least one h×h submatrix in matrix R where all elements (except the diagonal) are greater than p, where p > 0.9. In this embodiment, p is taken as 0.99. At the same time, h must satisfy h ≥ n / 2. This process can be expressed as:

[0176]

[0177] Step 5-2-4) After finding that the number of sub-pulses of the combined pulses is h, the following parameters can be obtained:

[0178] Combined pulse width cw i

[0179]

[0180] Combined pulse period CT i

[0181]

[0182] Combined pulse center frequency cf i

[0183]

[0184] The period of the combined pulses is the length between the rising edge of the first pulse in this group of pulses and the rising edge of the first pulse in the next group of pulses. In the above formula, u i is the sampling point position where the rising edge of the i-th pulse is located. There are h pulses in a group, so the rising edge of the first pulse in the next group is u i+h+1 , which is the sampling point position where the rising edges of the next h + 1 pulses are located.

[0185] An embodiment of the present invention also provides an underwater pulse signal real-time processing system, which performs pulse detection and parameter estimation on the collected continuous signal based on the above method. The system includes: an energy calculation module, a pulse detection module, and a pulse parameter estimation module;

[0186] The energy calculation module is used to receive the continuous signal and calculate the current window energy while sliding the window based on the set signal detection window size and sliding step;

[0187] The pulse detection module is used to perform pulse detection on the collected reconnaissance signal. By comparing the current window energy with the rising edge energy threshold and the falling edge energy threshold respectively, it detects the pulse rising edge and the pulse falling edge in the current window, and optimizes and corrects the rising edge energy threshold and the falling edge energy threshold by using the average energy of the pulse part and the non-pulse part respectively;

[0188] The pulse parameter estimation module: It is used to utilize the currently detected pulse rising edge and pulse falling edge to extract the current pulse signal and estimate pulse parameters, including some or all of the pulse width, pulse center frequency, and pulse interval.

[0189] Preferably, the pulse parameters further include: pulse type;

[0190] The pulse parameter estimation module is further used to determine the pulse type of the current pulse signal according to the pulse bandwidth, and the pulse type includes: single-frequency signal and chirp signal.

[0191] The pulse parameters further include: pulse period;

[0192] The pulse parameter estimation module is further used to accumulate the determined pulse types, and judge whether the current continuous signal contains a combined pulse according to whether the accumulated pulse types are the same pulse type; if it is a combined pulse, a pulse feature vector is constructed, and when subsequent pulses arrive, the number of sub-pulses in the combined pulse is found according to the feature matching method, so as to calculate the combined pulse period; if it is not a combined pulse, the ratio of the pulse interval to the signal sampling rate is calculated to obtain the pulse period.

[0193] The technical effects of the present invention will be further described below in combination with simulation experiments:

[0194] Conditions and content of the simulation experiment:

[0195] The simulation experiment platform is: Windows system, the CPU of the experimental computer is i7-10750H, and the GPU is RTX2070. The simulation data set used in the experiment is a pulse signal data set simulated by MATLAB, including single-frequency pulses, chirp pulses, and combined pulses of the two pulses. The simulation parameters are shown in Table 1 below:

[0196] Table 1 Pulse signal simulation parameters

[0197] Pulse type Center frequency / Hz Period / ms Pulse width / ms Signal-to-noise ratio / dB Single frequency 24000 100 50 8 Chirp 14500 100 50 8 Combination 19250 200 150 8

[0198] In Figures 3(a), 4(a), and 5(a), the abscissa is the Times time, the left ordinate is the Frequency, and the right ordinate is the legend of Power / frequency (dB / HZ). In Figures 3(b), 4(b), and 5(b), the original audio signal Original Audio Signal is shown, the abscissa is the Sampling Index, and the ordinate is the Amplitude.

[0199] Figures 3(a) and 3(b) are respectively the time-frequency diagram and time-domain waveform of a single-frequency pulse. The proposed method is used to detect the pulse and estimate the parameters of the continuous signal with the parameters in Table 1 above, and the results are shown in Table 2 below:

[0200] Table 2 Estimation Results of Single-Frequency Signals

[0201]

[0202] Figures 4(a) and 4(b) are respectively the time-frequency diagram and time-domain waveform of a chirp pulse. The method of the present invention is used to detect the pulse and estimate the parameters of the continuous signal with the parameters in Table 1, and the results are shown in Table 3 below:

[0203] Table 3 Estimation Results of Chirp Signals

[0204]

[0205] Figures 5(a) and 5(b) are respectively the time-frequency diagram and time-domain waveform of a combined pulse. The method of the present invention is used to detect the pulse and estimate the parameters of the continuous signal with the parameters in Table 1, and the results are shown in Table 4 below:

[0206] Table 4 Estimation Results of Sub-Pulses of Combined Signals

[0207]

[0208]

[0209] It is determined as a combined pulse, with 2 pulses in a group. The parameters of the combined pulse are shown in Table 5 below:

[0210] Table 5 Estimation Results of Combined Pulses of Combined Signals

[0211]

[0212] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit them. Although the present invention has been described in detail with reference to the embodiments, those of ordinary skill in the art should understand that any modification or equivalent replacement of the technical solutions of the present invention does not depart from the spirit and scope of the technical solutions of the present invention, and they should all be covered within the scope of the claims of the present invention.

Claims

1. A real-time processing method for underwater pulse signals, comprising: Receiving continuous underwater pulse signals, and at the same time, sliding a window based on the set signal detection window size and sliding step length, and calculating the energy of the current window; By comparing the energy of the current window with the rising-edge energy threshold and the falling-edge energy threshold respectively, detecting the pulse rising edge and the pulse falling edge in the current window, and optimizing and correcting the rising-edge energy threshold and the falling-edge energy threshold by using the average energy of the pulse part and the non-pulse part respectively; Using the currently detected pulse rising edge and pulse falling edge to extract the current pulse signal and estimate the pulse parameters, where the pulse parameters include some or all of the pulse width, pulse center frequency, pulse bandwidth, and pulse interval; Among them, by comparing the energy of the current window with the rising-edge energy threshold and the falling-edge energy threshold respectively, detecting the pulse rising edge and the pulse falling edge in the current window, and optimizing and correcting the rising-edge energy threshold and the falling-edge energy threshold by using the average energy of the pulse part and the non-pulse part respectively, specifically including: Judging whether the energy average of the current window is greater than the rising-edge energy threshold k1*average1. If average > k1*average1, it is determined that there is a pulse rising edge in the current window, and the energy average of the current window is assigned to average2; otherwise, update average1 = (average1 + average) / 2. Wherein, k1*average1 is the rising-edge energy threshold, k1 is the pulse rising-edge energy threshold coefficient, and the initial value of average1 is the window energy of the first window; Judging whether the energy average of the current window is less than the falling-edge energy threshold k2*average2. If the energy average of the current window < k2*average2, it is determined that there is a pulse falling edge in the current window, and the energy of the current window is recorded as average1; otherwise, update average2 = (average2 + average) / 2. Wherein, k2*average2 is the falling-edge energy threshold, k2 is the pulse falling-edge energy threshold coefficient, and the initial value of average2 is preset; Recording the position of the first window where average > k1*average1, and taking the midpoint of this window as the sampling point of the position where the currently detected pulse rising edge is located; After obtaining the rising edge, sliding the window, recording the position of the first window where average < k2*average2, and taking the midpoint of this window as the sampling point of the position where the currently detected pulse falling edge is located; Among them, using the currently detected pulse rising edge and pulse falling edge to extract the current pulse signal and estimate the pulse parameters, including: Extract the current pulse signal x using the sampling points at the positions of the rising edge and the falling edge of the currently obtained pulse pulse ; Calculate the pulse width w using the following formula i : where i is the current pulse index, n is the number of pulses, w i is the current pulse width, d i is the sampling point position where the current pulse falling edge is located, u i is the sampling point position where the current pulse rising edge is located, f s is the sampling rate; Calculate the pulse interval p using the following formula i : For the current pulse x pulse Perform the Fourier transform FFT(.) to obtain the spectrum Xf(ω), calculate the power spectrum P(ω) of the current pulse spectrum, and take the positive frequency part P of the power spectrum half ; Xf(ω) = FFT(x pulse ) P(ω) = |Xf(ω)| 2 = Xf(ω) · Xf * (ω), ω = 0, 1, ..., N - 1 P half = P(ω), ω = 0, 1, ..., N / 2 - 1 where, Xf * (ω) is the conjugate of Xf(ω), ω is the frequency index, and N is the number of points of the Fourier transform; Perform energy detection on the positive frequency part P of the above power spectrum half to obtain the position f of the rising edge of the power spectrum i1 , and the position f of the falling edge of the power spectrum i2 . The pulse bandwidth b of the current pulse i is expressed as: b i = f i2 -f i1 , i = 1, 2, ..., n The center frequency f of the current pulse i is expressed as:

2. The real-time processing method for underwater pulse signals according to claim 1, characterized in that, The pulse parameters further include: pulse type; the method further includes: Determining the pulse type of the current pulse signal according to the pulse bandwidth, and the pulse type includes: single-frequency signal and chirp signal.

3. The real-time processing method for underwater pulse signals according to claim 2, characterized in that The pulse parameters further include: pulse period; the method further includes: Accumulate the determined pulse types, and determine whether the current continuous signal contains composite pulses according to whether the accumulated pulse types are the same pulse type; If it is a composite pulse, construct a pulse feature vector. When subsequent pulses arrive, find the number of sub-pulses in the composite pulse according to the feature matching method, so as to calculate the composite pulse period; if it is not a composite pulse, calculate the ratio of the pulse interval to the signal sampling rate to obtain the pulse period.

4. The real-time processing method of underwater pulse signals according to claim 2, wherein Determine the pulse type of the current pulse signal according to the pulse bandwidth, including: Compare the pulse bandwidth of the current pulse signal with the set bandwidth threshold. If it is greater than the set bandwidth threshold, determine that the pulse type of the current pulse signal is a chirp signal; otherwise, determine it as a single-frequency signal.

5. The real-time processing method of underwater pulse signals according to claim 3, wherein The constructing of the pulse feature vector, when subsequent pulses arrive, finding the number of sub-pulses in the composite pulse according to the feature matching method, so as to calculate the composite pulse period, includes: Construct the pulse feature vector F i = [w i , p i , f i , b i , t i , where w i is the pulse width of the current pulse, p i is the pulse interval of the current pulse, f i is the center frequency of the current pulse, b i is the pulse bandwidth of the current pulse, t i is the pulse type of the current pulse; Calculate the correlation coefficient matrix R using the following formula: R = corr(F) Among them, F is a 5×n pulse feature matrix composed of n pulse feature vectors. 5 is the number of features in the feature vector, and n is the number of pulses. corr(F) is the Pearson correlation coefficient between all pairs of feature vectors of F, and the returned value is an n×n symmetric matrix R. R(i,j) is the correlation coefficient between the i-th feature vector and the j-th feature vector. k is the feature index, and the value range of k is 1…5; x ki is the value of the k-th feature in the i-th feature vector, and is the average value of the i-th feature vector; x kj is the value of the k-th feature in the j-th feature vector, and is the average value of the j-th feature vector; Find the number \(h\) of sub - pulses of the combined pulse such that there is at least one \(h\times h\) sub - matrix in matrix \(R\) where all elements except those on the diagonal are greater than \(p\), where, \(p>0.9\); The combined pulse period CT is calculated using the following formula i :[[]]END]] where u i is the sampling point position where the rising edge of the i-th pulse is located, and u i+h+1 is the sampling point position where the rising edges of h + 1 sub-pulses after the i-th pulse are located.

6. The real-time processing method of underwater pulse signals according to claim 5, characterized in that It also includes: The combined pulse width cw is calculated using the following formula i :[[]]END]] Combined pulse center frequency cf i where d i+h is the position of the sampling point at the falling edge of the h pulses after the i-th pulse.

7. An underwater pulse signal real-time processing system, which is used to perform pulse detection and parameter estimation on the collected continuous signals based on the underwater pulse signal real-time processing method described in any one of the foregoing claims 1-6, and is characterized in that, Including: An energy calculation module, which is used to receive a continuous signal, and at the same time slide a window based on the set signal detection window size and sliding step length to calculate the current window energy; A pulse detection module, which is used to detect the pulse rising edge and pulse falling edge in the current window by comparing the current window energy with the rising edge energy threshold and the falling edge energy threshold respectively, and optimize and correct the rising edge energy threshold and the falling edge energy threshold by using the average energy of the pulse part and the non-pulse part respectively; and A pulse parameter estimation module, which is used to extract the current pulse signal and estimate pulse parameters by using the currently detected pulse rising edge and pulse falling edge, where the pulse parameters include some or all of the pulse width, pulse center frequency, pulse bandwidth, and pulse interval.

8. The real-time underwater pulse signal processing system according to claim 7, characterized in that The pulse parameters also include: pulse type; The pulse parameter estimation module is also used to determine the pulse type of the current pulse signal according to the pulse bandwidth, and the pulse types include: single-frequency signal and chirp signal.

Citation Information

Patent Citations

  • Satellite-borne AIS signal multi-time-slot conflict energy detection system and detection method

    CN111600647A

  • IFF pulse signal detection method based on FPGA

    CN115758079A