Opencl-based radar signal adaptive constant false alarm rate detection optimization method

By employing the OpenCL heterogeneous programming model for adaptive constant false alarm rate (CFAR) detection in radar systems, the radar signal processing flow is optimized, solving the problems of redundant computation and memory waste in radar systems, improving system performance and real-time performance, and promoting the software-based development of radar systems.

CN115951323BActive Publication Date: 2026-05-29XI'AN POLYTECHNIC UNIVERSITY

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
XI'AN POLYTECHNIC UNIVERSITY
Filing Date
2023-02-03
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

Existing radar systems suffer from numerous problems, including redundant calculations, wasted memory, and low utilization of hardware resources. In particular, the high algorithm complexity in adaptive constant false alarm rate (CFAR) detection leads to a decline in system real-time performance.

Method used

An adaptive constant false alarm rate (CFAR) detection optimization method based on OpenCL is adopted. By performing parallel computing on GPU and combining it with the OpenCL heterogeneous programming model, the adaptive CFAR detection process is optimized, including linear frequency modulated signal processing, preprocessing, data transmission and adaptive CFAR detection algorithm, reducing redundant computing and memory waste.

Benefits of technology

It effectively reduces data processing time, improves system performance, meets the real-time requirements of radar systems, and promotes the development of software-based radar systems and the domestic GPU ecosystem.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115951323B_ABST
    Figure CN115951323B_ABST
Patent Text Reader

Abstract

The application discloses an OpenCL-based radar signal adaptive constant false alarm rate detection optimization method, and steps include: step 1, constructing a radar echo signal; step 2, data preprocessing, filling a sequence; step 3, using the data constructed in step 2 to transmit to a device end, and performing square rate detection; step 4, performing adaptive constant false alarm rate detection after optimization, and designing a kernel function to respectively process a change factor and an MR statistic; and step 5, copying the constant false alarm detection matrix to a CPU end and outputting, namely completing optimization. According to the method, the OpenCL heterogeneous model is combined to realize GPU-based radar signal constant false alarm rate detection, time for processing data can be effectively reduced, the performance of the system is improved, and the development of software radar and the development of a subsequent domestic GPU ecology are effectively promoted.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of parallel computing applied to radar signal processing technology, and relates to an adaptive constant false alarm rate (CFAR) detection optimization method for radar signals based on OpenCL. Background Technology

[0002] As radar detection systems become increasingly complex, while accuracy improves, real-time performance tends to decline. Compared to traditional constant false alarm rate (CFAR) detection techniques, adaptive CFAR detection offers superior performance in radar signal processing. However, due to its high algorithmic complexity, this technology typically employs customized devices such as DSPs and FPGAs, which suffer from long development cycles, difficult debugging, and high resource consumption. In recent years, the potential of GPUs for general-purpose computing has attracted researchers' attention. Given their powerful floating-point capabilities, introducing GPUs into heterogeneous computing systems can significantly improve system performance. OpenCL (Open Computing Language) is a parallel programming standard and environment for heterogeneous systems, providing a general and open solution for heterogeneous computing. Summary of the Invention

[0003] The purpose of this invention is to provide an adaptive constant false alarm rate (CFAR) detection optimization method for radar signals based on OpenCL, which solves the problems of excessive redundant calculations, memory waste, and low hardware resource utilization in existing radar systems.

[0004] The technical solution adopted in this invention is an adaptive constant false alarm rate (CFAR) detection optimization method for radar signals based on OpenCL, which is implemented according to the following steps:

[0005] Step 1: Construct radar echo signals to obtain radar echo simulation signal data R;

[0006] Step 2: Preprocess and fill the sequence of the radar echo simulation signal data R obtained in Step 1 to obtain the processed radar echo signal data M2;

[0007] Step 3: Transmit the radar echo signal data M2 obtained in Step 2 to the device end, perform square law detection, and obtain the two-dimensional matrix S2;

[0008] Step 4: Using the two-dimensional matrix S2 obtained in Step 3 as input, perform optimized adaptive constant false alarm rate detection to obtain target signal detection data T;

[0009] Step 5: Copy the target signal detection data T obtained in Step 4 to the CPU and output it to complete the constant false alarm rate detection and processing flow of the change index.

[0010] The invention is further characterized by:

[0011] Step 1 is as follows:

[0012] Step 1.1: Configure linear frequency modulation parameters; set the sampling frequency to fs, the radar transmit pulse repetition period to PRT, then the number of sampling points in a single pulse period is fs*PRT, and by setting the number of pulses to n, the total number of sampling points is fs*PRT*n. The number of simulated targets is targetNumber, and each target is assigned a different target power.

[0013] Step 1.2, Signal Selection; Select a linear frequency modulated signal, the specific expression of which is:

[0014]

[0015] in, f0 Let T be the carrier frequency of the signal, t be the pulse width, t be the time variable, s(t) be the linear frequency modulated signal, j be the imaginary unit, e be the Euler number, and μ be the frequency modulation slope of the linear frequency modulated signal. The complex envelope u(t) of the linear frequency modulated signal is then given by equation (1):

[0016]

[0017] Where μ = B / T is called the frequency modulation slope of the linear frequency modulation signal, B is the frequency modulation bandwidth, and T is the pulse width;

[0018] The expression for the spectrum of the linear frequency modulated signal is obtained by performing a Fourier transform (FFT) on the complex envelope signal u(t), denoted by U(f):

[0019]

[0020] Step 1.3: Simplify the method for calculating the spectrum of a linear frequency modulated signal;

[0021] According to the properties of Fresnel integrals, when the pulse compression ratio (B*T) is much greater than 1, the expression for the spectrum of the linear frequency modulated signal in equation (3) can be simplified to:

[0022]

[0023] The echo data of multiple targets are simulated and generated according to the linear frequency modulation signal spectrum calculation method, and the system noise signal is also simulated to finally obtain the radar echo simulation signal data R.

[0024] The specific process of step 2 is as follows:

[0025] Step 2.1: Perform pulse compression, moving target detection, and moving target display preprocessing on the radar echo simulation signal data R in sequence to obtain data M1;

[0026] Step 2.2: Fill the data M1 obtained in Step 2.1 using the boundary method to obtain the filled radar echo signal data M2.

[0027] The specific process of step 2.1 is as follows:

[0028] Step 2.1.1: Perform a one-dimensional Fourier transform on the input radar echo simulation signal data R to obtain frequency domain data S1. At the same time, perform a Fourier transform on the matched filter coefficients to obtain frequency domain filter coefficients C1.

[0029] Step 2.1.2: Perform complex dot multiplication on the frequency domain data S1 and the frequency domain filter coefficients C1, and then perform inverse Fourier transform to obtain the frequency domain pulse compression result R1;

[0030] Step 2.1.3: Using Moving Target Indication (MTI) processing, perform double-delay line cancellation filtering on R1 to obtain two-dimensional echo data M. The output signal y(t) is expressed as:

[0031] y(t)=x(t)-2x(t-1)+x(t-2) (5);

[0032] Where x(t) is the result R1 after pulse compression;

[0033] Step 2.1.4: After step 2.1.3, two pulses will be reduced. Zero padding is used to fill the original number of pulses. Then, Fourier transform processing is used to realize the MTD filtering for moving target detection. For the two-dimensional echo data M after MTI processing of moving target display, Fourier transform processing is performed on each distance unit to obtain the result M1 after coherent accumulation of several pulses within a coherent processing time.

[0034] Step 2.2 specifically involves filling the original range dimension data. In each pulse range dimension, the leftmost and rightmost sides are filled with data from M1, which is the sum of the number of reference units nr and the number of protection units np. The left and right reference units are the first nr and last nr range units of the current pulse range dimension data, respectively, and the left and right protection units are the nr+1 to nr+np+1 range units on both sides of the current pulse range dimension data, respectively, to obtain the filled radar echo signal data M2.

[0035] The specific process of step 3 is as follows:

[0036] Step 3.1: Transmit the radar echo signal data M2 obtained in Step 2 to the GPU device.

[0037] By utilizing the clCreateBuffer interface function to create memory objects, a heterogeneous system architecture (HSA) is adopted in OpenCL to unify the memory space addresses of the CPU and GPU, and to implement data transfer from the CPU host to the GPU device using a zero-copy approach.

[0038] Step 3.2: Perform square law detection;

[0039] Step 3.2.1: Set the workgroup size p. Based on the radar echo signal data M2 obtained in Step 2, calculate the number of local arrays q, q = L / p, where L is the length of the range dimension data in the radar echo signal data M2.

[0040] Step 3.2.2: Load the radar echo signal data M2 from the GPU global memory into the local memory; specifically, allocate the radar echo signal data M2 in the global memory into q local arrays in sequence, then perform square law detection kernel calculation on the preloaded data, and then write the result back to the global memory to obtain the two-dimensional matrix S2 after square law detection.

[0041] Since the radar echo signal data M2 data format stores the real and imaginary parts alternately, that is, two consecutive data are the real and imaginary parts of the signal respectively, within each working group, the real and imaginary parts are respectively subjected to a sum of squares operation to obtain the power value of each unit to be detected.

[0042] The specific process of step 4 is as follows:

[0043] Step 4.1: Preprocess the two-dimensional matrix S2 data obtained in Step 3, and calculate the mean of the entire reference cell sample of length L. and the second-order sum of squares E(x) 2 ), store in the OpenCL built-in vector array, and obtain the total data set SUM of the reference cell sample mean and second-order sum of squares for each pulse distance dimension data;

[0044] Step 4.2: Based on the total data set SUM obtained from the preprocessing in Step 4.1, design kernel functions to process the change factor and MR statistics respectively, select the threshold calculation method, and calculate the estimated clutter background power w of the unit to be detected.

[0045] Step 4.3: Compare the estimated background power w of the unit under test obtained in step 4.2 with the actual value of the unit under test. If w is greater than the actual value of the unit under test, the unit under test is the target signal and the target signal detection data T is 1; otherwise, the unit under test is noise or clutter and the target signal detection data T is 0.

[0046] Step 4.1 specifically involves:

[0047] Step 4.1.1: According to the integral image algorithm, any segment of distance dimension data of length L is represented as:

[0048] sum(a)=ii(x)-ii(y) (6)

[0049] In the formula, ii(x) is the integral image value at position x, and a represents the distance from position x to position y. ii(x) is calculated as follows:

[0050]

[0051] Where x' is the position of the current pixel, and i(x') is the pixel at the relevant position in the input image;

[0052] Step 4.1.2: Calculate the mean of the reference cell samples using the parallel prefix sum (Scan) algorithm. and the second-order sum of squares E(x) 2 The specific calculation process is as follows:

[0053] a. Set the size of the second workgroup, calculate the number of local memory arrays, and divide the two-dimensional matrix S2 data in global memory into blocks and allocate them to the local memory arrays;

[0054] b. During the upward scanning process, the parallel reduction is achieved by matching adjacent elements. The number of reductions is log2L. The partial sum of the internal nodes of the tree is calculated from the leaf to the root. After this stage, the root node stores the sum of all nodes in the array.

[0055] c. Downward scanning process: the reverse of step b. Traverse the tree from the root downwards, using the partial sum from process b to construct the scan on the array, starting with inserting zeros at the end of the distance dimension data L. In each step, each node in the current layer passes its own value to its left child and the sum of its value and the previous value of its left child to its right child, obtaining the mean of the reference unit samples. and the second-order sum of squares E(x) 2 The data is stored in the vector array CL_ARR of the OpenCL built-in double-precision floating-point vector type (cl_double2) to obtain the total data set SUM of the reference cell sample mean and second-order sum of squares for each pulse distance dimension.

[0056] Step 4.2 specifically involves:

[0057] Step 4.2.1: Calculate the VI statistic. The VI statistic is used to calculate whether the left and right reference cells are uniform. The calculation method is as follows:

[0058]

[0059] in, δ represents the sample mean of the reference unit. 2 Let x be the variance. i Here, m represents the power value of the distance element, and m is the number of reference elements.

[0060] Based on the reference unit sample mean obtained in step 4.1 and the second-order sum of squares E(x) 2 By combining with OpenCL, VI computation can be optimized as follows:

[0061]

[0062] Step 4.2.2: Calculate the MR statistic. The MR statistic is used to calculate whether the means of the left and right reference units are the same. Specifically:

[0063]

[0064] Where A represents the left reference cell array and B represents the right reference cell array. This represents the mean of the left reference cell array. x represents the mean of the right reference cell array. i and x j These are the power values ​​of the left and right reference units, respectively;

[0065] Step 4.2.3: Detect the target based on the background power;

[0066] 1) Calculate the threshold factor;

[0067] A represents the left reference cell array, B represents the right reference cell array, ∑A, ∑B, and ∑AB represent the sum of the sampled values ​​of the left reference cell, the right reference cell, and the combined reference cell, respectively. VI A and VI B These are the change indices of the left and right reference units, α. N / 2 and α N At the false alarm probability P FA The threshold factors corresponding to different reference units under fixed conditions are expressed as follows:

[0068]

[0069] 2) The judgment of clutter background is as follows:

[0070]

[0071]

[0072] K VI and K MR It is a comparison threshold; when the value of the statistic VI is greater than the threshold K... VIWhen the reference cell is uniform, it is considered uniform; otherwise, it is non-uniform. When the mean ratio MR is less than K... -1 MR Or greater than K MR If the means are the same, then they are considered to be different; otherwise, they are not.

[0073] 3) Based on whether the left and right reference cells are uniform and whether their mean values ​​are the same, select the threshold calculation method to calculate the estimated clutter background power w of the cell to be detected.

[0074] In step 4.2.3, the specific method for selecting the threshold calculation is as follows: when both left and right reference cells are judged to be uniform and have the same mean, the cell average (CA-CFAR) is used to estimate the background power and calculate the detection threshold; when the left and right reference cells are judged to be uniform but their means are different, the larger cell average (GO-CFAR) is used as the estimate of the background power; when one side of the reference cells is judged to be uniform and the other side is not uniform, the CA-CFAR method with a reference cell length of N / 2 is selected, where N is the reference cell length; when both sides of the reference cells are not uniform, the smaller cell average (SO-CFAR) is selected as the estimate of the background power.

[0075] The beneficial effects of this invention are:

[0076] The adaptive constant false alarm rate (CFAR) detection optimization method for radar signals based on OpenCL of this invention realizes GPU-based adaptive CFAR detection parallel computation by combining the OpenCL heterogeneous programming model. It can effectively reduce the data processing time, improve the system performance, meet the real-time requirements of existing radar systems, and effectively promote the development of software-based radar systems and the subsequent development of the domestic GPU ecosystem. Attached Figure Description

[0077] Figure 1 This is a flowchart of the adaptive constant false alarm rate (CFAR) detection optimization method for radar signals based on OpenCL, as described in this invention.

[0078] Figure 2 This is a flowchart of the constant false alarm rate detection algorithm for the changing index in the method of this invention;

[0079] Figure 3 This is a diagram illustrating the filling method used in the data preprocessing of the method of this invention;

[0080] Figure 4 This is a flowchart of the integral image algorithm suitable for GPUs used in the method of this invention;

[0081] Figure 5 This is an error statistics chart of the pulse Doppler radar echo signal processing method of the present invention. Detailed Implementation

[0082] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments.

[0083] The adaptive constant false alarm rate (CFAR) detection method for radar signals based on OpenCL of this invention is as follows: Figure 1 As shown, follow these steps:

[0084] Step 1: Construct the radar echo signal to obtain the simulated radar echo signal data R. The specific process is as follows:

[0085] 1.1 Linear frequency modulation parameter configuration;

[0086] The sampling frequency is set to fs, and the radar pulse repetition period is PRT. Then the number of sampling points in a single pulse period is fs*PRT. By setting the number of pulses to n, the total number of sampling points is fs*PRT*n. The number of simulated targets is targetNumber, and each target is assigned a different target power.

[0087] 1.2 Signal Selection;

[0088] The selected linear frequency modulated signal is expressed as follows:

[0089]

[0090] in, f0 Let T be the carrier frequency of the signal, t be the pulse width, t be the time variable, s(t) be the linear frequency modulated signal, j be the imaginary unit, e be the Euler number, and μ be the frequency modulation slope of the linear frequency modulated signal. The complex envelope u(t) of the linear frequency modulated signal is then given by equation (1):

[0091]

[0092] Where μ = B / T is called the frequency modulation slope of the linear frequency modulation signal, B is the frequency modulation bandwidth, T is the pulse width, and t is the time variable;

[0093] The expression for the spectrum of the linear frequency modulated signal is obtained by performing a Fourier transform (FFT) on the complex envelope signal u(t), denoted by U(f):

[0094]

[0095] 1.3 Simplify the calculation method for the spectrum of linear frequency modulated signals;

[0096] According to the properties of Fresnel integrals, when the pulse compression ratio (B*T) is much greater than 1, the expression for the spectrum of the linear frequency modulated signal in equation (3) can be simplified to:

[0097]

[0098] The echo data of multiple targets are simulated and generated according to the linear frequency modulation signal spectrum calculation method, and the system noise signal is also simulated to finally obtain the radar echo simulation signal data R.

[0099] Step 2: Preprocess and fill the sequence on the radar echo simulation signal data R obtained in Step 1 to obtain the processed radar echo signal data M2. The specific process is as follows:

[0100] Step 2.1: Perform pulse compression, moving target detection, and moving target display preprocessing on the radar echo simulation signal data R in sequence to obtain data M1;

[0101] Step 2.1.1: Perform one-dimensional FFT processing on the input radar echo simulation signal data R to obtain frequency domain data S1, and simultaneously perform FFT processing on the matched filter coefficients to obtain frequency domain filter coefficients C1.

[0102] Step 2.1.2: Perform complex dot multiplication on the frequency domain data S1 and the frequency domain filter coefficients C1, and then perform inverse Fourier transform to obtain the frequency domain pulse compression result R1;

[0103] Step 2.1.3, Moving Target Indication (MTI) processing, based on the frequency difference between clutter and moving target echoes, obtains two-dimensional echo data M by performing double-delay line cancellation filtering on R1. The output signal y(t) is expressed as:

[0104] y(t)=x(t)-2x(t-1)+x(t-2) (5);

[0105] Where x(t) is the result R1 after pulse compression.

[0106] Step 2.1.4: After step 2.1.3, two pulses will be reduced. Zero padding is used to fill the original number of pulses. Then, FFT is used to implement MTD filtering for moving target detection. For the two-dimensional echo data M after MTI processing of moving target display, FFT operation is performed on each distance cell to obtain the result M1 after coherent accumulation of several pulses within a coherent processing time (CPI).

[0107] Step 2.2: In order to reduce unnecessary if and else branch operations in the GPU data, the data M1 obtained in Step 2.1 is filled using a boundary method;

[0108] Specifically, the original distance dimension data is filled in. At the far left and far right of each pulse distance dimension, data from M1, equal to the sum of the number of reference units (nr) and protection units (np), are filled in. The left and right reference units are the first nr and last nr distance units of the current pulse distance dimension data, respectively, and the left and right protection units are the (nr+1)th to (nr+np+1)th distance units on either side of the current pulse distance dimension data. Figure 3 As shown. Whether it is mirror copying or sequential copying, it will have little impact on the results of these two types of data, resulting in the filled radar echo signal data M2.

[0109] Step 3: The radar echo signal data M2 constructed in Step 2 is transmitted to the GPU device for square law detection to obtain the two-dimensional matrix S2. The specific process is as follows:

[0110] Step 3.1: Transmit the radar echo signal data M2, which was filled in step 2, to the GPU device.

[0111] Step 3.1.1: Use the clCreateBuffer interface function to transfer data from the CPU host to the GPU device. The parameter is configured such that the memory object will set the memory region specified by the host pointer (CL_MEM_COPY_HOST_PTR). The host device will allocate a buffer on the GPU device, which is usually RAM in the GPU. Then, the data will be copied to the GPU device immediately without additional memory allocation. However, this cache will be allocated on each device. This can be solved by the following steps.

[0112] Step 3.1.2: OpenCL adopts a heterogeneous system architecture (HSA) to unify the memory space addresses of the CPU and GPU. It uses a zero-copy approach, which eliminates the need to transfer data from the CPU memory to the GPU first. It typically relies on direct memory access (DMA) based copying and memory mapping by the memory management unit (MMU), which facilitates the passing of pointers between the CPU and GPU, reduces the number of data transfers between the CPU and GPU, effectively reduces data processing time, and improves system performance.

[0113] Step 3.2: Perform square law detection;

[0114] Step 3.2.1: Set the workgroup size p. For the square law detection kernel function, the maximum workgroup size supported by AMD series GPUs is 256. Based on the radar echo signal data M2 obtained in Step 2, divide the distance dimension data length L in this data by the workgroup size p to determine the number of local arrays q.

[0115] Step 3.2.2: In order to reduce the number of global memory accesses, M2 obtained in step 3.2.1 needs to be loaded from GPU global memory into local memory;

[0116] Based on the workgroup size p set in step 3.2.1, the data M2 in global memory is sequentially allocated to q local arrays. Then, the square law detection kernel is used to calculate the preloaded data, and the result is written back to global memory to obtain the two-dimensional matrix S2 after square law detection.

[0117] Since the M2 signal data format stores the real and imaginary parts alternately, that is, two consecutive data are the real and imaginary parts of the signal respectively, within each working group, the real and imaginary parts are respectively subjected to a sum of squares operation to obtain the power value of each unit to be detected.

[0118] Step 4, as follows Figure 2 The adaptive constant false alarm rate (CFRR) detection is performed by using the two-dimensional matrix S2 obtained in step 3 as input. A kernel function is designed to process the change factor and MR statistic respectively to determine whether the current signal is the target signal. The specific process is as follows:

[0119] Step 4.1: Preprocess the two-dimensional matrix S2 data obtained in Step 3, and calculate the mean of the entire reference cell sample of length L. and the second-order sum of squares E(x) 2 ), store in the OpenCL built-in vector array, and obtain the total data set SUM of the reference cell sample mean and second-order sum of squares for each pulse distance dimension data;

[0120] Specifically:

[0121] Step 4.1.1: According to the integral image algorithm, any segment of distance dimension data of length L can be represented as:

[0122] sum(a)=ii(x)-ii(y) (6)

[0123] In the formula, ii(x) is the integral image value at position x, and a represents the distance from position x to position y. ii(x) is calculated as follows:

[0124]

[0125] Where x' is the position of the current pixel, and i(x') is the pixel at the relevant position in the input image;

[0126] Step 4.1.2: Calculate the mean of the reference cell samples using the parallel prefix sum (Scan) algorithm. and the second-order sum of squares E(x) 2 The specific calculation process is as follows:

[0127] a. Set the size of the second workgroup, calculate the number of local memory arrays, and divide the two-dimensional matrix S2 data in global memory into blocks and allocate them to the local memory arrays;

[0128] b. Up Sweep process, such as Figure 4 As shown, the parallel reduction implemented by adjacent element matching has a reduction time of log2L. The partial sum of the internal nodes of the tree is calculated from the leaf nodes to the root. After this stage, the root node, which is the last node in the array, stores the sum of all nodes in the array.

[0129] c. Down Sweep process, the reverse of step b, such as... Figure 4 As shown, we traverse the tree downwards from the root, constructing a scan on the array using partial sums from process b. We start by inserting zeros at the end of the distance dimension data L. At each step, each node in the current layer passes its own value to its left child and the sum of its value and the previous value of its left child to its right child, obtaining the mean of the reference cell samples. and the second-order sum of squares E(x) 2 The data is stored in the vector array CL_ARR of the OpenCL built-in double-precision floating-point vector type (cl_double2), and finally the total data set SUM of the reference cell sample mean and second-order sum of squares of each pulse distance dimension data is obtained.

[0130] Step 4.2: Based on the total data set SUM obtained from the preprocessing in Step 4.1, design a kernel function to calculate the VI and MR statistics in parallel, select a threshold calculation method, and calculate the estimated clutter background power w of the unit to be detected.

[0131] Specifically:

[0132] Step 4.2.1: Calculate the statistic VI. The VI statistic is used to calculate whether the left and right reference cells are uniform. It is mainly used to determine whether the sampled data in the reference cells comes from a uniform environment. The calculation method is as follows:

[0133]

[0134] in, δ represents the sample mean of the reference unit. 2 Let x be the variance. i Here, m represents the power value of the distance element, and m is the number of reference elements.

[0135] Based on the reference unit sample mean obtained in step 4.1 and the second-order sum of squares E(x) 2 By combining with OpenCL, VI computation can be optimized as follows:

[0136]

[0137] Step 4.2.2: Calculate the MR statistic. The MR statistic is used to determine whether the means of the left and right reference units are the same. Specifically:

[0138]

[0139] Where A represents the left reference cell array and B represents the right reference cell array. This represents the mean of the left reference cell array. x represents the mean of the right reference cell array. i and x j These are the power values ​​of the left and right reference units, respectively;

[0140] Step 4.2.3: Detect the target based on the background power;

[0141] 1) Calculate the threshold factor;

[0142] In Table 1 below, A represents the left reference cell array, B represents the right reference cell array, and ∑A, ∑B, and ∑AB represent the sum of the sampled values ​​of the left reference cell, the right reference cell, and the combined reference cell, respectively. Figure 2 As shown, VI A and VI B These are the change indices of the left and right reference units, α. N / 2 and α N The definition is shown in equation (11), which is based on the false alarm probability P. FA Threshold factors corresponding to different reference units under fixed conditions.

[0143]

[0144] 2) The judgment of clutter background is as follows:

[0145]

[0146]

[0147] K VI and K MR It is a comparison threshold; when the value of the statistic VI is greater than the threshold K... VI When the reference cell is uniform, it is considered uniform; otherwise, it is non-uniform. When the mean ratio MR is less than K... -1 MR Or greater than K MR If the means are the same, then they are considered to be different; otherwise, they are not.

[0148] 3) Based on whether the left and right reference cells are uniform and whether their mean values ​​are the same, select the threshold calculation method according to Table 1 below to calculate the estimated clutter background power w of the cell to be detected.

[0149] Table 1 Detection Threshold Calculation Scheme

[0150]

[0151]

[0152] In Table 1, when both left and right reference cells are judged to be uniform and have the same mean, the cell average (CA-CFAR) method is used to estimate the background power and calculate the detection threshold. When both left and right reference cells are judged to be uniform, but their means are different, the larger cell average (GO-CFAR) method is used to estimate the background power. When one side of the reference cells is judged to be uniform and the other side is not, the CA-CFAR method with a reference cell length of N / 2 is selected, where N is the reference cell length. When both sides of the reference cells are not uniform, the smaller cell average (SO-CFAR) method is selected to estimate the background power.

[0153] Step 4.3: Determine whether the unit to be detected is a target;

[0154] The estimated background power value w of the clutter of the unit to be detected obtained in step 4.2 is compared with the actual value of the unit to be detected. If w is greater than the actual value of the unit to be detected, the unit to be detected is the target signal and the target signal detection data T is 1; otherwise, the unit to be detected is noise or clutter and the target signal detection data T is 0.

[0155] Step 5: Copy the target signal detection data T obtained in Step 4 from the GPU to the CPU host and output it to complete the constant false alarm rate detection process.

[0156] By reading the target signal detection data T obtained in step 4 from the GPU to the CPU and outputting it through the host memory interface function (clEnqueueReadBuffer) from the buffer object, the process of constant false alarm rate detection of change factor is completed.

[0157] The advantages of the adaptive constant false alarm rate (CFAR) detection optimization method for radar signals based on OpenCL of this invention are as follows:

[0158] (1) Compared with the traditional constant false alarm rate (CFAR) processing scheme based on classical CFAR, an adaptive CFAR detection processing scheme based on OpenCL is proposed. The CPU+GPU heterogeneous model is adopted, with the CPU processing logic and the GPU processing data, which can give full play to the performance of the system.

[0159] (2) The adaptive constant false alarm rate (CFAR) detection method was optimized from the perspectives of hardware features, storage, and the algorithm itself. In terms of hardware, since GPUs are not good at handling branch operations, the branch logic operations were reduced by preprocessing the source data. In terms of memory, the time for threads to access global data was reduced by allocating data from global memory to local memory closer to the threads. In terms of the algorithm itself, the calculation methods of the change exponent and MR statistic were optimized to solve the redundant operation that each thread needs to perform a summation, thereby improving system performance.

[0160] Example

[0161] To verify the effectiveness of this method, the following simulation experiments are conducted to further illustrate its effectiveness.

[0162] 1. Simulation conditions

[0163] Hardware requirements: The CPU used in the simulation test was an Intel(R) Core(TM) i5-6200U, 4 cores, with a running frequency of 2.4GHz; the GPU was an AMD Radeon R7 M370, using the GCN1 architecture, with a running frequency of 875MHz.

[0164] Analog signal parameters: Transmit signal bandwidth is 2.0 × 10⁻⁶ 6 S, pulse width is 42.0×10 -6 S, sampling frequency is 2.0×10 6 Hz, the radar transmit pulse repetition period is 4.096×10 -3 S, the number of sampling points in a single pulse cycle is 8192, and the number of pulses is 16.

[0165] 2. Simulation Content

[0166] Simulation 1:

[0167] Under the above simulation conditions, when performing distance-dimensional CFAR detection on the data matrix, one-dimensional and two-dimensional addressing methods were used respectively, and constant false alarm rate detection technology with change exponent was selected. After the test was stabilized, the results of three experiments were taken. Table 2 shows the comparison of CFAR running time on CPU and GPU.

[0168] Table 2 CPU and GPU runtime and speedup ratio

[0169]

[0170]

[0171] Simulation 2:

[0172] Under the above simulation conditions, the pulse Doppler radar signal was accelerated using GPU using the present invention. The overall speedup ratio and GPU kernel utilization are shown in Table 3.

[0173] Table 3 Comparison of execution time before and after optimization

[0174]

[0175] Simulation 3:

[0176] Under the above simulation conditions, the pulse Doppler radar signal echo was processed using this invention and MATLAB software. The error between the two methods was statistically analyzed, and the results are as follows: Figure 5 As shown.

[0177] 3. Simulation Analysis

[0178] Table 2 shows that the average time consumed by one-dimensional and two-dimensional addressing methods is 130.148ms and 31.479ms, respectively. The parallelized constant false alarm rate (CFAR) detection algorithm has good performance on the GPU compared to the CPU, and the two-dimensional addressing method better reflects the performance of the GPU compared to the one-dimensional method.

[0179] As shown in Table 3, the execution time of the optimized system is reduced to 1 / 9 of the original time. Due to the reduction of a large number of blocking states during computation, kernel utilization is also significantly improved. Experiments demonstrate that this method has a significant speed-up effect.

[0180] Depend on Figure 5 It can be seen that the data processed by this invention and MATLAB software are basically consistent. When processing the power estimation value to be detected, error analysis was performed on the CPU and GPU data, and the absolute error was less than 3 × 10⁻⁶. -4 Furthermore, GPUs offer better data accuracy.

Claims

1. An adaptive constant false alarm rate (CFAR) detection optimization method for radar signals based on OpenCL, characterized in that, The specific steps are as follows: Step 1: Construct radar echo signals to obtain radar echo simulation signal data R; Step 2: Preprocess and fill the sequence of the radar echo simulation signal data R obtained in Step 1 to obtain the processed radar echo signal data M2; Step 3: Transmit the radar echo signal data M2 obtained in Step 2 to the device end, perform square law detection, and obtain the two-dimensional matrix S2; Step 4: Using the two-dimensional matrix S2 obtained in Step 3 as input, perform optimized adaptive constant false alarm rate detection to obtain target signal detection data T; Step 5: Copy the target signal detection data T obtained in Step 4 to the CPU and output it, completing the constant false alarm rate detection and processing flow of the exponential change. The specific process of step 4 is as follows: Step 4.1: Preprocess the two-dimensional matrix S2 data obtained in Step 3, and calculate the mean of the entire reference cell sample of length L. and second-order sum of squares Store the data in the OpenCL built-in vector array to obtain the total data set SUM, which is the reference cell sample mean and second-order sum of squares for each pulse distance dimension data. Step 4.2: Based on the total data set SUM obtained from the preprocessing in Step 4.1, design kernel functions to process the change factor and MR statistics respectively, select the threshold calculation method, and calculate the estimated clutter background power w of the unit to be detected. Step 4.3: Compare the estimated background power w of the unit under test obtained in step 4.2 with the actual value of the unit under test. If w is greater than the actual value of the unit under test, the unit under test is the target signal and the target signal detection data T is 1; otherwise, the unit under test is noise or clutter and the target signal detection data T is 0.

2. The adaptive constant false alarm rate (CFAR) detection and optimization method for radar signals based on OpenCL according to claim 1, characterized in that, Step 1 specifically involves: Step 1.1: Configure linear frequency modulation parameters; set the sampling frequency to fs, and the radar transmit pulse repetition period to PRT, then the number of sampling points per pulse period is fs. PRT, and then by setting the number of pulses to n, the total number of sampling points fs PRT n represents the number of simulated targets, which is targetNumber, and each target is assigned a different target power. Step 1.2, Signal Selection; Select a linear frequency modulated signal, the specific expression of which is: (1) in, The signal is represented by its carrier frequency, T is the pulse width, t is the time variable, s(t) is a linear frequency modulated signal, j represents the imaginary unit, and e is the Euler number. Let be the frequency modulation slope of the linear frequency modulated signal. Then, the complex envelope u(t) of the linear frequency modulated signal is given by equation (1): (2) in The frequency modulation slope is called the frequency modulation slope of the linear frequency modulation signal, B is the frequency modulation bandwidth, and T is the pulse width. Performing a Fourier Transform (FFT) on the complex envelope signal u(t) yields the expression for the spectrum of the linear frequency modulated signal, using U(t). f )express: (3); Step 1.3: Simplify the method for calculating the spectrum of a linear frequency modulated signal; According to the properties of Fresnel integrals, when the pulse compression ratio B When T is much greater than 1, the expression for the spectrum of the linear frequency modulated signal in equation (3) simplifies to: (4); The echo data of multiple targets are simulated and generated according to the linear frequency modulation signal spectrum calculation method, and the system noise signal is also simulated to finally obtain the radar echo simulation signal data R.

3. The adaptive constant false alarm rate (CFAR) detection and optimization method for radar signals based on OpenCL according to claim 2, characterized in that, The specific process of step 2 is as follows: Step 2.1: Perform pulse compression, moving target detection, and moving target display preprocessing on the radar echo simulation signal data R in sequence to obtain data M1; Step 2.2: Fill the data M1 obtained in Step 2.1 using the boundary method to obtain the filled radar echo signal data M2.

4. The adaptive constant false alarm rate (CFAR) detection and optimization method for radar signals based on OpenCL according to claim 3, characterized in that, The specific process of step 2.1 is as follows: Step 2.1.1: Perform a one-dimensional Fourier transform on the input radar echo simulation signal data R to obtain frequency domain data S1. At the same time, perform a Fourier transform on the matched filter coefficients to obtain frequency domain filter coefficients C1. Step 2.1.2: Perform complex dot multiplication on the frequency domain data S1 and the frequency domain filter coefficients C1, and then perform inverse Fourier transform to obtain the frequency domain pulse compression result R1; Step 2.1.3: Using the moving target display MTI processing, perform double delay line cancellation filtering on R1 to obtain two-dimensional echo data M. The output signal y(t) is expressed as: (5); Where x(t) is the result R1 after pulse compression; Step 2.1.4: After step 2.1.3, two pulses will be reduced. Zero padding is used to fill the original number of pulses. Then, Fourier transform processing is used to realize the MTD filtering for moving target detection. For the two-dimensional echo data M after MTI processing of moving target display, Fourier transform processing is performed on each distance unit to obtain the result M1 after coherent accumulation of several pulses within a coherent processing time.

5. The adaptive constant false alarm rate (CFAR) detection and optimization method for radar signals based on OpenCL according to claim 3, characterized in that, Step 2.2 specifically involves filling the original range dimension data. In each pulse range dimension, the leftmost and rightmost sides are filled with data from M1, the size of which is the sum of the number of reference units nr and the number of protection units np. The left and right reference units are the first nr and last nr range units of the current pulse range dimension data, respectively, and the left and right protection units are the nr+1 to nr+np+1 range units on both sides of the current pulse range dimension data, respectively, to obtain the filled radar echo signal data M2.

6. The adaptive constant false alarm rate (CFAR) detection and optimization method for radar signals based on OpenCL according to claim 3, characterized in that, The specific process of step 3 is as follows: Step 3.1: Transmit the radar echo signal data M2 obtained in Step 2 to the GPU device. By utilizing the clCreateBuffer interface function to create memory objects, a heterogeneous system architecture (HSA) is adopted in OpenCL to unify the memory space addresses of the CPU and GPU, and to implement data transfer from the CPU host to the GPU device using a zero-copy approach. Step 3.2: Perform square law detection; Step 3.2.1: Set the workgroup size p. Based on the radar echo signal data M2 obtained in Step 2, calculate the number of local arrays q, q=L / p, where L is the length of the range dimension data in the radar echo signal data M2. Step 3.2.2: Load the radar echo signal data M2 from the GPU global memory into the local memory; specifically, allocate the radar echo signal data M2 in the global memory into q local arrays in sequence, then perform square law detection kernel calculation on the preloaded data, and then write the result back to the global memory to obtain the two-dimensional matrix S2 after square law detection. Since the radar echo signal data M2 data format stores the real and imaginary parts alternately, that is, two consecutive data are the real and imaginary parts of the signal respectively, within each working group, the real and imaginary parts are respectively subjected to a sum of squares operation to obtain the power value of each unit to be detected.

7. The adaptive constant false alarm rate (CFAR) detection and optimization method for radar signals based on OpenCL according to claim 1, characterized in that, Step 4.1 specifically involves: Step 4.1.1: According to the integral image algorithm, any segment of distance dimension data of length L is represented as: (6) In the formula, ii(x) is the integral image value at position x, and a represents the distance from position x to position y. ii(x) is calculated as follows: (7) in, It is the position of the current pixel. These are the pixels at the relevant locations in the input image; Step 4.1.2: Calculate the mean of the reference cell samples using the parallel prefix sum Scan algorithm. and second-order sum of squares The specific calculation process is as follows: a. Set the size of the second workgroup, calculate the number of local memory arrays, and divide the two-dimensional matrix S2 data in global memory into blocks and allocate them to the local memory arrays; b. During the upward scanning process, parallel reduction is achieved through adjacent element matching, with the number of reduction operations being... The tree is traversed from the leaves to the root, and the partial sum of the internal nodes of the tree is calculated. After this stage, the root node stores the sum of all nodes in the array. c. Downward scanning process: the reverse of step b. Traverse the tree from the root downwards, using the partial sum from process b to construct the scan on the array, starting with inserting zeros at the end of the distance dimension data L. In each step, each node in the current layer passes its own value to its left child and the sum of its value and the previous value of its left child to its right child, obtaining the mean of the reference unit samples. and second-order sum of squares The data is stored in the vector array CL_ARR of the OpenCL built-in double-precision floating-point vector type cl_double2, and the total data set SUM, which is the reference cell sample mean and second-order sum of squares for each pulse distance dimension, is obtained.

8. The adaptive constant false alarm rate (CFAR) detection and optimization method for radar signals based on OpenCL according to claim 7, characterized in that, Step 4.2 specifically involves: Step 4.2.1: Calculate the statistic VI. The VI statistic is used to calculate whether the left and right reference cells are uniform. The calculation method is as follows: (8) in, This represents the mean of the reference unit sample. For variance, Here, m represents the power value of the distance element, and m is the number of reference elements. Based on the reference unit sample mean obtained in step 4.1 and second-order sum of squares By combining with OpenCL, VI calculation can be optimized as follows: (9); Step 4.2.2: Calculate the MR statistic. The MR statistic is used to calculate whether the means of the left and right reference units are the same. Specifically: (10) Where A represents the left reference cell array and B represents the right reference cell array. This represents the mean of the left reference cell array. This represents the mean of the right reference cell array. and These are the power values ​​of the left and right reference units, respectively; Step 4.2.3: Detect the target based on the background power; 1) Calculate the threshold factor; A represents the left reference cell array, and B represents the right reference cell array. , as well as These represent the sum of the sampled values ​​of the left reference cell, the right reference cell, and the combined reference cell, respectively. and These are the change indices of the left and right reference units, respectively. and In the probability of false alarms The threshold factors corresponding to different reference units under fixed conditions are expressed as follows: (11) 2) The judgment of clutter background is as follows: (12) (13) and It is a comparison threshold, when the statistic The value is greater than the threshold When the reference unit is uniform, it is considered uniform; otherwise, it is non-uniform. When the mean is greater than the mean... Less than or greater than If the means are the same, then they are considered to be different; otherwise, they are not. 3) Based on whether the left and right reference cells are uniform and whether their mean values ​​are the same, select the threshold calculation method to calculate the estimated clutter background power w of the cell to be detected.

9. The adaptive constant false alarm rate (CFAR) detection and optimization method for radar signals based on OpenCL according to claim 8, characterized in that, In step 4.2.3, the threshold calculation method is as follows: when both left and right reference cells are judged to be uniform and have the same mean, the cell average CA-CFAR is used to estimate the background power and calculate the detection threshold; when the left and right reference cells are judged to be uniform but their means are different, the cell average large GO-CFAR is used as the background power estimate; when one side of the reference cells is judged to be uniform and the other side is not uniform, the CA-CFAR method with a reference cell length of N / 2 is selected, where N is the reference cell length; when both sides of the reference cells are not uniform, the cell average small SO-CFAR is selected as the background power estimate.