使用多个样本进行信号检测

这个例子演示了如何使用多个接收到的信号样本来检测复杂的高斯白噪声中的信号。一个匹配的滤波器被用来利用处理增益。

介绍

这个例子中,信号检测高斯白噪声,介绍了一个基本的信号检测问题。在这个例子中,只使用接收信号的一个样本来执行检测。这个例子在检测过程中涉及到更多的样本来提高检测性能。

和前面的例子一样,假设信号功率为1,单样本信噪比(SNR)为3 dB。蒙特卡罗试验次数为100000次。期望的误报概率(Pfa)水平0.001。

Ntrial = 1E5;%蒙特卡罗试验次数PFA = 1E-3;% Pfasnrdb = 3;以dB SNR%信噪比= db2pow (snrdb);以线性标度%SNRnpower公司= 1 / SNR;%噪声功率NAMP = SQRT(npower公司/ 2);每个通道的噪声振幅%

信号检测使用较长的波形

如前所述,阈值是基于Pfa。因此,只要选择阈值,则Pfa是固定的,反之亦然。与此同时,人们当然更倾向于有更高的发现概率(Pd)。实现此目的的一种方法是使用多个样本来执行检测。例如,在前一个例子中,单个样本的信噪比是3db。如果可以使用多个样本,那么匹配的滤波器可以产生额外的信噪比增益,从而提高性能。在实践中,可以使用较长的波形来实现这种增益。在离散时间信号处理的情况下,通过增加采样频率也可以得到多个样本。

假设波形现在由两个样本构成

Nsamp = 2;wf = 1 (Nsamp, 1);mf =连词(wf(结束:1:1));%匹配滤波器

对于相干接收机,信号、噪声和阈值由

修正随机数生成器rstream = RandStream.create (“mt19937ar”,“种子”,2009);s = wf * 1 (1, Ntrial);n = namp * (randn (rstream, Nsamp Ntrial) + 1我* randn (rstream, Nsamp Ntrial));snrthreshold = db2pow(npwgnthresh(Pfa, 1,“连贯”));mfgain = mf ' * mf;阈值=√- * mfgain * snrthreshold);最终阈值T

如果目标存在

x = s + n;y = mf的* x;z =真正的(y);Pd = (z >阈值)/ Ntrial求和
Pd = 0.3947

如果目标不在

x = n;y = mf的* x;z =真正的(y);Pfa = (z >阈值)/ Ntrial求和
Pfa = 0.0011

注意,SNR由匹配滤波器改善。

snr_new =信噪比* mf的* mf;snrdb_new = pow2db (snr_new)
snrdb_new = 6.0103

用这个新的信噪比值绘制ROC曲线。

rocsnr (snrdb_new“SignalType”,'NonfluctuatingCoherent',“MinPfa”1的军医);

从图中可以看出所给的点PfaPd正好落在曲线上。因此,ROC曲线对应的信噪比就是匹配滤波器输出时单个样本的信噪比。这表明,虽然可以使用多个样本来执行检测,但是SNR中的单个样本阈值(程序中的snrthreshold)与简单样本情况相比没有变化。没有变化,因为阈值基本上是由Pfa。然而,最后的门槛,T,会因为额外的匹配滤波器增益而改变。由此产生的Pfa与只使用一个样本进行检测的情况相比保持不变。然而,额外的匹配增益提高了Pd从0.1390到0.3947。

可以对非相干接收机运行类似的情况来验证它们之间的关系Pd,Pfa和SNR。

使用脉冲集成的信号检测

雷达和声纳应用经常使用脉冲集成来进一步提高探测性能。如果接收端是相干的,脉冲积分就是将匹配滤波脉冲的实部相加。因此,当使用相干接收机时,信噪比的改善是线性的。如果集成10个脉冲,则信噪比提高10倍。对于非相干接收器,这种关系就没那么简单了。下面的例子展示了脉冲集成与非相干接收器的使用。

假设有两个脉冲的积分。然后构造接收信号并对其进行匹配滤波。

PulseIntNum = 2;Ntotal = PulseIntNum * Ntrial;s = wf * exp(1 * 2 *π*兰德(rstream 1 Ntotal));%不相干的n =√- / 2) *(randn(rstream,Nsamp,NTOTAL)+ 1I * randn(rstream,Nsamp,NTOTAL));

如果目标存在

x = s + n;y = mf的* x;y =重塑(y, Ntrial, PulseIntNum);重塑%在列对齐脉冲

人们可以使用两种可能的方法之一来对脉冲进行积分。这两种方法都与第一类修正贝塞尔函数的近似有关,后者是在使用多个脉冲模拟非相干检测过程的似然比检验(LRT)中遇到的。第一种方法是在脉冲中求ab (y)^2的和,通常称为a平方律检测。第二种方法是将所有脉冲的abs(y)相加,通常称为a线性检测器。小信噪比时,采用平方律检波器;大信噪比时,采用线性检波器。我们在这个模拟中使用平方律检测器。但是,两种检测器之间的差异通常在0.2 dB以内。

对于这个例子,选择平方律检测器,它比线性检测器更受欢迎。要执行平方律检测器,可以使用pulsint函数。该函数将输入数据矩阵的每一列视为一个单独的脉冲。的操作

y = | x 1 | 2 + · + | x n | 2

z = pulsint (y,“非相干”);

阈值之间的关系TPfa,有了这个新的充分的统计数据,z,由

P f 一个 = 1 - ( T 2 / ( N ) l , l - 1 ) = 1 - ( 年代 N R l , l - 1 )

在哪里

( u , K ) = · 0 u K + 1 e - τ τ K K ! d τ

不完全函数的皮尔逊形式和l是用于脉冲积分的脉冲数。使用平方律检测器,可以像以前一样使用npwgnthresh函数计算包含脉冲积分的信噪比阈值。

PulseIntNum snrthreshold = db2pow (npwgnthresh (Pfa,“非相干”));

得到足够的统计量的阈值,z,由

mfgain = mf ' * mf;阈值=√- * mfgain * snrthreshold);

检测的概率是通过获得

Pd = (z >阈值)/ Ntrial求和
Pd = 0.5343

然后,计算Pfa当接收到的信号是噪声仅使用具有2个脉冲一体的非相干检测器。

x = n;y = mf的* x;y =重塑(y, Ntrial, PulseIntNum);z = pulsint (y,“非相干”);Pfa = (z >阈值)/ Ntrial求和
Pfa = 0.0011

若要用脉冲积分绘制ROC曲线,必须在rocsnr函数中指定用于积分的脉冲数

rocsnr (snrdb_new“SignalType”,“NonfluctuatingNoncoherent”,“MinPfa”1的军医,'NumPulses',PulseIntNum);

再一次,给出的观点是PfaPd落在曲线上。因此,ROC曲线中的信噪比指定了从一个脉冲中检测单个样本的信噪比。

这样的信噪比值也可以用阿尔伯谢姆方程从Pd和Pfa中得到。从阿尔伯海姆方程得到的结果只是一个近似值,但使用频率很高Pfa,Pd和脉冲积分范围。

注意:阿尔伯海姆方程有许多假设,如目标是无波动的(旋涡情况0或5),噪声是复杂的,高斯白噪声,接收机是非相干的,线性检测器用于检测(非波动目标的平方律检测器也可以)。

要计算出必要的单样本信噪比才能达到一定的水平PdPfa,使用albersheim函数作为

snr_required = albersheim (Pd、Pfa PulseIntNum)
snr_required = 6.0009

这需要计算SNR值6分贝的信噪比新值匹配。

来看看在。方面取得的进步Pd通过脉冲积分,绘制未使用脉冲积分时的ROC曲线。

rocsnr (snrdb_new“SignalType”,“NonfluctuatingNoncoherent”,“MinPfa”1的军医,'NumPulses'1);

从图中可以看出,没有脉冲积分,Pd只能是0.24左右吗Pfa在1 e - 3。与2脉冲积分一样,如上述蒙特卡罗模拟所示Pfa,Pd大约是0.53。

摘要

这个例子说明了在检测中使用多个信号样本可以提高检测的概率,同时保持一个期望的虚警水平的概率。特别是利用较长的波形或脉冲积分技术进行了改进Pd。实例说明了它们之间的关系Pd,Pfa,ROC曲线和Albersheim方程。性能是用Monte Carlo模拟计算。