【雷达通信】基于matlab SVM识别雷达数据【含Matlab源码 305期】
一、获取代码方式
获取代码方式1:
完整代码已上传我的资源: 【雷达通信】基于matlab SVM识别雷达数据【含Matlab源码 305期】
获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。
备注:订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);
二、SVM简介
支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。
1 数学部分
1.1 二维空间
2 算法部分
三、部分源代码
% function [ err_flage,f_t_data_abs] = DataConvert(str_1 )
%
% %%
% %%
% %--------------单位及常量------------%
% us=1e-6;
% KHz=1e3;
% MHz=1e6;
% GHz=1e9;
% km_h=1e3/3600;
% km_s=1e3;
% c=3e8; % 光速299792.458*km_h
% mm=1e-3;
%
% %%
% f0=24.125*GHz; % 发射信号的载频
% B=250*MHz;
%
% c = 3e8;
% lambda = c/f0;
%
% lambda1 = c/(24*GHz);
% lambda2 = c/(24.25*GHz);
%
% fs_r =426.666*KHz;
% fs_v = 5.12*KHz;
%
% N_R = 512;
% N_V = 512;
%
% N_SAMPLE = 5;
%
% N_R_NULL = 0;
% N_R_NULL1 = 0;
% N_V_NULL = 0;
% N_V_NULL1 = 0;
%
% tao_r = 100e-3;
% tao_v = 100e-3;
% miu_r=B/tao_r;
% miu_v=B/tao_v;
%
%
% %%
% a=textread(str_1,'%s')';
%
% data=hex2dec(a)'; %16进制转化为10进制数,存入data矩阵
% clear a;
% one_prf_length = (N_R+0)*2 + (N_V+0)*2;%IQ两个通道传上的来的字节数
%
% frame_flage_index = strfind(data,[0 17 34 51]);%cd cd ef ef %帧间标志位检测
% err_flage = 0;
%
% for i=1:length(frame_flage_index)-1 %检查数据是否传错
% err_num(i) = frame_flage_index(i+1) - frame_flage_index(i);
% if(err_num(i) ~= one_prf_length*4 )
% err_flage = err_flage+1;
% end
% end
%
% data12 = data(1:(frame_flage_index(end)+3));
%
% data1=reshape(data12,2,floor(length(data12)/2));
% clear data12;
% for i=1:size(data1,2)
% data2(i)=data1(1,i)+256* data1(2,i);
% end
% clear data1;
% data2 =(data2/65536*5-2.5);%hilbert
% data3=(reshape( data2,N_R+2,floor( length(data2)/(N_R+2) ) )).';
% % clear data2;
% % for i=1:size(data1,2)
% % data2(i)=data1(1,i)+256* data1(2,i);
% % end
% % clear data1;
% % data2 = data2/65536*5-2.5;
% % data3=(reshape( data2,1024,floor( length(data2)/1024 ))).';
%
% ch1 = reshape(data3(:,1:256-1).', 1, length(data2)/2-size(data3,1)*2);
% ch2 = reshape(data3(:,256:511-1).', 1, length(data2)/2-size(data3,1)*2);
% clear data2;
% clear data3;
%
% data6 = ch1 + j* ch2;
% data7 = data6(1:N_SAMPLE:end);
%
% %%
% Nfft = (N_R-2)/N_SAMPLE;
% x_in = [zeros(1,Nfft) data6 zeros(1,Nfft)];
% w = hamming(Nfft);
% noverlap = Nfft/2;
% [f_t_data,f1,t1] = spectrogram(x_in,w,noverlap,Nfft,fs_r/N_SAMPLE);
% f_t_data_abs = abs(fftshift(f_t_data,1));%最终时频图数据矩阵
% clear f_t_data;
% % figure(1)
% % imagesc(t1,f1-max(f1)/2,f_t_data_abs);%fftshift;
% % view(2)%plot
% end
%
%
function [ err_flage,f_t_data_abs] = DataConvert(str_1 )
%%
%%
%--------------单位及常量------------%
fs_v = 1024;
N_R = 256;
N_V = 256;
%%
a=textread(str_1,'%s')';
data=hex2dec(a)'; %16进制转化为10进制数,存入data矩阵
clear a;
one_prf_length = (N_R*2)*2 + 4;
frame_flage_index = strfind(data,[0 17 34 51]);%cd cd ef ef %帧间标志位检测
err_flage = 0;
for i=1:length(frame_flage_index)-1 %检查数据是否传错
err_num(i) = frame_flage_index(i+1) - frame_flage_index(i);
if(err_num(i) ~= one_prf_length*1 )
err_flage = err_flage+1;
end
end
data12 = data(1:(frame_flage_index(end)+3));
data1=reshape(data12,2,floor(length(data12)/2));
clear data12;
for i=1:size(data1,2)
data2(i)=data1(1,i)+256* data1(2,i);
end
clear data1;
data2 = data2/65536*5-2.5;
data3=(reshape( data2,N_R*2+2,floor( length(data2)/(N_R*2+2) ) )).';
clear data2;
%%
ch4_I = data3(:,1:2:512); %Q4
ch4_Q = data3(:,2:2:512); %Q4
ch4 = ch4_I + j*ch4_Q;
clear data3;
%%
data6 = reshape((ch4).',1,size(ch4,1)*size(ch4,2));
len=length(data6);
total=0;
for nn=1:len
total=total+data6(nn);
end
total_avg=total/len;
for nn=1:len
data6(nn)=data6(nn)-total_avg;
end
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
四、运行结果
五、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,2015.
[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,2020.
[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,2018.
[4]李树锋.基于完全互补序列的MIMO雷达与5G MIMO通信[M].清华大学出版社.2021
[5]何友,关键.雷达目标检测与恒虚警处理(第二版)[M].清华大学出版社.2011
文章来源: qq912100926.blog.csdn.net,作者:海神之光,版权归原作者所有,如需转载,请联系作者。
原文链接:qq912100926.blog.csdn.net/article/details/113812325
- 点赞
- 收藏
- 关注作者
评论(0)