使用ROC曲线分析检测器性能

该示例示出了如何评估使用受试者工作特征(ROC)曲线相干和非相干系统的性能。它假定检测器中的添加剂复高斯白噪声环境中运行。

ROC曲线常用于评估雷达或声纳探测器的性能。ROC曲线是给定信噪比(SNR)下检测概率(Pd)与虚警概率(Pfa)的曲线图。

介绍

检测概率(Pd)是在事件“1”发生的情况下判断“1”为真的概率。虚警概率(Pfa)是在发生“0”事件的情况下判断“1”为真的概率。在声纳和雷达等应用程序中,“1”事件表示目标存在,“0”事件表示目标不存在。

探测器的性能是通过其在给定信噪比下实现一定的检测概率和虚警概率的能力来衡量的。检查检测器的ROC曲线可以了解其性能。我们可以使用rocsnr函数来计算和绘制ROC曲线。

单脉冲检测

给定一个信噪比值,你可以计算Pd和Pfa值,线性或平方律探测器可以用一个脉冲实现。假设我们有一个8db的信噪比值,并且我们的要求规定Pfa值最多为1%,那么检测器可以获得多大的Pd值呢?我们可以使用rocsnr函数计算Pd和Pfa的值,然后确定Pd的什么值对应于Pfa = 0.01。请注意,在默认情况下,rocsnr函数假定检测是一致的。

(Pd, Pfa) = rocsnr (8);idx =找到(Pfa = = 0.01);对于PFA%查找索引= 0.01

利用上述指标,我们可以找到对应于Pfa = 0.01的Pd值。

Pd (idx)
ans = 0.8899

该rocsnr功能的一个特点是,你可以指定SNR值的向量和rocsnr计算每个SNR值的ROC曲线。相反,对于给定的SNR分别计算钯和PFA值,我们可以在ROC曲线的曲线图查看结果。该rocsnr功能,如果没有指定输出参数默认绘制ROC曲线。调用带有四个SNR值和无输出参数的输入矢量的rocsnr函数产生ROC曲线的曲线图。

SNRvals = [2 4 8 9.4];rocsnr(SNRvals);

在图中,我们可以在工具栏(或在工具菜单)中选择数据光标按钮,然后选择在该点的SNR =8分贝曲线,其中的Pd = 0.9,以验证的PFA大约0.01。

多脉冲检测

改进探测器性能的一种方法是对几个脉冲进行平均。当感兴趣的信号已知并且出现在附加的复杂白噪声中时,这种方法特别有用。尽管这仍然适用于线性和平方律检测器,平方律检测器的结果可能相差0.2 dB左右。让我们继续我们的例子,假设信噪比为8db,平均在两个脉冲上。

rocsnr (8,'NumPulses'2);

通过检查的情节,我们可以看到,平均超过两个脉冲导致对于给定的误报率较高的概率检测。随着8 dB的SNR和平均超过两个脉冲,可以限制误报的概率是0.0001和实现检测的0.9的概率。回想一下,对于单个脉冲,我们不得不让误报的概率会高达1%,实现检测的概率相同。

非相干检测器

到目前为止,我们假设我们处理的是复杂高斯白噪声中的已知信号。rocsnr函数默认情况下假设有一个相干检测器。要在信号除相位已知的情况下分析检测器的性能,可以指定非相干检测器。使用与之前相同的信噪比值,让我们分析一下非相干检测器的性能。

rocsnr(SNRvals,“SignalType”,'NonfluctuatingNoncoherent');

焦点对应8分贝的SNR的ROC曲线。通过检查与数据光标的图,你可以看到,要实现检测的0.9的概率,你必须忍受了一个假警报概率0.05。如果不使用相位信息,我们需要一个更高的信噪比达到相同的钯对于一个给定的Pfa。对于非相干线性检测器,我们可以使用Albersheim的公式来确定什么样的SNR值将达到我们预期的钯和PFA。

SNR_valdB = albersheim(0.9,0.01)% Pd=0.9, Pfa=0.01
SNR_valdB = 9.5027

绘制由Albersheim方程近似得到的SNR值的ROC曲线,可以看出检测器的Pd = 0.9, Pfa = 0.01。注意,阿尔伯海姆的技术只适用于非相干探测器。

rocsnr(SNR_valdB,“SignalType”,'NonfluctuatingNoncoherent');

波动目标检测

上述所有的讨论假定目标nonfluctuating,这意味着该目标的统计特性不随时间而改变。然而,在实际情况下,目标可以加速和减速以及摇摆和颠簸。这些因素导致靶的雷达散射截面(RCS)到随时间变化。一组统计模型称为史厄林模型通常用来描述目标RCS的随机变化。

有四种史厄林车型,分别史厄林1-4。该nonfluctuating目标通常被称为任史厄林0或史厄林5.每个史厄林模型描述一个目标的RCS如何随时间变化和变化的概率分布。

由于目标RCS是变化的,波动目标的ROC曲线与非波动目标的不一样。另外,由于转弯目标在接收信号中加入随机相位,使得使用相干检测器检测转弯目标变得更加困难。因此,非相干检测技术常被用于转弯目标。

现在,让我们一nonfluctuating目标和史厄林1目标比较ROC曲线。特别是,我们要探讨一下SNR要求是针对这两种情况下,如果我们想要达到相同的钯和PFA。对于这样的比较,它往往是容易积ROC曲线以Pd针对SNR具有变化的Pfa。我们可以使用rocpfa功能绘制以这种形式ROC曲线。

让我们假设我们正在做非相干检测与集成10个脉冲,与所需的Pfa至多是1E-8。我们首先绘制了nonfluctuating目标的ROC曲线。

rocpfa(1E-8,'NumPulses'10“SignalType”,'NonfluctuatingNoncoherent')

然后我们绘制一个突然转向的1个目标的ROC曲线进行比较。

rocpfa(1E-8,'NumPulses'10“SignalType”,'Swerling1')

从图中我们可以看出,对于0.9的Pd,如果目标是稳定的,我们需要一个大约6分贝的信噪比。然而,如果目标是一个突然转向的情况1模型,所需的信噪比会跳到14分贝以上,一个8分贝的差异。这将极大地影响系统的设计。

作为nonfluctuating目标的情况下,我们有近似方程来帮助确定所需要的SNR,而不必画出所有的曲线。用于波动指标的计算公式如下Shnidman方程。因为我们用来绘制ROC曲线的情况下,SNR要求,可以使用shnidman功能导出。

snr_sw1_db = shnidman(0.9,1e-8,10,1)%的Pd = 0.9,PFA = 1E-8,10个脉冲,
snr_sw1_db = 14.7131
%史厄林壳体1

所计算出的SNR要求从曲线得出的值相匹配。

摘要

ROC曲线对于分析探测器的性能是很有用的,对于相干系统和非相干系统都是如此。我们使用rocsnr函数来分析线性检测器在不同信噪比下的有效性。我们还回顾了通过对多个样本进行平均得到的检测器性能的改进。最后,我们展示了如何使用rocsnr和rocpfa函数来分析非相干检测器对非波动和波动目标的性能。