本文档对均匀背景下常用恒虚警检测算法,包括CA-CFAR,OS-CFAR,GO-CFAR,SO-CFAR进行简单的分析和比较,具体地,推导了每种算法的虚警概率、检测概率的表达式,并简单地比较了它们在均匀背景中的性能。
一、理论最优性能
本文均是对高斯噪声背景下的单样本平方率检波进行分析的。此时待检单元
x
x
x在
H
0
H_0
H0和
H
1
H_1
H1两种检验假设条件下的概率密度函数可以分别表示为
f
(
x
∣
H
0
)
=
λ
0
e
−
λ
0
x
,
x
≥
0
f
(
x
∣
H
1
)
=
λ
1
e
−
λ
1
x
,
x
≥
0
(1)
\begin{equation} \begin{aligned} &f(x|H_0)=\lambda_0 e^{-\lambda_0 x},x \geq 0\\ &f(x|H_1)=\lambda_1 e^{-\lambda_1 x},x \geq 0 \end{aligned} \end{equation}\tag{1}
f(x∣H0)=λ0e−λ0x,x≥0f(x∣H1)=λ1e−λ1x,x≥0(1)
其中
λ
0
=
1
σ
2
\lambda_0=\frac{1}{\sigma^2}
λ0=σ21,
λ
1
=
1
σ
2
(
1
+
S
N
R
)
\lambda_1=\frac{1}{\sigma^2(1+{\rm SNR})}
λ1=σ2(1+SNR)1,且
σ
2
\sigma^2
σ2表示待检单元的噪声功率值,
S
N
R
{\rm SNR}
SNR表示目标的信噪比。由此可以求得理论虚警概率
P
F
A
P_{FA}
PFA和检测概率
P
D
P_D
PD分别为
P
F
A
=
∫
T
∞
f
(
x
∣
H
0
)
d
x
=
e
−
λ
0
T
=
e
−
T
/
σ
2
P
D
=
∫
T
∞
f
(
x
∣
H
1
)
d
x
=
e
−
λ
1
T
=
e
−
T
/
[
σ
2
(
1
+
S
N
R
)
]
(2)
\begin{equation} \begin{aligned} &P_{FA}=\int_T^\infty{f(x|H_0)dx}=e^{-\lambda_0 T}=e^{-T/\sigma^2}\\ &P_D=\int_T^\infty{f(x|H_1)dx}=e^{-\lambda_1 T}=e^{-T/[\sigma^2(1+{\rm SNR})]} \end{aligned} \end{equation}\tag{2}
PFA=∫T∞f(x∣H0)dx=e−λ0T=e−T/σ2PD=∫T∞f(x∣H1)dx=e−λ1T=e−T/[σ2(1+SNR)](2)
其中
T
T
T表示门限值,可以看出理论虚警概率和检测概率均与噪声功率值和设置的门限有关。且
P
D
=
P
F
A
1
/
(
1
+
S
N
R
)
P_D=P_{FA}^{1/(1+{\rm SNR})}
PD=PFA1/(1+SNR)。
二、CFAR算法的统一推导思路
(1)中推导了已知噪声功率条件下的理论虚警概率和检测概率。在实际应用中噪声功率是没办法作为先验知识精确已知的,而是需要从实测数据中进行估计。CFAR算法就是利用待检单元周围的单元(称为参考窗)得到噪声功率估计值
σ
^
2
\hat{\sigma}^2
σ^2,然后自适应设置检测门限
T
=
α
σ
^
2
T=\alpha \hat{\sigma}^2
T=ασ^2,从而使得检测虚警率保持恒定。不同类型的CFAR算法的差别就在于
σ
^
2
\hat{\sigma}^2
σ^2获取方法上的差异。设
x
i
x_i
xi表示第
i
i
i个参考窗单元,则理想情况下我们希望参考窗各个单元中只包含噪声成分,即其服从
f
x
i
(
x
i
)
=
λ
0
e
−
λ
0
x
i
f_{x_i}(x_i)=\lambda_0 e^{-\lambda_0 x_i}
fxi(xi)=λ0e−λ0xi的指数分布。不同CFAR算法利用
x
i
x_i
xi的方式有差异,设
z
z
z表示CFAR算法估计的噪声功率
σ
^
2
\hat{\sigma}^2
σ^2,则对于不同类型CFAR,
z
z
z的表达式分别为:
C
A
−
C
F
A
R
:
z
=
1
N
∑
i
=
1
N
x
i
G
O
−
C
F
A
R
:
z
=
m
a
x
(
2
N
∑
i
=
1
N
/
2
x
i
,
2
N
∑
i
=
N
/
2
+
1
N
x
i
)
S
O
−
C
F
A
R
:
z
=
m
i
n
(
2
N
∑
i
=
1
N
/
2
x
i
,
2
N
∑
i
=
N
/
2
+
1
N
x
i
)
O
S
−
C
F
A
R
:
z
=
x
(
k
)
(3)
\begin{equation} \begin{aligned} &{\rm CA-CFAR}:z=\frac{1}{N}\sum_{i=1}^N{x_i}\\ &{\rm GO-CFAR}:z={\rm max}(\frac{2}{N}\sum_{i=1}^{N/2}x_i,\frac{2}{N}\sum_{i=N/2+1}^N{x_i})\\ &{\rm SO-CFAR}:z={\rm min}(\frac{2}{N}\sum_{i=1}^{N/2}x_i,\frac{2}{N}\sum_{i=N/2+1}^N{x_i})\\ &{\rm OS-CFAR}:z=x_{(k)} \end{aligned} \end{equation}\tag{3}
CA−CFAR:z=N1i=1∑NxiGO−CFAR:z=max(N2i=1∑N/2xi,N2i=N/2+1∑Nxi)SO−CFAR:z=min(N2i=1∑N/2xi,N2i=N/2+1∑Nxi)OS−CFAR:z=x(k)(3)
显然可以由
x
i
x_i
xi的概率密度函数求得噪声功率的概率密度函数
f
z
(
z
)
f_z{(z)}
fz(z),然后可以进一步地利用
T
^
=
α
σ
^
2
=
α
z
\hat{T}=\alpha \hat{\sigma}^2=\alpha z
T^=ασ^2=αz求得检测门限的概率密度函数
f
T
^
(
T
^
)
f_{\hat{T}}(\hat{T})
fT^(T^)。由于
P
F
A
P_{FA}
PFA和
P
D
P_D
PD是检测门限
T
T
T的函数,而
T
T
T的估计值
T
^
\hat{T}
T^是满足一定分布的随机变量,所以通常采用
P
F
A
P_{FA}
PFA和
P
D
P_D
PD的期望值
P
‾
F
A
\overline{P}_{FA}
PFA和
P
‾
D
\overline{P}_D
PD来表征CFAR算法的性能。
P
‾
F
A
\overline{P}_{FA}
PFA和
P
‾
D
\overline{P}_D
PD的计算通常有以下两种方法:
P
‾
F
A
=
E
[
∫
T
^
∞
f
(
x
∣
H
0
)
d
x
]
=
E
[
e
−
λ
0
T
^
]
=
E
[
e
−
λ
0
α
z
]
=
M
z
(
α
λ
0
)
P
‾
D
=
E
[
∫
T
^
∞
f
(
x
∣
H
1
)
d
x
]
=
E
[
e
−
λ
1
T
^
]
=
E
[
e
−
λ
1
α
z
]
=
M
z
(
α
λ
1
)
P
‾
F
A
=
∫
0
∞
e
−
λ
0
T
^
f
T
^
(
T
^
)
d
T
^
P
‾
D
=
∫
0
∞
e
−
λ
1
T
^
f
T
^
(
T
^
)
d
T
^
(4)
\begin{equation} \begin{aligned} \overline{P}_{FA}&={\rm E}[\int_{\hat{T}}^\infty{f(x|H_0)dx}]={\rm E}[e^{-\lambda_0 \hat{T}}]={\rm E}[e^{-\lambda_0 \alpha z}]={\rm M}_z(\alpha \lambda_0)\\ \overline{P}_D&={\rm E}[\int_{\hat{T}}^\infty{f(x|H_1)dx}]={\rm E}[e^{-\lambda_1 \hat{T}}]={\rm E}[e^{-\lambda_1 \alpha z}]={\rm M}_z(\alpha \lambda_1)\\ \overline{P}_{FA}&=\int_0^\infty{e^{-\lambda_0 \hat{T}}f_{\hat{T}}(\hat{T})d\hat{T}}\\ \overline{P}_D&=\int_0^\infty{e^{-\lambda_1 \hat{T}}f_{\hat{T}}(\hat{T})d\hat{T}} \end{aligned} \end{equation}\tag{4}
PFAPDPFAPD=E[∫T^∞f(x∣H0)dx]=E[e−λ0T^]=E[e−λ0αz]=Mz(αλ0)=E[∫T^∞f(x∣H1)dx]=E[e−λ1T^]=E[e−λ1αz]=Mz(αλ1)=∫0∞e−λ0T^fT^(T^)dT^=∫0∞e−λ1T^fT^(T^)dT^(4)
在上面的表达式中
M
z
M_z
Mz表示变量
z
z
z的矩母函数,其相关内容可以参考文献[2]。上面两种做法虽然是等价的,但是可以从两种不同的物理含义进行理解。第一种方法直接利用了
P
F
A
P_{FA}
PFA和
P
D
P_{D}
PD的定义,即虚警概率表示当目标不存在时,待检单元超过设定门限值的概率;检测概率表示当目标存在时,待检单元超过设定门限的概率,所以第一种方法直接将待检单元作为操作对象。第二种方法利用的是随机变量函数的期望计算方法,它的积分对象是门限值
T
T
T。
从上面的说明我们知道CFAR算法的噪声功率是从参考窗中估计得到的,为了获取CFAR门限 T ^ = α σ ^ 2 \hat{T}=\alpha \hat{\sigma}^2 T^=ασ^2,还需要求得门限乘积因子 α \alpha α,通常从(4)中我们可以得到 P ‾ F A \overline{P}_{FA} PFA和 α \alpha α的函数关系,继而可以反推得到 α \alpha α值。以此完成整个CFAR算法的实现过程。
三、 CA-CFAR
由(3)可知CA-CFAR将参考单元的平均噪声作为待检单元的噪声估计值,显然这是对待检单元噪声的极大似然估计,当参考单元长度 N → + ∞ N \rightarrow +\infty N→+∞时,该估计结果趋近于真实噪声值。
由参考单元
x
i
x_i
xi的概率密度函数及(3)中所示噪声估计值
z
z
z的表达式,所以
z
z
z的概率密度函数可以表示为(具体推导过程参考附录1)
Z
∽
G
(
N
,
N
λ
0
)
:
f
z
(
z
)
=
(
N
λ
0
)
N
Γ
(
N
)
z
N
−
1
e
−
N
λ
0
z
(5)
Z \backsim {\rm G}(N,N\lambda_0): f_z(z)=\frac{(N\lambda_0)^N}{\Gamma(N)}z^{N-1}e^{-N\lambda_0 z}\tag{5}
Z∽G(N,Nλ0):fz(z)=Γ(N)(Nλ0)NzN−1e−Nλ0z(5)
由于
T
^
=
α
z
\hat{T}=\alpha z
T^=αz,所以可以求得
T
^
\hat{T}
T^的概率密度函数为
T
^
∽
G
(
N
,
N
λ
0
/
α
)
:
f
T
^
(
T
^
)
=
(
N
λ
0
/
α
)
N
Γ
(
N
)
T
^
N
−
1
e
−
N
λ
0
T
^
/
α
(6)
\hat{T} \backsim {\rm G}(N,N\lambda_0/\alpha):f_{\hat{T}}(\hat{T})=\frac{(N\lambda_0/\alpha)^N}{\Gamma(N)}\hat{T}^{N-1}e^{-N\lambda_0 \hat{T}/\alpha}\tag{6}
T^∽G(N,Nλ0/α):fT^(T^)=Γ(N)(Nλ0/α)NT^N−1e−Nλ0T^/α(6)
由(4)可得
P
‾
F
A
=
M
z
(
α
λ
0
)
=
∫
0
∞
e
−
λ
0
T
^
f
T
^
(
T
^
)
d
T
^
P
‾
D
=
M
z
(
α
λ
1
)
=
∫
0
∞
e
−
λ
1
T
^
f
T
^
(
T
^
)
d
T
^
(7)
\begin{equation} \begin{aligned} \overline{P}_{FA}&={\rm M}_z(\alpha \lambda_0)=\int_0^\infty{e^{-\lambda_0 \hat{T}}f_{\hat{T}}(\hat{T})d\hat{T}}\\ \overline{P}_D&={\rm M}_z(\alpha \lambda_1)=\int_0^\infty{e^{-\lambda_1 \hat{T}}f_{\hat{T}}(\hat{T})d\hat{T}} \end{aligned} \end{equation}\tag{7}
PFAPD=Mz(αλ0)=∫0∞e−λ0T^fT^(T^)dT^=Mz(αλ1)=∫0∞e−λ1T^fT^(T^)dT^(7)
利用结论:
x
∽
G
(
n
,
λ
)
→
M
x
(
t
)
=
(
1
+
t
λ
)
−
n
x \backsim {\rm G}(n,\lambda) \rightarrow {\rm M}_x(t)=(1+\frac{t}{\lambda})^{-n}
x∽G(n,λ)→Mx(t)=(1+λt)−n,具体推导过程可以参考附录2或文献[3]。可以得到
M
z
(
t
)
=
(
1
+
t
N
λ
0
)
−
N
{\rm M}_z(t)=(1+\frac{t}{N\lambda_0})^{-N}
Mz(t)=(1+Nλ0t)−N,所以
M
z
(
α
λ
0
)
=
(
1
+
α
N
)
−
N
{\rm M}_z(\alpha \lambda_0)=(1+\frac{\alpha}{N})^{-N}
Mz(αλ0)=(1+Nα)−N,
M
z
(
α
λ
1
)
=
[
1
+
α
N
(
1
+
S
N
R
)
]
−
N
{\rm M}_z(\alpha \lambda_1)=[1+\frac{\alpha}{N(1+{\rm SNR})}]^{-N}
Mz(αλ1)=[1+N(1+SNR)α]−N,所以
P
‾
F
A
=
(
1
+
α
N
)
−
N
\overline{P}_{FA}=(1+\frac{\alpha}{N})^{-N}
PFA=(1+Nα)−N,
P
‾
D
=
[
1
+
α
N
(
1
+
S
N
R
)
]
−
N
\overline{P}_D=[1+\frac{\alpha}{N(1+{\rm SNR})}]^{-N}
PD=[1+N(1+SNR)α]−N。需要注意(7)中
P
‾
F
A
\overline{P}_{FA}
PFA和
P
‾
D
\overline{P}_D
PD中第二个等号右边式子的推导过程,完全可以借鉴Gamma分布矩母函数的推导过程进行求解。可以看出
P
‾
F
A
\overline{P}_{FA}
PFA与噪声功率无关,因此具有恒虚警特性。且可以反推得到
α
=
N
(
P
‾
F
A
−
1
/
N
−
1
)
\alpha=N(\overline{P}_{FA}^{-1/N}-1)
α=N(PFA−1/N−1),据此可以完整实现CA-CFAR。
四、GO-CFAR
GO-CFAR选择前、后参考窗中平均噪声较大的那个作为噪声估计值,设
Z
1
=
2
N
∑
i
=
1
N
/
2
X
i
Z_1=\frac{2}{N}\sum_{i=1}^{N/2}{X_i}
Z1=N2∑i=1N/2Xi表示前参考窗噪声估计结果,
Z
2
=
2
N
∑
i
=
N
/
2
+
1
N
X
i
Z_2=\frac{2}{N}\sum_{i=N/2+1}^N{X_i}
Z2=N2∑i=N/2+1NXi表示后参考窗噪声估计结果,则GO-CFAR最终噪声估计结果为
Z
=
m
a
x
(
Z
1
,
Z
2
)
Z={\rm max}(Z_1,Z_2)
Z=max(Z1,Z2),参考(3)中的分析和推导过程我们可以得到
Z
1
∽
G
(
N
/
2
,
N
λ
0
/
2
)
,
Z
2
∽
G
(
N
/
2
,
N
λ
0
/
2
)
Z_1 \backsim {\rm G}(N/2,N\lambda_0/2),Z_2 \backsim {\rm G}(N/2,N\lambda_0/2)
Z1∽G(N/2,Nλ0/2),Z2∽G(N/2,Nλ0/2),而随机变量
Z
Z
Z的概率密度函数可以表示为
f
z
(
z
)
=
f
z
1
(
z
)
F
z
2
(
z
)
+
f
z
2
(
z
)
F
z
1
(
z
)
f_z(z)=f_{z_1}(z)F_{z_2}(z)+f_{z_2}(z)F_{z_1}(z)
fz(z)=fz1(z)Fz2(z)+fz2(z)Fz1(z),其中
F
z
1
(
z
1
)
,
F
z
2
(
z
2
)
F_{z_1}(z_1),F_{z_2}(z_2)
Fz1(z1),Fz2(z2)分别表示随机变量
Z
1
,
Z
2
Z_1,Z_2
Z1,Z2的概率分布函数,由附录(4)可知
F
z
1
(
z
1
)
=
1
−
e
−
N
λ
0
z
1
/
2
∑
k
=
0
N
/
2
−
1
(
N
λ
0
z
1
/
2
)
k
k
!
F
z
2
(
z
2
)
=
1
−
e
−
N
λ
0
z
2
/
2
∑
k
=
0
N
/
2
−
1
(
N
λ
0
z
2
/
2
)
k
k
!
(8)
\begin{equation} \begin{aligned} F_{z_1}(z_1)&=1-e^{-N\lambda_0 z_1/2}\sum_{k=0}^{N/2-1}{\frac{(N\lambda_0 z_1/2)^k}{k!}}\\ F_{z_2}(z_2)&=1-e^{-N\lambda_0 z_2/2}\sum_{k=0}^{N/2-1}{\frac{(N\lambda_0 z_2/2)^k}{k!}} \end{aligned} \end{equation}\tag{8}
Fz1(z1)Fz2(z2)=1−e−Nλ0z1/2k=0∑N/2−1k!(Nλ0z1/2)k=1−e−Nλ0z2/2k=0∑N/2−1k!(Nλ0z2/2)k(8)
所以
f
z
(
z
)
=
2
(
N
λ
0
/
2
)
N
/
2
Γ
(
N
/
2
)
z
N
/
2
−
1
e
−
N
λ
0
z
/
2
[
1
−
e
−
N
λ
0
z
/
2
∑
k
=
0
N
/
2
−
1
(
N
λ
0
z
/
2
)
k
k
!
]
(9)
f_z(z)=2\frac{(N\lambda_0/2)^{N/2}}{\Gamma(N/2)}z^{N/2-1}e^{-N\lambda_0 z/2}[1-e^{-N\lambda_0 z/2}\sum_{k=0}^{N/2-1}{\frac{(N\lambda_0 z/2)^k}{k!}}]\tag{9}
fz(z)=2Γ(N/2)(Nλ0/2)N/2zN/2−1e−Nλ0z/2[1−e−Nλ0z/2k=0∑N/2−1k!(Nλ0z/2)k](9)
利用(2)可以求得
z
z
z的矩母函数为(具体求解过程可以参考附录(5))
M
z
(
t
)
=
2
(
n
λ
0
)
n
(
n
λ
0
+
t
)
−
n
−
2
(
n
λ
0
)
n
∑
k
=
0
n
−
1
(
n
−
1
+
k
k
)
(
n
λ
0
)
k
(
2
n
λ
0
+
t
)
−
(
n
+
k
)
(10)
{\rm M}_z(t)=2(n\lambda_0)^n (n\lambda_0+t)^{-n}-2(n\lambda_0)^n\sum_{k=0}^{n-1}{\begin{pmatrix} n-1+k \\ k \end{pmatrix}(n\lambda_0)^k (2n\lambda_0+t)^{-(n+k)}}\tag{10}
Mz(t)=2(nλ0)n(nλ0+t)−n−2(nλ0)nk=0∑n−1(n−1+kk)(nλ0)k(2nλ0+t)−(n+k)(10)
在上面的表达式中
n
=
N
/
2
n=N/2
n=N/2,所以由(4)可得
P
‾
F
A
=
M
z
(
α
λ
0
)
=
2
(
1
+
α
n
)
−
n
−
2
∑
k
=
0
n
−
1
(
n
−
1
+
k
k
)
(
2
+
α
n
)
−
(
n
+
k
)
P
‾
D
=
M
z
(
α
λ
1
)
=
2
[
1
+
α
n
(
1
+
S
N
R
)
]
−
n
−
2
∑
k
=
0
n
−
1
(
n
−
1
+
k
k
)
[
2
+
α
n
(
1
+
S
N
R
)
]
−
(
n
+
k
)
(11)
\begin{equation} \begin{aligned} \overline{P}_{FA}&={\rm M}_z(\alpha \lambda_0)=2(1+\frac{\alpha}{n})^{-n}-2\sum_{k=0}^{n-1}{\begin{pmatrix} n-1+k \\ k \end{pmatrix} (2+\frac{\alpha}{n})^{-(n+k)}}\\ \overline{P}_D&={\rm M}_z(\alpha \lambda_1)=2[1+\frac{\alpha}{n(1+{\rm SNR})}]^{-n}-2\sum_{k=0}^{n-1}{\begin{pmatrix} n-1+k \\ k \end{pmatrix} [2+\frac{\alpha}{n(1+{\rm SNR})}]^{-(n+k)}} \end{aligned} \end{equation}\tag{11}
PFAPD=Mz(αλ0)=2(1+nα)−n−2k=0∑n−1(n−1+kk)(2+nα)−(n+k)=Mz(αλ1)=2[1+n(1+SNR)α]−n−2k=0∑n−1(n−1+kk)[2+n(1+SNR)α]−(n+k)(11)
从(11)可以看出虚警概率与噪声功率无关,因此GO-CFAR具有恒虚警特性。虽然(11)推导出了GO-CFAR的虚警概率和检测概率的表达式,但是由于表达式太复杂,门限乘积因子 α \alpha α的求解相对比较困难,在实际应用过程中通常有两种求解思路:一是从GO-CFAR算法的原理分析,它与CA-CFAR具有很多相似的地方,因此可以借由CA-CFAR门限乘积因子的表达式来求解,将其中与参考单元数 N N N换成 N / 2 N/2 N/2即可。二是用迭代法直接对(11)式进行求解,比如二分法、最陡下降法、牛顿下降法等。
五、SO-CFAR
SO-CFAR和GO-CFAR的差别在于SO-CFAR选择前后参考窗中噪声较小的值作为噪声估计结果,所以此时噪声估计量
Z
=
m
i
n
(
Z
1
,
Z
2
)
Z={\rm min}(Z_1,Z_2)
Z=min(Z1,Z2),所以随机变量
Z
Z
Z的概率密度函数可以表示为
f
z
(
z
)
=
f
z
1
(
z
)
+
f
z
2
(
z
)
−
[
f
z
1
(
z
)
F
z
2
(
z
)
+
f
z
2
(
z
)
F
z
1
(
z
)
]
f_z(z)=f_{z_1}(z)+f_{z_2}(z)-[f_{z_1}(z)F_{z_2}(z)+f_{z_2}(z)F_{z_1}(z)]
fz(z)=fz1(z)+fz2(z)−[fz1(z)Fz2(z)+fz2(z)Fz1(z)],所以
z
z
z的矩母函数可以很方便地求得(可以利用GO-CFAR中矩母函数的计算结果)
M
z
(
t
)
=
2
(
1
+
t
n
λ
0
)
−
n
−
[
2
(
n
λ
0
)
n
(
n
λ
0
+
t
)
−
n
−
2
(
n
λ
0
)
n
∑
k
=
0
n
−
1
(
n
−
1
+
k
k
)
(
n
λ
0
)
k
(
2
n
λ
0
+
t
)
−
(
n
+
k
)
]
(12)
{\rm M}_z(t)=2(1+\frac{t}{n\lambda_0})^{-n}-[2(n\lambda_0)^n (n\lambda_0+t)^{-n}-2(n\lambda_0)^n\sum_{k=0}^{n-1}{\begin{pmatrix} n-1+k \\ k \end{pmatrix} (n\lambda_0)^k (2n\lambda_0+t)^{-(n+k)}}]\tag{12}
Mz(t)=2(1+nλ0t)−n−[2(nλ0)n(nλ0+t)−n−2(nλ0)nk=0∑n−1(n−1+kk)(nλ0)k(2nλ0+t)−(n+k)](12)
所以
P
‾
F
A
=
M
z
(
α
λ
0
)
=
2
∑
k
=
0
n
−
1
(
n
−
1
+
k
k
)
(
2
+
α
n
)
−
(
n
+
k
)
P
‾
D
=
M
z
(
α
λ
1
)
=
2
∑
k
=
0
n
−
1
(
n
−
1
+
k
k
)
[
2
+
α
n
(
1
+
S
N
R
)
]
−
(
n
+
k
)
(13)
\begin{equation} \begin{aligned} \overline{P}_{FA}&={\rm M}_z(\alpha \lambda_0)=2\sum_{k=0}^{n-1}{\begin{pmatrix} n-1+k \\ k \end{pmatrix} (2+\frac{\alpha}{n})^{-(n+k)}}\\ \overline{P}_D&={\rm M}_z(\alpha \lambda_1)=2\sum_{k=0}^{n-1}{\begin{pmatrix} n-1+k \\ k \end{pmatrix} [2+\frac{\alpha}{n(1+{\rm SNR})}]^{-(n+k)}} \end{aligned} \end{equation}\tag{13}
PFAPD=Mz(αλ0)=2k=0∑n−1(n−1+kk)(2+nα)−(n+k)=Mz(αλ1)=2k=0∑n−1(n−1+kk)[2+n(1+SNR)α]−(n+k)(13)
可以看出虚警概率与噪声功率无关,所以SO-CFAR也具有恒虚警特性,其门限乘积因子的求解方法和GO-CFAR中类似。
六、OS-CFAR
上面介绍的CFAR算法均属于均值类CFAR,他们均是利用参考窗内的平均噪声作为估计噪声。而OS-CFAR属于有序统计的方法,它首先对参考窗进行排序,然后选择某一个参考窗内的值作为估计噪声。由附录(6)可知,估计噪声
z
z
z的概率密度函数可以表示为
f
z
(
z
)
=
N
!
(
k
−
1
)
!
(
N
−
k
)
!
[
F
(
z
)
]
k
−
1
[
1
−
F
(
z
)
]
N
−
k
f
(
z
)
(14)
f_z(z)=\frac{N!}{(k-1)!(N-k)!}[F(z)]^{k-1} [1-F(z)]^{N-k} f(z)\tag{14}
fz(z)=(k−1)!(N−k)!N![F(z)]k−1[1−F(z)]N−kf(z)(14)
在上面的表达式中
f
(
z
)
,
F
(
z
)
f(z),F(z)
f(z),F(z)分别表示参考窗中各个单元的概率密度函数和分布函数,所以
f
(
z
)
=
λ
0
e
−
λ
0
z
,
F
(
z
)
=
1
−
e
−
λ
0
x
f(z)=\lambda_0 e^{-\lambda_0 z},F(z)=1-e^{-\lambda_0 x}
f(z)=λ0e−λ0z,F(z)=1−e−λ0x,将其代入(14)可
f
z
(
z
)
=
λ
0
N
!
(
k
−
1
)
!
(
N
−
k
)
!
e
−
λ
0
(
N
−
k
+
1
)
z
[
1
−
e
−
λ
0
z
]
k
−
1
(15)
f_z(z)=\lambda_0 \frac{N!}{(k-1)!(N-k)!} e^{-\lambda_0 (N-k+1)z}[1-e^{-\lambda_0 z}]^{k-1}\tag{15}
fz(z)=λ0(k−1)!(N−k)!N!e−λ0(N−k+1)z[1−e−λ0z]k−1(15)
据此可求
z
z
z对应的矩母函数(具体过程参考附录(7))为
M
z
(
t
)
=
k
(
N
k
)
B
(
N
−
k
+
1
+
t
/
λ
0
,
k
)
(16)
{\rm M}_z(t)=k \begin{pmatrix} N \\ k \end{pmatrix} {\rm B}(N-k+1+t/\lambda_0,k)\tag{16}
Mz(t)=k(Nk)B(N−k+1+t/λ0,k)(16)
所以其虚警概率和检测概率可以分别表示为
P
‾
F
A
=
M
z
(
α
λ
0
)
=
k
(
N
k
)
B
(
N
−
k
+
1
+
α
,
k
)
P
‾
D
=
M
z
(
α
λ
1
)
=
k
(
N
k
)
B
(
N
−
k
+
1
+
α
1
+
S
N
R
,
k
)
(17)
\begin{equation} \begin{aligned} \overline{P}_{FA}&={\rm M}_z(\alpha \lambda_0)=k \begin{pmatrix} N \\ k \end{pmatrix} {\rm B}(N-k+1+\alpha,k)\\ \overline{P}_D&={\rm M}_z(\alpha \lambda_1)=k \begin{pmatrix} N \\ k \end{pmatrix} {\rm B}(N-k+1+\frac{\alpha}{1+{\rm SNR}},k) \end{aligned} \end{equation}\tag{17}
PFAPD=Mz(αλ0)=k(Nk)B(N−k+1+α,k)=Mz(αλ1)=k(Nk)B(N−k+1+1+SNRα,k)(17)
当
α
\alpha
α为整数时,上面的式子可进一步化简为
P
‾
F
A
=
N
!
(
N
−
k
+
α
)
!
(
N
−
k
)
!
(
N
+
α
)
!
(18)
\overline{P}_{FA}=\frac{N!(N-k+\alpha)!}{(N-k)!(N+\alpha)!}\tag{18}
PFA=(N−k)!(N+α)!N!(N−k+α)!(18)
显然OS-CFAR中虚警概率与噪声功率无关,所以OS-CFAR算法具有恒虚警特性。
七、上述各种算法性能对比
**比较一:**在相同虚警概率的条件下,比较各种算法的检测概率,检测概率越高,性能越好(具体代码参考附录(11))
如上图所示,在均匀噪声环境中CA-CFAR的性能最优,GO-CFAR相对于CA-CFAR存在较小的性能损失,OS-CFAR性能介于GO-CFAR和SO-CFAR之间,SO-CFAR的性能则最差。
**比较二:**仿真单目标情况下,各种算法门限设置情况(具体代码参考附录(12))
如上图所示,仿真单目标情况下各种CFAR算法的门限设置情况,其中噪声背景功率为20dB,目标信噪比为15dB,位于第50个距离单元上,可以看出对于CA-CFAR和GO-CFAR来说,目标两侧距离单元的检测门限明显高于其他单元,这是因为当待检单元位于目标两侧靠近目标的距离单元上时,目标能量被计算到了噪声背景中,导致检测门限急剧升高。而对于,SO-CFAR和OS-CFAR来说,目标能量对门限的影响较小。
比较三: 在单目标情况下,进行蒙特卡洛仿真验证检测概率的正确性(具体代码参考附录(13))
感觉上述结果还存在问题,因为理论检测概率和蒙特卡洛得到的概率之间的差异太大了,但是目前还没有发现哪个环节出现了问题,是理论检测概率计算错误了?还是仿真的原始信号出现错误?期望能在后续学习过程中找出其中的原因。
上面的问题已经找到原因了,问题出现在目标回波的生成方面,在附录(13)的代码里面,仿真目标是一种确定性信号,其实这是不对的,从第一节《理论最优性能》的分析过程中,我们知道其实目标所在单元和噪声一样,经平方率检波后都服从指数分布,只是两者对应的指数分布的参数不一样而已,所以在仿真目标回波的时候仍然需要将其当成随机变量来看待,而不应该将其仿真成一个确定性信号。修改之后的代码如附录(14)所示,其结果如图9所示:
**比较四:文献[11]中定义了平均判决阈值(Average Detection Threshold, ADT)**用于评估不同CFAR之间的性能,它的定义如下:
A
D
T
=
E
(
α
Z
)
σ
2
=
λ
0
α
E
(
Z
)
=
λ
0
α
∫
0
∞
z
f
(
z
)
d
z
(19)
{\rm ADT}=\frac{{\rm E}(\alpha Z)}{\sigma^2}=\lambda_0 \alpha {\rm E}(Z)=\lambda_0 \alpha\int_0^\infty{z f(z)dz}\tag{19}
ADT=σ2E(αZ)=λ0αE(Z)=λ0α∫0∞zf(z)dz(19)
上式中期望可以用矩母函数表示,所以上式可以改写为
A
D
T
=
−
λ
0
α
d
M
z
(
t
)
d
t
∣
t
=
0
{\rm ADT}=-\lambda_0 \alpha \frac{d{\rm M}_z(t)}{dt}|_{t=0}
ADT=−λ0αdtdMz(t)∣t=0
在上式中,门限乘积因子
α
\alpha
α由虚警概率决定,每个虚警概率对应特定的
α
\alpha
α,所以
A
D
T
{\rm ADT}
ADT表示的就是当虚警概率恒定时,各种CFAR算法设置的平均门限大小(相对于噪声归一化后的大小),所以
A
D
T
{\rm ADT}
ADT越小,表示门限值越低,所以此时检测概率越高,性能越好。根据上面的定义,及之前推导得到的各种CFAR算法对应的矩母函数
M
z
(
t
)
{\rm M}_z(t)
Mz(t),可以求得,上述CFAR算法对应的
A
D
T
{\rm ADT}
ADT分别为:
C
A
−
C
F
A
R
:
A
D
T
=
α
G
O
−
C
F
A
R
:
A
D
T
=
−
2
α
+
2
α
n
∑
k
=
0
n
−
1
(
n
−
1
+
k
k
)
(
n
+
k
)
2
−
(
n
+
k
+
1
)
S
O
−
C
F
A
R
:
A
D
T
=
4
α
−
2
α
n
∑
k
=
0
n
−
1
(
n
−
1
+
k
k
)
(
n
+
k
)
2
−
(
n
+
k
+
1
)
O
S
−
C
F
A
R
:
A
D
T
=
α
N
∑
i
=
1
k
1
n
−
k
+
i
(20)
\begin{equation} \begin{aligned} &{\rm CA-CFAR}:{\rm ADT}=\alpha\\ &{\rm GO-CFAR}:{\rm ADT}=-2\alpha+2\frac{\alpha}{n}\sum_{k=0}^{n-1}{\begin{pmatrix} n-1+k \\ k \end{pmatrix} (n+k) 2^{-(n+k+1)}}\\ &{\rm SO-CFAR}:{\rm ADT}=4\alpha-2\frac{\alpha}{n}\sum_{k=0}^{n-1}{\begin{pmatrix} n-1+k \\ k \end{pmatrix} (n+k) 2^{-(n+k+1)}}\\ &{\rm OS-CFAR}:{\rm ADT}=\frac{\alpha}{N}\sum_{i=1}^k{\frac{1}{n-k+i}} \end{aligned} \end{equation}\tag{20}
CA−CFAR:ADT=αGO−CFAR:ADT=−2α+2nαk=0∑n−1(n−1+kk)(n+k)2−(n+k+1)SO−CFAR:ADT=4α−2nαk=0∑n−1(n−1+kk)(n+k)2−(n+k+1)OS−CFAR:ADT=Nαi=1∑kn−k+i1(20)
文章附录及代码验证见《均匀背景下常用恒虚警检测推导及比较(二):附录+代码验证》
[1] 常用恒虚警检测算法的推导过程
[2] 如何通俗地理解矩母函数
[3] 常用概率分布的矩母函数、特征函数以及期望、方差的推导
[4] Gamma分布常用笔记
[6]Ritcey J A , Hines J L . Performance of Max-Mean Level Detector With and Without Censoring[J]. IEEE Transactions on Aerospace and Electronic Systems, 1989, 25(2):213-223.
[7]Hansen V G , Sawyers J H . Detectability Loss Due to “Greatest Of” Selection in a Cell-Averaging CFAR[J]. IEEE Transactions on Aerospace and Electronic Systems, 2007, AES-16(1):115-118.
[8]Gandhi P P , Kassam S A . Analysis of CFAR processors in nonhomogeneous background[J]. IEEE Transactions on Aerospace and Electronic Systems, 2002, 24(4):427-445.
[10]Gradshteyn I S , Ryzhik I M . Table of Integrals, Series, and Products / I.S. Gradsheyn, I.M. Ryzhik ; ed. de Alan Jeffrey, Daniel Zwillinger.
[11]Rohling H . Radar CFAR Thresholding in Clutter and Multiple Target Situations[J]. IEEE Transactions on Aerospace and Electronic Systems, 1983, 19(4):608-621.