【雷达通信】基于matlab Omiga-K算法SAR回波生成和成像【含Matlab源码 1184期】
【摘要】
一、获取代码方式
获取代码方式1: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。
获取代码方式2: 完整代码已上传我的资源:【雷达通信】基于matlab Omiga-K算法SAR...
一、获取代码方式
获取代码方式1:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。
获取代码方式2:
完整代码已上传我的资源:【雷达通信】基于matlab Omiga-K算法SAR回波生成和成像【含Matlab源码 1184期】
备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);
二、部分源代码
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Omiga-K算法版本2
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all;
clc;
c=299792458; %light speed
load sarecho.mat;
fc=Head(1);
B=Head(2);
Tp=Head(3);
fs=Head(4);
V=Head(5);
PRF=Head(6);
dx=Head(7);
dy=Head(8);
Res_r=Head(9);
Res_a=Head(10);
theta=Head(11);
Rg0=Head(12);
Rang_Wath=Head(13);
Range_Swath=Head(14);
Azimuth_Swath=Head(15);
h=Head(16);
Rmin=Head(17);
Src=Head(18);
Rmax=Head(19);
Azimuth_StartNum=Head(20);
Azimuth_EndNum=Head(21);
rawdatawidth=Head(22);
slicelen=Head(23);
lamda = c/fc;
K=B/Tp; %调频率
%%%%%%%%%%%%%%%%%OmigaK算法%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
cj = sqrt(-1);
% dt=1/fs;
delaymin=2*Rmin/c-Tp/2; %距离波门起始时刻
% %%%%%%%%%%%%%%%%%%%%%%%%%%Omiga K算法%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Na=rawdatawidth;
Nr=slicelen;
T=Tp;
fx0=round(Na/2);
ft0=round(Nr/2);
fx=([1:Na]-fx0)/(Na-1)*PRF; %Doppler frequency
fr=(([1:Nr]-ft0)/(Nr-1)*fs); %距离向频率
%距离压缩
N = round(fs*Tp);
figure;imagesc(abs(sr));title('回波仿真结果');
% sfa=fftshift(fft(sr),1);
% sfa2 = fftshift(fft(sfa,[],2),2);
sfa2 =fftshift(fft2(fftshift(sr)));
H_Range_Com=exp(cj*pi*fr.^2/K).'*ones(1,Na); %距离向压缩因子
H_PHASE = exp(cj*4*pi*Src/c*sqrt((fr.'+fc).^2*ones(1,Na)-ones(Nr,1)*(c*fx/2/V).^2));%参考距离中心处的方位向聚焦因子
Hshift = exp(-cj*Src*4*pi*(fr+fc)/c).'*ones(1,Na); %将图像时域移动到距离中心
sfa2 = sfa2.*H_Range_Com.*Hshift.*H_PHASE;
figure;
imagesc(abs(sfa2));
%%Stolt插值,根据非均匀值插出均匀值
% Nr2=Nr-N;
ft0=round(Nr/2);
% fr=fftshift(fr); %距离向频率
P=1;%8点sinc插值
Stolt_krkx=zeros(Nr,Na);%初始化
dfr=fs/(Nr-1);%频域间隔
Stolt_krkx = sqrt((fr.'+fc).^2*ones(1,Na)+ones(Nr,1)*(c*fx/2/V).^2)-fc;
delta_fr = Stolt_krkx-fr.'*ones(1,Na);
Kr=fix(delta_fr/dfr);
%linear interpolator
%8 point SINC interpolator
Nd = Kr(1,end)
F = [sfa2;zeros(Nd+P,Na)]; %回波数据
stolt_sfa2 = zeros(Nr,Na);
for i=P+1:Nr
for j=1:Na
T=Kr(i,j)+(-P:P);
f=F(T+i,j).';
% stolt_sfa2(i,j)=sum(f.*sinc(delta_fr(i,j)/dfr-T));
stolt_sfa2(i,j)=sinc(delta_fr(i,j)/dfr-T)*F(T+i,j);
end
end
figure;
imagesc(abs(stolt_sfa2));
%H_phase1 = exp(cj*Src*sqrt((kr+krc).^2*ones(1,Na)-ones(Nr2,1)*kx.^2));
%%聚焦因子
stolt_sfa2 = stolt_sfa2;%.*H_phase1;
sfa3 =fftshift(ifft2(stolt_sfa2));
figure;
imagesc(abs(sfa3));
[pm,pn] = plotsection(sfa3.');
% Nt =pn;
kp_a = 2;
deltA = V/PRF*kp_a;
deltR = c/2/fs;
indexa =[1:Na].';
indext = [1:Nr].';
Mr = 16;
Ma = round(Mr*kp_a);
function [m,n]= plotsection(y)
[x,b] = max(abs(y));
[z,n] = max(x);
[A,B] = size(y);
m = b(n);
figure;
plot(20*log10(abs(y(m,:))/z)),grid,axis([1,B,-40,0]);
title('距离向剖面图');
figure;
plot(20*log10(abs(y(:,n))/z)),grid,axis([1,A,-40,0]);
title('方位向剖面图');
- 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
三、运行结果
四、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/119377331
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)