0
点赞
收藏
分享

微信扫一扫

【雷达】雷达自动检测与恒虚警处理matlab源代码

1 简介

GOSCA-CFAR检测器在杂波边缘的虚警性能

2 完整代码

%GOSCA-CFAR检测器在杂波边缘的虚警性能%%%%
clc;
clear all;
R=32;
n=R/2;
R1=16;
R2=16;
Pf=1e-6; %设定虚警概率为10^(-6)
k1=15;
k2=9;
SNR_dB=5;
SNR=10.^(SNR_dB/10);
syms T
g=Pf-gamma(R1+1)*gamma(R1-k1+1+T)*gamma(R2+1)*gamma(R2-k2+1+T)/(gamma(R1-k1+1)*gamma(R1+1+T)*gamma(R2-k2+1)*gamma(R2+1+T));%P77页,5.66公式,GOSCA-CFAR
x=solve(g);
T=double(x);
T1=T(T==abs(T));
for Nc=0:R
if(Nc<=n)
Q3=0;
for i=k1:R1
Q2=0;
for j=max(0,i-Nc):min(i,R1-Nc)
Q1=0;
for n1=0:j
g1=SNR*(T1+n1+R1-Nc-j)+Nc-i+j;
Q1=Q1+nchoosek(j,n1)*(-1)^n1*SNR*T1*gamma(g1)*gamma(i-j+1)/gamma(g1+i-j+1);
end
Q2=Q2+Q1*nchoosek(Nc,i-j)*nchoosek(R1-Nc,j);
end
Q3=Q3+Q2;
end
Pf(Nc+1)=k2*nchoosek(R2,k2)*gamma(R2-k2+1+T1)*gamma(k2)/gamma(R2+1+T1)*Q3;
else
Y3=0;
for i=k2:R2
Y2=0;
for j=max(0,i-Nc+R1):min(i,R-Nc)
Y1=0;
for n1=0:j
h1=T1+SNR*(n1+R2-Nc+R1-j)+Nc-R1-i+j;
Y1=Y1+nchoosek(j,n1)*(-1)^n1*SNR*T1*gamma(h1)*gamma(i-j+1)/gamma(h1+i-j+1);
end
Y2=Y2+Y1*nchoosek(Nc-R1,i-j)*nchoosek(R-Nc,j);
end
Y3=Y3+Y2;
end
Pf(Nc+1)=k1*nchoosek(R1,k1)*gamma(R1-k1+1+T1)*gamma(k1)/gamma(R1+1+T1)*Y3;
end
end
Nc=0:1:R;
semilogy(Nc,Pf);
hold on
xlim([0 33]);
ylim([1e-21 1e-1]);
grid on;

3 仿真结果

【雷达】雷达自动检测与恒虚警处理matlab源代码_参考文献

4 参考文献

[1]何友, 关键, 彭应宁. 雷达自动检测与恒虚警处理[M]. 清华大学出版社, 1999.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


【雷达】雷达自动检测与恒虚警处理matlab源代码_参考文献_02


举报

相关推荐

0 条评论