FMCW信号处理-(4)速度处理(RD图)

发布时间:2026/11/6 7:47:29
FMCW信号处理-(4)速度处理(RD图) 1、查看数据clc; %清空命令行 clear; %清空工作区 close all; %关闭绘图窗口 dataFile C:\Users\wfh\Desktop\毫米波雷达实测\Radar_Processing\data\000003.mat; %对文件路径赋值 whos(-file,dataFile) %查看数据 data load(dataFile); %读取数据复数双精度4177920字节2TX4RX255Chirp128采样adcData。2、检查数据有效性adcData data.adcData; %对变量赋值 hasNaN any(isnan(adcData(:))) %查看是否有无效数据 hasInf any(isinf(adcData(:))) %查看是否有无穷大数据输出结果都是零说明无无效和无穷大数据。3、查看TX1-RX1的数据二维大小adcFrame adcData(:,:,1,1); %取TX1-RX1的全部数据 N_samples size(adcFrame,1) %查看第一维行数据量 N_chirps size(adcFrame,2) %查看第二维列数据量第一维128行第二维255列。4、逐列去均值adc_dc zeros(size(adcFrame)); %预分配内存 for ch 1:N_chirps %遍历1-N_chips s adcFrame(:,ch); %遍历1-255列当列行全部保留 s_mean mean(s); %求当列均值 adc_dc(:,ch) s-s_mean; %汇总去均值后新数据 end5、逐列距离维加窗FFTwin_range hamming(N_samples); %汉明窗 R zeros(size(adcFrame)); %预分配内存 for ch 1:N_chirps %遍历1-255 sig adc_dc(:,ch); %遍历adc_dc每列 sig_win sig.*win_range; %当列加窗 fft_r fft(sig_win); %当列傅里叶变换 R(:,ch) fft_r; %新列赋值给R求得距离fft后新数据 end6、逐行多普勒维加窗FFTwin_dop hamming(N_chirps); %多普勒维汉明窗 RD zeros(adcFrame); %预分配内存 for rbin 1:N_samples %遍历1-128 slow_seq R(rbin,:); %遍历每行 slow_win slow_seq.*win_dop.; %多普勒维加窗 fft_dop fft(slow_win); %多普勒维傅里叶变换 fft_dop fftshift(fft_dop); %将0移位到中心 RD(rbin,:) fft_dop; %求得多普勒维频域数据 end其中win_dop hamming(N_chirps)是创建汉明窗但是按MATLAB逻辑创建的是一列所以在多普勒加窗的时候需要进行转置即win_dop。7、参数初始化RD_abs abs(RD); %绘图观察只需要幅度信息 c 3e8; %光速 f0 77e9; %初始频率 B 0.67e9; %带宽 fc_center f0B/2; %中心频率 lambda c/fc_center; %波长 Tc 60e-6; %电磁波持续时间 deltaR c/(2*B); %距离分辨率吧 deltaV lambda/(2*N_chirps*Tc); %速度分辨率其中deltaR c/(2*B)为距离分辨率公式是光速是带宽。deltaV lambda/(2*N_chirps*Tc)为速度分辨率公式是波长是chirp个数是单个chirp持续时间。8、绘制坐标轴R_axis (0:N_samples-1)*deltaR; %距离轴 vel_axis ((0:N_chirps-1)-(N_chirps-1)/2)*deltaV; %速度轴9、绘制RD图figure; %新开画布 imagesc(vel_axis,R_axis,RD_abs); %绘制二维图 colorbar; %颜色条 xlabel(速度(m/s)); %横轴名 ylabel(距离(m)); %竖轴名 title(RD map); %标题名 grid on; %开网格imagesc(a,b,c)为绘制二维图其中a为横轴b为纵轴c为具体幅值大小其中纵轴默认为从上到下为从小到大。从图示可以看出在约10m位置有一个目标以约不足1m/s的径向速度远离。10、完整代码clc; %清空命令行 clear; %清空工作区 close all; %关闭绘图窗口 dataFile C:\Users\wfh\Desktop\毫米波雷达实测\Radar_Processing\data\000003.mat; %对文件路径赋值 whos(-file,dataFile) %查看数据 data load(dataFile); %读取数据 adcData data.adcData; %对变量赋值 hasNaN any(isnan(adcData(:))) %查看是否有无效数据 hasInf any(isinf(adcData(:))) %查看是否有无穷大数据 adcFrame adcData(:,:,1,1); %取TX1-RX1的全部数据 N_samples size(adcFrame,1) %查看第一维行数据量 N_chirps size(adcFrame,2) %查看第二维列数据量 adc_dc zeros(size(adcFrame)); %预分配内存 for ch 1:N_chirps %遍历1-N_chips s adcFrame(:,ch); %遍历1-255列当列行全部保留 s_mean mean(s); %求当列均值 adc_dc(:,ch) s-s_mean; %汇总去均值后新数据 end win_range hamming(N_samples); %距离维汉明窗 R zeros(size(adcFrame)); %预分配内存 for ch 1:N_chirps %遍历1-255 sig adc_dc(:,ch); %遍历adc_dc每列 sig_win sig.*win_range; %当列加窗 fft_r fft(sig_win); %当列傅里叶变换 R(:,ch) fft_r; %新列赋值给R求得距离fft后新数据 end win_dop hamming(N_chirps); %多普勒维汉明窗 RD zeros(size(adcFrame)); %预分配内存 for rbin 1:N_samples %遍历1-128 slow_seq R(rbin,:); %遍历每行 slow_win slow_seq.*win_dop.; %多普勒维加窗 fft_dop fft(slow_win); %多普勒维傅里叶变换 fft_dop fftshift(fft_dop); %将0移位到中心 RD(rbin,:) fft_dop; %求得多普勒维频域数据 end RD_abs abs(RD); %绘图观察只需要幅度信息 c 3e8; %光速 f0 77e9; %初始频率 B 0.67e9; %带宽 fc_center f0B/2; %中心频率 lambda c/fc_center; %波长 Tc 60e-6; %电磁波持续时间 deltaR c/(2*B) %距离分辨率吧 deltaV lambda/(2*N_chirps*Tc) %速度分辨率 R_axis (0:N_samples-1)*deltaR; %距离轴 vel_axis ((0:N_chirps-1)-(N_chirps-1)/2)*deltaV; %速度轴 figure; %新开画布 imagesc(vel_axis,R_axis,RD_abs); %绘制二维图 colorbar; %颜色条 xlabel(速度(m/s)); %横轴名 ylabel(距离(m)); %竖轴名 title(RD map); %标题名 grid on; %开网格声明个人水平有限不足之处欢迎各位老师批评指正。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询