一步
系统对象:phased.CFARDetector2D
包:分阶段
二维CFAR检测
描述
请注意
或者,而不是使用一步
定义的方法来执行操作系统对象™,您可以调用对象的参数,就好像它是一个函数。例如,y =步骤(obj, x)
和y = obj (x)
执行相同操作。
请注意
对象执行一个初始化第一次执行的对象。这个初始化锁nontunable属性和输入规范,比如尺寸,复杂性,和数据类型的输入数据。如果你改变一个nontunable财产或输入规范,一个错误的系统对象问题。改变nontunable属性或输入,您必须首先调用释放
方法来释放对象。
输入参数
探测器
- - - - - -二维CFAR检测器
phased.CFARDetector2D
系统对象
二维CFAR检测器,指定为一个phased.CFARDetector2D
系统对象。
X
- - - - - -输入图像
真正的米——- - - - - -N矩阵|真正的米——- - - - - -N——- - - - - -P数组
输入图像,指定为一个真正的米——- - - - - -N矩阵或一个真正的米——- - - - - -N——- - - - - -P数组中。米和N代表一个矩阵的行和列。每一页都是一个独立的二维信号。
输入矩阵的第一个维度的大小可以改变模拟信号长度的变化。大小会发生变化,例如,在一个脉冲重复频率脉冲波形与变量。
例子:[1,1;2.5,1,0.5,0.1)
数据类型:单
|双
cutidx
- - - - - -测试电池
2——- - - - - -D矩阵的正整数
测试细胞,指定为一个2——- - - - - -D正整数矩阵,D是测试细胞的数量。每一列的cutidx
指定的行和列索引减少细胞。相同的指标适用于输入数组中的所有页面。你必须限制剪切单元格的位置,以便他们的训练区域完全躺在输入图像。
例子:(10、15、11、15;12日15]
数据类型:单
|双
K
- - - - - -检测阈值的因素
积极的标量
指定的检测阈值,阈值因子用于计算作为一个积极的标量。
依赖关系
启用这个输入参数,设置ThresholdFactor
探测器对象的属性输入端口的
数据类型:单
|双
输出参数
Y
——检测结果
l——- - - - - -P逻辑矩阵
检测结果的格式取决于OutputFormat
财产
当
OutputFormat
是“切的结果”
,Y
是一个D——- - - - - -P矩阵包含逻辑测试细胞检测结果。D的长度是cutidx
和P页面的数量吗X
。的行Y
对应的行cutidx
。对于每一行,Y
包含1
在一列如果有相应的细胞的检测X
。否则,Y
包含一个0
。当
OutputFormat
是“检测报告”
,Y
是一个K——- - - - - -l包含检测指标矩阵。K维度的数量吗X
。l是检测中发现的数量输入数据。当X
是一个矩阵,Y
包含的行和列指标检测X
在表单中[detrow; detcol]
。当X
是一个数组,Y
包含的行、列和页面中每个检测的指标X
在表单中[detrow; detcol; detpage]
。当NumDetectionsSource
属性设置为“属性”
,l平等的价值NumDetections
财产。如果实际检测的数量小于此值,没有检测将列南
。
数据类型:单
|双
th
——计算检测阈值
实值矩阵
计算每个检测到细胞检测阈值,作为一个实值矩阵返回。Th
一样的尺寸吗Y
。
当
OutputFormat
是“切的结果”
,Th
返回检测阈值时的一个元素Y
是1
和南
当一个元素的Y
是0
。当
OutputFormat
是“检测指数”
,th
返回一个检测阈值为每个相应的检测Y
。当NumDetectionsSource
属性设置为“属性”
,l平等的价值NumDetections
财产。如果实际检测的数量小于此值,没有检测将列南
。
依赖关系
要启用这个输出参数,设置ThresholdOutputPort
来真正的
。
数据类型:单
|双
噪音
——估计噪声功率
实值矩阵
估计噪声功率为每个细胞,发现作为一个实值矩阵返回。噪音
一样的尺寸吗Y
。
当
OutputFormat
是“切的结果”
,噪音
返回的噪声功率每当一个元素Y
是1
和南
当一个元素的Y
是0
。当
OutputFormat
是“检测指数”
,噪音
返回一个为每个相应检测噪声功率Y
。当NumDetectionsSource
属性设置为“属性”
,l平等的价值NumDetections
财产。如果实际检测的数量小于此值,没有检测将列南
。
依赖关系
要启用这个输出参数,设置NoisePowerOutputPort
来真正的
。
数据类型:单
|双
例子
二维Noise-Only CFAR阈值数据集
这个例子显示了如何设置一个二维CFAR阈值基于需要假警报的可能性(pfa)。
执行cell-averaging CFAR检测41-by-41矩阵含有高斯噪声的细胞。估计所需的pfa实证pfa和比较。接受良好的估计,执行这个模拟1000相似矩阵。首先,使用所需的pfa设置一个阈值。在这种情况下,没有目标和pfa可以从细胞的数量,估计超过阈值。假设通过一个平方律检测器和数据处理,不执行脉冲集成。使用training-cell乐队3细胞宽度和4细胞高度。使用防护频带宽度和2细胞高度3细胞分离被测细胞细胞(减少)的培训。指定一个需要pfa的5.0的军医。
p = 5的军医;rs = RandStream.create (“mt19937ar”,“种子”5);N = 41;ntrials = 1000;探测器= phased.CFARDetector2D (“TrainingBandSize”3],[4日,…“ThresholdFactor”,“汽车”,“GuardBandSize”(2、3),…“ProbabilityFalseAlarm”、磷、“方法”,“严重”,“ThresholdOutputPort”,真正的);
创建一个41-by-41图像包含随机复杂的数据。然后,广场的数据来模拟一个平方律检测器。
x = 2 /√(2) * (randn (rs, N, N, ntrials) + 1我* randn (rs, N, N, ntrials));x2 = abs (x) ^ 2;
过程中的每一个细胞图像。要做到这一点,找到每个减少细胞的行和列的训练完全落在每个地区的形象。
Ngc = detector.GuardBandSize (2);是= detector.GuardBandSize (1);Ntc = detector.TrainingBandSize (2);正常= detector.TrainingBandSize关系(1);cutidx = [];colstart = Ntc + Ngc + 1;colend = N - (Ntc + Ngc);rowstart =正常+是+ 1关系;rowend = N -(正常+是关系);为m = colstart: colend为n = rowstart: rowend cutidx = [cutidx, [n; m]];结束结束ncutcells =大小(cutidx, 2);
显示细胞减少。
cutimage = 0 (N, N);为k = 1: ncutcells cutimage (cutidx (k), cutidx (2 k)) = 1;结束显示亮度图像(cutimage)轴平等的
对所有减少细胞执行检测。返回检测分类和阈值用于分类单元。
(精细,th) =检测器(x2, cutidx);
找到并显示一个图像与插图的假警报。
di = [];为k = 1: ntrials d =检波器(:,k);如果(任何(d) > 0) di = (di, k);结束结束idx = di (1);detimg = 0 (N, N);为k = 1: ncutcells detimg (cutidx (k), cutidx (2 k)) =检波器(k, idx);结束显示亮度图像(detimg)轴平等的
计算经验pfa。
pfa =总和(依据(:))/ ntrials / ncutcells
pfa = 4.5898 e-04
指定的实证和pfa同意。
显示所有图片平均经验阈值。
意思是(th (:))
ans = 31.7139
计算所需的pfa的理论阈值因素。
threshfactor = npwgnthresh (p, 1,“非相干”);threshfactor = 10 ^ (threshfactor / 10);disp (threshfactor)
7.6009
理论阈值系数乘以噪声方差应该同意测量阈值。
noisevar =意味着(x2 (:));disp (threshfactor * noisevar);
30.4118
理论阈值和经验阈值同意在一个可接受的差异。
检测目标背景噪音
执行cell-averaging CFAR检测的41-by-41矩阵包含5个间隔太近高斯噪声的目标细胞。执行此检测在1000年的模拟图像。使用两个探测器与不同的保护带区域。手动设置的阈值使用自定义
阈值的因素。假设通过一个平方律检波器和数据处理,不执行脉冲集成。使用训练2细胞带宽度和2细胞高度。第一探测器使用的保护带1细胞周围分离将细胞从培养细胞。对于第二个探测器,使用8细胞周围的保护带。
p = 5的军医;rs = RandStream.create (“mt19937ar”,“种子”5);N = 41;ntrials = 1000;
创造1000个41-by-41复杂的图像随机噪声标准差的1。
s = 1;x = s /√(2) * (randn (rs, N, N, ntrials) + 1我* randn (rs, N, N, ntrials));
靶细胞的值设置为1.5。然后,平方单元格的值。
一个= 1.5;x(: 23日,20日)=一个;x(: 23日,18日)=一个;x(: 23日,23日)=一个;x(20、22日:)=一个;x(: 21日18日)=一个;x2 = abs (x) ^ 2;
显示目标细胞。
xtgt = 0 (N, N);xtgt(: 23日,20日)= A;xtgt(: 23日,18日)= A;xtgt(: 23日,23日)= A;:xtgt(20、22) =一个;xtgt(: 21日18日)= A;显示亮度图像(xtgt)轴平等的轴紧
设置减少细胞靶细胞。
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检测二维探测器。第一个探测器有一个小的保护带地区。培训区域可以包括邻近目标可以影响噪声功率的计算。第二个探测器有一个更大的保护带地区,这就排除了噪声计算中使用的靶细胞。
创建两个CFAR检测器。
detector1 = phased.CFARDetector2D (“TrainingBandSize”(2,2),…“GuardBandSize”[1],“ThresholdFactor”,“自定义”,“方法”,“CA”,…“CustomThresholdFactor”2,“ThresholdOutputPort”,真正的);detector2 = phased.CFARDetector2D (“TrainingBandSize”(2,2),…“GuardBandSize”[8],“ThresholdFactor”,“自定义”,“方法”,“CA”,…“CustomThresholdFactor”2,“ThresholdOutputPort”,真正的);
返回检测分类和使用的阈值对细胞进行分类。然后,计算概率的检测。
[dets1, th1] = detector1 (x2, cutidx);ndets =元素个数(dets1 (:));pd1 =总和(dets1 (:)) / ndets
pd1 = 0.6416
[dets2, th2] = detector2 (x2, cutidx);pd2 =总和(dets2 (:)) / ndets
pd2 = 0.9396
探测器与更大的保护带地区pfa更高,因为噪音更准确的估计。
版本历史
介绍了R2016b
另请参阅
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。