A Method and Device for Extracting Frequency-Hopping Signals by Pixel-by-Pixel Scanning Based on Region Marking of Time-Frequency Diagrams
Through the pixel-by-pixel scanning method based on time-frequency graph area marking, the noise floor estimation and signal clustering problems in frequency hopping signal detection are solved, efficient and accurate signal extraction is achieved, and the complete information of the frequency hopping signal is obtained.
Patent Information
- Application Number
- CN202510631207.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-16
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2045-05-16
AI Technical Summary
In the detection of frequency hopping signals, the existing technology has problems of noise floor estimation and signal clustering on the time frequency frequency graph, resulting in inconsistent signal detection and the inability to accurately obtain the speed hopping parameters.
Using a pixel-by-pixel scanning method based on time-frequency graph area marking, the FFT mode square spectrum is calculated and rectangular smooth window convolution is performed, the marking matrix is initialized, and the pixel-by-pixel scanning is used to extract the signal, and the signal start and end time is detected using high and low thresholds and bandwidth.
It improves the accuracy and efficiency of signal detection, and can accurately obtain complete information of each hop, including frequency point index and time index, reducing detection blindness and noise impact.
Smart Images

Figure CN120151669B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of signal processing, and in particular to a method and device for extracting frequency-hopping signals by pixel-by-pixel scanning based on time-frequency map region marking. Background Art
[0002] Frequency-hopping signal detection and parameter measurement play a crucial role in electronic reconnaissance. There are mainly two difficulties in frequency-hopping signal detection: one is the noise floor estimation problem. Common estimation methods include the frequency point average method, the continuous mean excision method, the morphological method, etc. Each method has its applicable conditions; the second difficulty is the signal clustering problem on the time-frequency map. Common methods include the 8-connected region clustering method, the edge detection method of image processing, etc.
[0003] At present, the main idea of the existing methods is to divide the time-frequency map matrix into different groups according to time, and calculate the average within the group to obtain the smoothed time-frequency map. Subsequent detection only performs signal detection on the smoothed time-frequency map. However, this method has the following deficiencies: 1. There is blindness when dividing groups, and there is a situation where a signal spans two groups, resulting in inconsistent detection results for the same signal in different groups; 2. The noise floor estimation uses morphological processing, and morphological processing requires knowing the maximum bandwidth of the signal, which brings certain limitations to practical applications; 3. The signal time domain is not processed, the signal duration cannot be detected, and the hopping speed parameter cannot be obtained. Summary of the Invention
[0004] The purpose of the present invention is to overcome the shortcomings of the prior art, and provide a method and device for extracting frequency-hopping signals by pixel-by-pixel scanning based on time-frequency map region marking, which solves the deficiencies existing in the prior art.
[0005] The purpose of the present invention is achieved through the following technical solutions: A method for extracting frequency-hopping signals by pixel-by-pixel scanning based on time-frequency map region marking, the signal extraction method includes:
[0006] S1. Calculate the FFT magnitude squared spectrum of the baseband IQ data after down-conversion and AD sampling, put it into a two-dimensional matrix, perform convolution processing on the matrix through a rectangular smoothing window, and then calculate the high threshold and the low threshold;
[0007] S2. Perform convolution processing on the matrix through a rectangular smoothing window again to obtain the time-frequency map, and initialize the marking matrix;
[0008] S3. Regard the time-frequency map as an image, and perform pixel-by-pixel scanning on it to extract signals.
[0009] The specific content of S1 includes:
[0010] S11. Calculate the FFT magnitude squared spectrum of the baseband IQ data after downconversion and AD sampling for Nco1 consecutive groups, and put it into a two-dimensional matrix pad_Matrix. This matrix has NFFT rows and Ncol columns. NFFT represents the number of points for the Fourier transform, and Ncol represents the number of groups for the Fourier transform;
[0011] S12. Convolve each row of the matrix psd_Matrix with a rectangular smoothing window of length N_win_th, and find the minimum value for each row of the resulting matrix to obtain an array min_table containing NFFT numbers. Then calculate the high threshold and the low threshold through the array min_table.
[0012] The calculation of the high threshold includes: th_max = K1 × min_table; the calculation of the low threshold includes: th_min = K2 × min_table, where K1 and K2 are the high threshold coefficient and the low threshold coefficient respectively.
[0013] The specific steps of S2 include:
[0014] S21. Convolve each row of the matrix psd_Matrix with a rectangular smoothing window of amplitude 1 / N_win and length N_win, and discard the first to N_win - 1 columns after convolution to obtain the time-frequency diagram psd_smooth after time-domain smoothing;
[0015] S22. Initialize the flag matrix flag_matrix as a logical data type with all 1s, having NFFT rows and Ncol columns.
[0016] The specific steps of S3 include:
[0017] S31. Regard the time-frequency diagram as an image and perform pixel-by-pixel scanning. If the flag_matrix(fi, ti) of the current pixel (fi, ti) is true, then execute step S32; otherwise, do nothing. fi is the loop variable for the frequency point and is the inner loop, and ti is the loop variable for time and is the outer loop;
[0018] S32. If both psd_Matrix(fi, ti) and psd_smooth(fi, ti) of the current pixel are greater than the high threshold th_max(fi), then execute step S33; otherwise, do nothing;
[0019] S33. Search downward from the current column of psd_smooth starting from the current frequency point fi until conti_Num consecutive spectral values are less than the lower threshold. Denote the row index of the first time it is lower than the lower threshold as the lower endpoint f_down of the signal spectrum. Use the same method to search upward from the current frequency point fi to obtain the upper endpoint f_up of the signal spectrum, and complete the bandwidth detection with the smoothed time-frequency diagram;
[0020] S34. Calculate the sum value of the lower threshold th_min within the range of f_down and f_up, and denote it as th_min_win. Search backward from the current ti to find the start time and end time of the current signal, that is, calculate the sum value of the frequency points from f_down to f_up in the ti column of psd_Matrix for each column backward. If the current sum value is greater than th_min_win and the sum value of the previous column is less than th_min_win, then the current column number is the start time of the signal, denoted as t_start. After detecting the start time, enter the detection descent process. The condition for detecting the descent time is that the sum value of the frequency points from f_down to f_up in the search column of psd_Matrix is less than th_min_win. Then record the previous moment as the end time of the signal, denoted as t_end. If the start time and end time are detected, execute step S35; otherwise, do nothing;
[0021] S35. Save the detected start frequency point f_down, end frequency point f_up, start time, and end time t_start and t_end of the signal in step S34 to the detected signal list, and set the column elements of flag_matrix that belong to the rows from f_down to f_up and columns from t_start to t_end to 0;
[0022] S36. Repeat steps S31 - S35 in a loop until the loop ends.
[0023] A frequency hopping signal extraction device based on time-frequency diagram region marking, the device includes: a first convolution processing module, a second convolution processing module, and a signal extraction module;
[0024] The first convolution processing module: is configured to calculate the FFT magnitude squared spectrum of the baseband IQ data after down-conversion and AD sampling, put it into a two-dimensional matrix, perform convolution processing on the matrix through a rectangular smoothing window, and then calculate the upper threshold and the lower threshold;
[0025] The second convolution processing module: is configured to perform convolution processing on the matrix again through a rectangular smoothing window to obtain a time-frequency diagram, and initialize the marking matrix;
[0026] The signal extraction module: is configured to regard the time-frequency diagram as an image and perform signal extraction by scanning it pixel by pixel.
[0027] The first convolution processing module specifically includes the following:
[0028] Calculate the FFT magnitude squared spectrum of the baseband IQ data after downconversion and AD sampling for consecutive Nco1 groups, and put it into a two-dimensional matrix pad_Matrix. This matrix has NFFT rows and Ncol columns. NFFT represents the number of points of the Fourier transform, and Ncol represents the number of groups of the Fourier transform.
[0029] Perform convolution on each row of the matrix psd_Matrix using a rectangular smoothing window of length N_win_th, find the minimum value for each row of the matrix obtained after convolution, obtain an array min_table containing NFFT numbers, and calculate the high threshold and low threshold through the array min_table.
[0030] The second convolution processing module specifically includes the following:
[0031] Perform convolution on each row of the matrix psd_Matrix using a rectangular smoothing window with an amplitude of 1 / N_win and a length of N_win. After convolution, discard the first to N_win - 1 columns to obtain the time-frequency diagram psd_smooth after time domain smoothing.
[0032] Initialize the marker matrix flag_matrix as a logical data type with all 1s, having NFFT rows and Ncol columns.
[0033] The signal extraction module specifically includes the following:
[0034] A1. Regard the time-frequency diagram as an image and perform pixel-by-pixel scanning. If the marker matrix flag_matrix(fi, ti) of the current pixel (fi, ti) is true, then execute step A2; otherwise, do nothing.
[0035] A2. If both psd_Matrix(fi, ti) and psd_smooth(fi, ti) of the current pixel are greater than the high threshold th_max(fi), then execute step A3; otherwise, do nothing.
[0036] A3. Search downward from the current frequency point fi for the current column of psd_smooth until consecutive conti_Num spectral values are less than the low threshold. Denote the row index of the first time below the low threshold as the lower endpoint f_down of the signal spectrum. Use the same method to search upward from the current frequency point fi to obtain the upper endpoint f_up of the signal spectrum, and complete the bandwidth detection with the smoothed time-frequency diagram.
[0037] A4. Calculate the sum value of the low threshold th_min within the range of f_down and f_up, and denote it as th_min_win. Search backward from the current ti for the start time and end time of the current signal, that is, calculate the sum value of the frequency points from f_down to f_up in the ti-th column of psd_Matrix column by column. If the current sum value is greater than th_min_win and the sum value of the previous column is less than th_min_win, then the current column number is the start time of the signal, denoted as t_start. After detecting the start time, enter the detection of the descending process. The condition for detecting the descending time is that the sum value of the frequency points from f_down to f_up in the searched column of psd_Matrix is less than th_min_win. Then record the previous moment as the end time of the signal, denoted as t_end. If the start time and end time are detected, execute step A5; otherwise, do nothing.
[0038] A5. Save the start frequency point f_down, end frequency point f_up, start time t_start, and end time t_end detected in step A4 to the detected signal list, and set the column elements of flag_matrix belonging to the rows from f_down to f_up and columns from t_start to t_end to 0.
[0039] A6. Loop and repeat steps A1 - A5 until the loop ends.
[0040] The present invention has the following advantages: A method and device for extracting frequency-hopping signals by pixel-by-pixel scanning based on time-frequency map region marking. The smoothing is implemented by convolution. When detecting signals, the smoothed time-frequency map and the instantaneous time-frequency map are combined, and the time resolution is not affected by the time window; when calculating the threshold, the method of finding the minimum value in each row of the smoothed time-frequency map is used. The threshold eliminates the fixed-frequency signals and retains the frequency-hopping signals, and is not affected by the bandwidth of the detected signals; the complete information of each hop is obtained by the point-by-point scanning method, including the left and right frequency point indexes, as well as the start and end time indexes. Description of the Drawings
[0041] Figure 1 is a flowchart of step 5 of the present invention;
[0042] Figure 2 is a flowchart of the start time and end time of step 5 of the present invention. Detailed Embodiment
[0043] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of this application. Obviously, the described embodiments are only a part of the embodiments of this application, rather than all the embodiments. Usually, the components of the embodiments of this application described and illustrated in the accompanying drawings here can be arranged and designed in various different configurations. Therefore, the detailed description of the embodiments of this application provided below with reference to the accompanying drawings is not intended to limit the protection scope of the claimed application, but only represents the selected embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative efforts belong to the protection scope of this application. The following further describes the present invention with reference to the accompanying drawings.
[0044] The present invention specifically relates to a method for extracting a frequency-hopping signal by pixel-by-pixel scanning based on time-frequency map region marking. It utilizes the sparsity characteristic of the signal, with a value higher than a high threshold as the trigger condition for signal discovery. Subsequently, a method of growing the bandwidth towards both sides until it is lower than a low threshold is used to determine the bandwidth. The methods for detecting the start time and end time of the signal are: comparing the sum of energies within the bandwidth with the sum within the threshold bandwidth, which improves the accuracy of the start time and end time. Mark the time-frequency region occupied by the detected signal as the occupied region, and skip the occupied region during subsequent detections, which improves the operating efficiency. It specifically includes the following content:
[0045] Step 1: Calculate the FFT (Fast Fourier Transform) magnitude squared spectrum of Ncol consecutive groups of baseband IQ data after down-conversion and AD sampling, and put it into a two-dimensional matrix psd_Matrix. This matrix has NFFT rows and Ncol columns. NFFT represents the number of Fourier transform points, and Ncol represents the number of Fourier transform groups.
[0046] Step 2: Convolve each row of psd_Matrix with a rectangular smoothing window of length N_win_th. For each row of the matrix obtained after convolution, find the minimum value to obtain an array min_table containing NFFT numbers.
[0047] Among them, the calculation of the high threshold is: th_max = K1 × min_table; the calculation of the low threshold is: th_min = K2 × min_table, where K1 and K2 are the high threshold coefficient and the low threshold coefficient, such as 20 and 5.
[0048] Step 3: Convolve each row of psd_Matrix with a rectangular smoothing window with an amplitude of 1 / N_win and a length of N_win. After convolution, discard the first to N_win - 1 columns to obtain the time-frequency map psd_smooth after time-domain smoothing.
[0049] Step 4: Initialize the flag matrix flag_matrix as a logical data type of all "1"s with NFFT rows and Ncol columns.
[0050] Step 5: Treat the two-dimensional time-frequency diagram as an image, and perform a pixel-by-pixel scan on the time-frequency diagram. The outer loop is for the columns of the time-frequency diagram, with the loop range from 3 to Ncol - N_win; the inner loop is for the frequency points, with the loop range from 1 to NFFT. Denote the values of the two loop variables as (fi, ti).
[0051] As Figure 1 and Figure 2 shown, perform the following steps a - d:
[0052] Step a: If both psd_Matrix(fi, ti) and psd_smooth(fi, ti) of the current pixel are greater than the high threshold th_max(fi), then proceed to step b; otherwise, do nothing.
[0053] Step b: Search downward from the current frequency point fi in the current column of psd_smooth until conti_Num consecutive spectral values are less than the low threshold. Denote the row index of the first time it is lower than the low threshold as the lower endpoint f_down of the signal spectrum; use the same method to search upward from the current frequency point fi to obtain the upper endpoint f_up of the signal spectrum. This step completes the bandwidth detection using the smoothed time-frequency diagram. Proceed to step c.
[0054] Step c: Calculate the sum value of the low threshold th_min within the range of f_down and f_up and denote it as th_min_win. Search backward from the current ti to find the start time and end time of the current signal. That is, calculate the sum value of the frequency points from f_down to f_up in the ti-th column of psd_Matrix for each subsequent column. If the current sum value is greater than th_min_win and the sum value of the previous column is less than th_min_win, then the current column number is the start time of the signal and is denoted as t_start; after detecting the start time, enter the detection descent process. The condition for detecting the descent time is that the sum value of the frequency points from f_down to f_up in the searched column of psd_Matrix is less than th_min_win, then record the previous moment as the end time of the signal and denote it as t_end. If the start time and end time are detected, then proceed to step d; otherwise, do nothing.
[0055] Step d: Save the detected start frequency point f_down, end frequency point f_up, start time t_start, and end time t_end of the signal to the detected signal list. Set the column elements of flag_matrix that belong to the rows from f_down to f_up and columns from t_start to t_end to "0". Continue the loop in step 5 until the loop ends. Continue the loop in step 5 until the loop ends.
[0056] The above are only the preferred embodiments of the present invention. It should be understood that the present invention is not limited to the forms disclosed herein, should not be regarded as excluding other embodiments, but can be used in various other combinations, modifications and improvements, and can be changed within the scope of the concept described herein through the above teachings or the techniques or knowledge in the relevant field. And any changes and alterations made by those skilled in the art without departing from the spirit and scope of the present invention shall fall within the protection scope of the appended claims of the present invention.
Claims
1. A method for extracting a frequency-hopping signal by pixel-by-pixel scanning based on time-frequency map region marking, characterized in that: The signal extraction method includes: S1. Calculate the FFT magnitude squared spectrum of the baseband IQ data after down-conversion and AD sampling, and put it into a two-dimensional matrix. Perform convolution processing on the matrix through a rectangular smoothing window, and then calculate the high threshold and the low threshold; S2. Perform convolution processing on the matrix through the rectangular smoothing window again to obtain a time-frequency diagram, and initialize the marking matrix; S3. Regard the time-frequency diagram as an image, and perform pixel-by-pixel scanning on it for signal extraction; The specific content of S1 includes: S11. Calculate the FFT magnitude squared spectrum of Nco1 consecutive groups of baseband IQ data after down-conversion and AD sampling, and put it into a two-dimensional matrix pad_Matrix. This matrix has NFFT rows and Ncol columns. NFFT represents the number of points of the Fourier transform, and Ncol represents the number of groups of the Fourier transform; S12. Perform convolution on each row of the matrix psd_Matrix using a rectangular smoothing window with a length of N_win_th. Calculate the minimum value of each row of the matrix obtained after convolution to get an array min_table containing NFFT numbers, and calculate the high threshold and the low threshold through the array min_table; The calculation of the high threshold includes: th_max = K1 × min_table; the calculation of the low threshold includes: th_min = K2 × min_table, where K1 and K2 are the high threshold coefficient and the low threshold coefficient respectively; The specific content of S2 includes: S21. Perform convolution on each row of the matrix psd_Matrix using a rectangular smoothing window with an amplitude of 1 / N_win and a length of N_win. After convolution, discard the first to N_win - 1 columns to obtain the time-domain smoothed time-frequency diagram psd_smooth; S22. Initialize the marking matrix flag_matrix as a logical data type with all 1s, having NFFT rows and Ncol columns; The specific content of S3 includes: S31. Regard the time-frequency diagram as an image, and perform pixel-by-pixel scanning on it. If the marking matrix flag_matrix(fi, ti) of the current pixel (fi, ti) is true, then execute step S32, otherwise do nothing. fi is the loop variable of the frequency point for the inner loop, and ti is the loop variable of the time for the outer loop; S32. If both psd_Matrix(fi, ti) and psd_smooth(fi, ti) of the current pixel are greater than the high threshold th_max(fi), then execute step S33, otherwise do nothing; S33. Search downward from the current frequency point fi for the current column of psd_smooth until conti_Num consecutive spectrum values are less than the low threshold. Denote the row index of the first time below the low threshold as the lower endpoint f_down of the signal spectrum. Use the same method to search upward from the current frequency point fi to obtain the upper endpoint f_up of the signal spectrum, and complete the bandwidth detection with the smoothed time-frequency diagram; S34. Calculate the sum value of the low threshold th_min within the range of f_down and f_up, and denote it as th_min_win. Search backward from the current ti for the start time and end time of the current signal, that is, calculate the sum value of the frequency points from f_down to f_up after the ti-th column of psd_Matrix column by column. If the current sum value is greater than th_min_win and the sum value of the previous column is less than th_min_win, then the current column number is the start time of the signal, denoted as t_start. After detecting the start time, enter the detection descent process. The condition for detecting the descent time is that the sum value of the frequency points from f_down to f_up in the search column of psd_Matrix is less than th_min_win. Then record the previous moment as the end time of the signal, denoted as t_end. If the start time and end time are detected, execute step S35; otherwise, do nothing. S35. Save the start frequency point f_down, end frequency point f_up, start time, and end time t_start and t_end detected in step S34 to the detected signal list, and set the column elements of flag_matrix belonging to the rows from f_down to f_up and columns from t_start to t_end to 0. S36. Repeat steps S31 - S35 in a loop until the loop ends.
2. A device for extracting a frequency-hopping signal by pixel-by-pixel scanning based on time-frequency map region marking, characterized in that: The device includes: a first convolution processing module, a second convolution processing module, and a signal extraction module; The first convolution processing module: is configured to calculate the FFT magnitude squared spectrum of the baseband IQ data after down-conversion and AD sampling, put it into a two-dimensional matrix, perform convolution processing on the matrix through a rectangular smoothing window, and then calculate the high threshold and low threshold; The second convolution processing module: is configured to perform convolution processing on the matrix through a rectangular smoothing window again to obtain a time-frequency diagram and initialize the marking matrix; The signal extraction module: is configured to regard the time-frequency diagram as an image and perform pixel-by-pixel scanning to extract signals; The first convolution processing module specifically includes the following: Calculate the FFT magnitude squared spectrum of Nco1 consecutive groups of baseband IQ data after down-conversion and AD sampling, and put it into a two-dimensional matrix pad_Matrix. This matrix has NFFT rows and Ncol columns. NFFT represents the number of Fourier transform points, and Ncol represents the number of Fourier transform groups; Perform convolution on each row of the matrix psd_Matrix using a rectangular smoothing window with a length of N_win_th, find the minimum value of each row of the matrix obtained after convolution to get an array min_table containing NFFT numbers, and calculate the high threshold and low threshold through the array min_table; The second convolution processing module specifically includes the following: Perform convolution on each row of the matrix psd_Matrix using a rectangular smoothing window with an amplitude of 1 / N_win and a length of N_win, and discard the first to N_win - 1 columns after convolution to obtain the time-domain smoothed time-frequency diagram psd_smooth; Initialize the flag matrix flag_matrix as a logical data type with all 1s, having NFFT rows and Ncol columns; The signal extraction module specifically includes the following: A1. Regard the time-frequency diagram as an image and perform pixel-by-pixel scanning. If the flag matrix flag_matrix(fi, ti) of the current pixel (fi, ti) is true, then execute step A2; otherwise, do nothing. fi is the loop variable for frequency points and is the inner loop, and ti is the loop variable for time and is the outer loop; A2. If both psd_Matrix(fi, ti) and psd_smooth(fi, ti) of the current pixel are greater than the high threshold th_max(fi), then execute step A3; otherwise, do nothing; A3. Search downward from the current column of psd_smooth starting from the current frequency point fi until conti_Num consecutive spectral values are less than the low threshold. Denote the row index of the first time below the low threshold as the lower endpoint f_down of the signal spectrum. Use the same method to search upward from the current frequency point fi to obtain the upper endpoint f_up of the signal spectrum, and complete the bandwidth detection with the smoothed time-frequency diagram; A4. Calculate the sum value of the low threshold th_min within the range of f_down and f_up, and denote it as th_min_win. Search backward from the current ti to find the start time and end time of the current signal, that is, calculate the sum value of the frequency points from f_down to f_up in the ti column of psd_Matrix for each subsequent column. If the current sum value is greater than th_min_win and the sum value of the previous column is less than th_min_win, then the current column number is the start time of the signal, denoted as t_start. After detecting the start time, enter the detection descent process. The condition for detecting the descent time is that the sum value of the frequency points from f_down to f_up in the searched column of psd_Matrix is less than th_min_win. Then record the previous moment as the end time of the signal, denoted as t_end. If the start time and end time are detected, then execute step A5; otherwise, do nothing; A5. Save the start frequency point f_down, end frequency point f_up, start time, and end time t_start, t_end detected in step A4 to the detected signal list, and set the column elements of flag_matrix that belong to the rows from f_down to f_up and columns from t_start to t_end to 0; A6. Repeat steps A1 - A5 in a loop until the loop ends.
Citation Information
Patent Citations
FPGA-based real-time spectrum analysis method
CN108680787A
Unsupervised spectrum abnormality detection method, device and equipment and storage medium
CN111800811A