主要内容

分阶段。CFARDetector2D

二维CFAR探测器

描述

分阶段。CFARDetector2DSystem object™为二维图像数据的选定元素(称为单元格)实现恒定误报率检测器(CFAR)。当图像单元值超过阈值时声明检测。为了保持一个恒定的虚警率,阈值设置为图像噪声功率的倍数。检测器估计被测细胞的噪声功率(减少)使用三种单元格平均方法中的一种或顺序统计方法从周围的单元格中提取。细胞平均法有细胞平均法(CA)、最大细胞平均法(GOCA)和最小细胞平均法(SOCA)。

对于每个测试单元,检测器:

  1. 从围绕CUT单元的训练频带中的单元值估计噪声统计量。

  2. 通过将噪声估计值乘以阈值因子来计算阈值。

  3. 将CUT单元格值与阈值进行比较,以确定目标是否存在。如果该值大于阈值,则存在目标器。

运行探测器

  1. 定义并设置二维CFAR检测器。你可以设置分阶段。CFARDetector2D创建对象时的系统对象属性,或者将它们设置为默认值。看到建设.在构造时设置的一些属性可以在以后更改。这些属性是可调

  2. 查找检测一步方法。方法的属性决定了该方法的输出分阶段。CFARDetector2D系统对象。

请注意

或者,不使用一步方法来执行System对象定义的操作,则可以带参数调用该对象,就好像它是一个函数一样。例如,Y = step(obj,x)Y = obj(x)执行等价操作。

建设

探测器=分阶段。CFARDetector2D创建一个二维CFAR探测器系统对象,探测器

探测器=分阶段。CFARDetector2D (名字价值创建一个二维CFAR系统对象,探测器,使用每个指定的属性名字设置为指定的价值.您可以以任意顺序指定附加的名称-值对参数,如(Name1Value1、……)。

属性

全部展开

二维CFAR平均方法,指定为“CA”“GOCA”“严重”,或“操作系统”.为“CA”“GOCA”“严重”,噪声功率为从训练频带导出的样本均值。为“操作系统”,噪声功率为k通过对所有训练单元格值进行数字排序得到的单元格值。集k使用排名财产。

求平均值法 描述
CA-单元平均算法

计算CUT细胞周围所有训练细胞的样本均值。

GOCA-最大单元平均算法

将围绕着CUT细胞的二维训练窗口分成左右两半。然后,算法计算每一半的样本均值,并选择最大的均值。

打击严重有组织犯罪署-最小单元平均算法

将围绕着CUT细胞的二维训练窗口分成左右两半。然后,算法计算每一半的样本均值,并选择最小的均值。

操作系统-顺序统计算法

按数值升序排序训练单元格。然后算法选择k列表中的值。k是否指定了秩排名参数。

例子:“操作系统”

数据类型:字符

CUT单元两边的保护带单元的行数和列数,指定为非负整数。第一个元素指定沿行尺寸的保护带大小。第二个元素指定沿列尺寸的保护带大小。将此属性指定为单个整数相当于为两个维度指定具有相同值的保护带。例如,值为[1]表明在每个CUT细胞周围存在一个保护细胞宽度的区域。值为0表示没有保护单元格。

例子:3 [2]

数据类型:|

CUT单元每侧训练带单元的行数和列数,指定为正整数或1 × 2正整数矩阵。第一个元素指定沿行维度的训练带大小。第二个元素指定沿列维度的训练带大小。将此属性指定为标量等同于为两个维度指定具有相同值的训练频带。例如,值为[1]表示在CUT细胞周围有一个1个训练细胞宽的区域。

例子:(30:0.1:30)

数据类型:|

二维CFAR算法中使用的顺序统计量的秩,指定为正整数。这个属性的值必须在1和之间N火车,在那里N火车是训练单元的数量。1选择训练区域中最小的值。

例子:5

依赖关系

要启用此属性,请设置方法财产“操作系统”

数据类型:|

阈值因子方法,指定为“汽车”输入端口的,或“自定义”

当你设置ThresholdFactor财产“汽车”中设置的期望虚警概率计算阈值因子ProbabilityFalseAlarm财产。计算假设输入中的每个独立信号是来自没有脉冲积分的平方律检测器的单个脉冲。此外,假设噪声为高斯白噪声。

当你设置ThresholdFactor财产输入端口的的输入参数获得阈值因子一步方法。

当你设置ThresholdFactor财产“自定义”的值得到阈值因子CustomThresholdFactor财产。

例子:“自定义”

数据类型:字符

所需虚警概率,用0到1之间的实正标量表示。该算法根据需要的虚警概率计算阈值因子。

例子:0.001

依赖关系

要启用此属性,请设置ThresholdFactor财产“汽车”

数据类型:|

自定义阈值因子,指定为实正标量。这个属性是可调的。

依赖关系

要启用此属性,请设置ThresholdFactor财产“自定义”

数据类型:|

方法返回的检测结果格式一步方法,指定为“切的结果”“检测指数”

  • 当设置为“切的结果”,结果为逻辑检测值(10)。

  • 当设置为“检测指数”,结果形成一个矢量或矩阵,其中包含超过检测阈值的被测细胞的指数。的输入分阶段。RangeEstimator分阶段。DopplerEstimator系统对象。

数据类型:字符

选项以启用检测阈值输出,指定为真正的.将此属性设置为真正的通过输出参数返回检测阈值,th一步方法。

数据类型:逻辑

选项以启用输出噪音功率,指定为真正的.将此属性设置为真正的通过输出参数返回噪声功率,噪音一步方法。

数据类型:逻辑

检测次数的来源,指定为“汽车”“属性”.当您将此属性设置为“汽车”,报告的检测指标数为有检测的待测细胞总数。如果将此属性设置为“属性”的值决定报告的检测数量NumDetections财产。

依赖关系

要启用此属性,请设置OutputFormat财产“检测指数”

数据类型:字符

要报告的检测索引的最大数目,指定为正整数。

依赖关系

要启用此属性,请设置OutputFormat财产“检测指数”NumDetectionsSource财产“属性”

数据类型:

方法

重置 的复位状态系统对象
一步 二维CFAR探测
所有系统对象通用
释放

允许更改系统对象属性值

例子

全部折叠

这个示例展示了如何根据所需的虚警概率(pfa)设置二维CFAR阈值。

注意:您可以用等效函数替换对该函数的每次调用一步语法。例如,替换myObject (x)步骤(myObject x)

在包含高斯噪声的41 × 41细胞矩阵上执行细胞平均CFAR检测。估计经验pfa,并将其与所需的pfa进行比较。为了得到一个好的估计,在1000个相似的矩阵上执行这个模拟。首先,使用所需的pfa设置阈值。在这种情况下,没有目标,pfa可以从超过阈值的细胞数量中估计出来。假设数据是通过平方律检测器处理的,并且没有进行脉冲积分。使用宽度为3单元格,高度为4单元格的训练单元格带。使用宽度为3个单元格,高度为2个单元格的保护带将测试单元格(CUT)与训练单元格分开。指定所需的pfa为5.0e-4。

P = 5e-4;rs = RandStream.create(“mt19937ar”“种子”5);N = 41;Ntrials = 1000;检测器=相位。CFARDetector2D (“TrainingBandSize”3],[4日,“ThresholdFactor”“汽车”“GuardBandSize”(2、3),“ProbabilityFalseAlarm”、磷、“方法”“严重”“ThresholdOutputPort”,真正的);

创建包含随机复杂数据的41 × 41图像。然后,将数据平方以模拟平方律检测器。

x = 2 /√(2)* (randn (rs, N, N, ntrials) + 1我* randn (rs, N, N, ntrials));X2 = abs(x).^2;

处理每个图像中的所有单元格。要做到这一点,找到训练区域完全落在每个图像内的每个CUT单元的行和列。

Ngc = detector.GuardBandSize(2);Ngr = detector.GuardBandSize(1);Ntc =检测器. trainingbandsize (2);Ntr =检测器. trainingbandsize (1);Cutidx = [];colstart = Ntc + Ngc + 1;colend = N - (Ntc + Ngc);rowstart = Ntr + Ngr + 1;rowend = N - (Ntr + Ngr);M = colstart:colendN = rowstart:rowend cutidx = [cutidx,[N;m]];结束结束Ncutcells = size(cutidx,2);

显示CUT单元格。

cutimage = 0 (N,N);K = 1:ncutcells的cutimage(cutidx(1, K),cutidx(2, K)) = 1;结束显示亮度图像(cutimage)轴平等的

图中包含一个轴。坐标轴包含一个image类型的对象。

对所有CUT细胞执行检测。返回检测分类和用于对单元进行分类的阈值。

[dets,th] =检测器(x2,cutidx);

查找并显示带有假警报的图像以作说明。

Di = [];K = 1:ntrials d = dets(:, K);如果(any(d) > 0) di = [di,k];结束结束Idx = di(1);detimg = 0 (N,N);K = 1:ncutcells detimg(cutidx(1, K),cutidx(2, K)) = dets(K,idx);结束显示亮度图像(detimg)轴平等的

图中包含一个轴。坐标轴包含一个image类型的对象。

计算经验pfa。

Pfa = sum(dets(:))/ntrials/ncutcells
Pfa = 4.5898e-04

经验的pfa和指定的pfa一致。

显示所有图像的平均经验阈值。

意思是(th (:))
Ans = 31.7139

计算所需pfa的理论阈值因子。

Threshfactor = npwgnthresh(p,1;“非相干”);Threshfactor = 10^(Threshfactor /10);disp (threshfactor)
7.6009

理论阈值因子乘以噪声方差应与实测阈值一致。

Noisevar = mean(x2(:));disp (threshfactor * noisevar);
30.4118

理论阈值与经验阈值在可接受的范围内一致。

在高斯噪声中,对包含五个紧密间隔目标的41 × 41细胞矩阵执行细胞平均CFAR检测。在1000张图像的模拟上执行此检测。使用两个具有不同保护带区域的检测器。方法手动设置阈值自定义阈值的因素。假设数据是通过平方律检测器处理的,并且没有进行脉冲积分。使用宽度为2单元格,高度为2单元格的训练单元格带。对于第一个检测器,在周围使用1个细胞的保护带将CUT细胞与训练细胞分开。对于第二个探测器,在周围使用8个单元的保护带。

注意:此示例仅在R2016b或更高版本中运行。如果您使用的是较早的版本,请将对该函数的每个调用替换为等效的函数一步语法。例如,替换myObject (x)步骤(myObject x)

P = 5e-4;rs = RandStream.create(“mt19937ar”“种子”5);N = 41;Ntrials = 1000;

创建1000张41 × 41的复杂随机噪声图像,标准差为1。

S = 1;x = s /√(2)* (randn (rs, N, N, ntrials) + 1我* randn (rs, N, N, ntrials));

将目标单元格值设置为1.5。然后,对单元格值进行平方。

A = 1.5;x(23,20,:) = A;x(23,18,:) = A;x(23,23,:) = A;x(20,22,:) = A;x(21,18,:) = A;X2 = abs(x).^2;

显示目标单元格。

xtgt = 0 (N,N);xtgt(23,20,:) = A;xtgt(23,18,:) = A;xtgt(23,23,:) = A;xtgt(20,22,:) = A;xtgt(21,18,:) = A;显示亮度图像(xtgt)轴平等的

图中包含一个轴。坐标轴包含一个image类型的对象。

将CUT细胞设置为目标细胞。

Cutidx (1,1) = 23;Cutidx (2,1) = 20;Cutidx (1,2) = 23;Cutidx (2,2) = 18;Cutidx (1,3) = 23;Cutidx (2,3) = 23;Cutidx (1,4) = 20;Cutidx (2,4) = 22;Cutidx (1,5) = 21;Cutidx (2,5) = 18;

使用两个CFAR二维检测器对所有CUT细胞进行检测。第一探测器具有小的保护带区域。训练区域可能包含影响噪声功率计算的相邻目标。第二检测器具有较大的保护带区域,使目标单元无法用于噪声计算。

创建两个CFAR检测器。

Detector1 = phase。CFARDetector2D (“TrainingBandSize”(2, 2),“GuardBandSize”[1],“ThresholdFactor”“自定义”“方法”“CA”“CustomThresholdFactor”2,“ThresholdOutputPort”,真正的);Detector2 = phase。CFARDetector2D (“TrainingBandSize”(2, 2),“GuardBandSize”[8],“ThresholdFactor”“自定义”“方法”“CA”“CustomThresholdFactor”2,“ThresholdOutputPort”,真正的);

返回检测分类和用于对单元进行分类的阈值。然后,计算检测概率。

[dets1,th1] = detector1(x2,cutidx);Ndets = numel(dets1(:));Pd1 = sum(dets1(:))/ndets
Pd1 = 0.6416
[dets2,th2] = detector2(x2,cutidx);Pd2 = sum(dets2(:))/ndets
Pd2 = 0.9396

具有较大保护带区域的检测器具有较高的pfa,因为它可以更准确地估计噪声。

更多关于

全部展开

算法

全部展开

参考文献

莫特,H。雷达和通信天线.纽约:John Wiley & Sons, 1992。

理查兹,文学硕士。雷达信号处理基础.纽约:麦格劳-希尔出版社,2005。

斯科尔尼克,M。雷达系统简介,第3版。纽约:麦格劳-希尔出版社,2001。

扩展功能

在R2016b中引入