模拟雷达测量并使用它们通过数字信号处理 (DSP) 检测目标 |FMCW 波形生成 |快速傅里叶变换 (FFT) |距离多普勒地图 |CFAR 可视化研究(Matlab代码实现)

 欢迎来到本博客❤️❤️

博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

本文目录如下:

目录

1 概述

2 运行结果

3 参考文献

4 Matlab代码实现


1 概述

模拟雷达测量是通过数字信号处理(DSP)技术来检测目标的一种方法。其中,FMCW波形生成、快速傅里叶变换(FFT)、距离多普勒地图和CFAR(恒虚警率)可视化是常用的技术和方法。

FMCW波形生成是一种通过改变频率的连续波形来实现测量的方法。它通过在发送信号中改变频率来产生一个连续的调频信号,然后通过接收到的信号与发送信号进行比较,可以得到目标的距离信息。

快速傅里叶变换(FFT)是一种将时域信号转换为频域信号的方法。在雷达测量中,通过对接收到的信号进行FFT处理,可以得到信号的频谱信息,从而可以分析目标的速度信息。

距离多普勒地图是一种将距离和速度信息可视化的方法。它将雷达接收到的信号进行距离和速度的双向处理,然后将结果以图像的形式显示出来,从而可以直观地观察目标的位置和速度信息。

CFAR(恒虚警率)是一种用于目标检测的算法。它通过设置一个恒定的虚警率,然后根据接收到的信号强度进行判断,从而可以准确地检测到目标的存在。

通过将这些技术和方法结合起来,可以实现对目标的准确检测和定位。同时,通过可视化的方式,可以直观地观察目标的位置和速度信息,从而更好地理解和分析雷达测量的结果。

雷达测量是一种常用的技术,用于检测目标的距离、速度和位置等信息。

1. FMCW波形生成(Frequency Modulated Continuous Wave):FMCW雷达通过频率连续变化的波形发送和接收信号,以测量目标的距离。发送的信号频率在一段时间内缓慢变化,接收到的回波信号则与发送信号相比存在频率偏移。通过测量频率偏移可以计算目标到雷达的距离。

2. 数字信号处理(DSP):雷达接收到的回波信号是连续的模拟信号,需要使用数字信号处理技术来对其进行处理和分析。DSP可以包括滤波、采样、放大、频谱分析等一系列算法,用于提取目标的信息。

3. 快速傅里叶变换(FFT):FFT是一种用于将时域信号转换为频域信号的算法。在雷达信号处理中,使用FFT可以将回波信号从时域转换为频域表示,以便进行频谱分析和其他相关处理。

4. 距离多普勒地图:通过测量回波信号的频率偏移,可以计算出目标的速度信息。利用这些信息,可以生成距离-速度多普勒地图,用于显示目标在距离和速度上的分布情况,从而实现目标检测和跟踪。

5. CFAR(Constant False Alarm Rate):CFAR是一种用于雷达信号处理的算法,在背景杂波较大的情况下,可以实现目标的自适应检测。CFAR根据背景杂波的统计特性,动态调整检测阈值,以保持恒定的虚警率,并有效地检测目标信号。

在雷达应用中,这些技术常常结合使用,通过波形生成、数字信号处理、频谱分析和目标检测等步骤,实现对目标的测量和分析。通过可视化研究,可以更直观地理解和分析雷达测量结果,为雷达系统的优化和改进提供指导。

2 运行结果

 

 

部分代码:

% selecting number of training cells in both the dimensions
Tcr = 10;
Tcd = 4;

% selecting number of guard cells in both dimensions around the Cell Under Test (CUT) for accurate estimation
Gcr = 5;
Gcd = 2;

% offsetting the threshold by signal-to-noise-ratio (SNR) value in dB
offset = 1.4;

% creating vector to store noise level for each iteration on training cells
noise_level = zeros(Nr / 2 - 2 * (Tcd + Gcd), Nd - 2 * (Tcr + Gcr));
gridSize = (2 * Tcr + 2 * Gcr + 1) * (2 * Tcd + 2 * Gcd + 1);
trainingCellsNum = gridSize - (2 * Gcr + 1) * (2 * Gcd + 1);

% designing loop - slide the CUT across range doppler map by giving margins 
% at the edges for training and guard cells.
% For every iteration sum the signal level within all the training cells
% To sum convert the value from logarithmic to linear using db2pow function
% Average the summed values for all of the training cells used
% After averaging, convert it back to logarithimic using pow2db
% Add the offset to it to determine the threshold 
% Next, compare the signal under CUT with this threshold:
% if the CUT level > threshold, assign it a value of 1, else equate it to 0

CFAR_sig = zeros(size(RDM));

% Using RDM[x,y] as the matrix from the output of 2D FFT for implementing CFAR
for j = 1 : Nd - 2 * (Tcr + Gcr)
    for i = 1 : Nr / 2 - 2 * (Tcd + Gcd)
        % to extract only the training cells, first get the sliding patch and, 
        % after converting it to power from decibel, set to zero whatever isn't 
        % in the position of training cells;
        % the zero submatrix will not contribute to the sum over the whole patch and, 
        % by dividing for the number of training cells I will get the noise mean level
        
        trainingCellsPatch = db2pow(RDM( i : i + 2 * (Tcd + Gcd), j : j + 2 * (Gcr + Tcr)));
        trainingCellsPatch(Tcd + 1 : end - Tcd, Tcr + 1 : end - Tcr) = 0;
        
        noise_level(i,j) = pow2db(sum(sum(trainingCellsPatch))/trainingCellsNum);
        sigThresh = noise_level(i, j) * offset;
        if RDM(i + (Tcd + Gcd), j + (Tcd + Gcr)) > sigThresh
            CFAR_sig(i + (Tcd + Gcd), j + (Tcd + Gcr)) = 1;
        else
            CFAR_sig(i + (Tcd + Gcd), j + (Tcd + Gcr)) = 0;
        end
    end
end

3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

[1]常树茂.DSP技术在FMCW测距雷达中的应用[C]//中国宇航学会特种装备专业委员会学术交流会.中国宇航学会, 2000.

[2]周早丽.基于LFMCW毫米波雷达的目标检测方法研究[J].[2023-08-17].

[3]侯盼卫.FMCW测距雷达的信号处理技术研究与实现[D].中北大学,2014.

4 Matlab代码实现

你可能感兴趣的:(信号处理,matlab,目标跟踪)