A Multi-target Track-before-detect Algorithm Based on Cost-reference Particle Filter Bank
-
摘要: 针对图像序列中多目标检测和跟踪算法结构复杂、计算量大、性能降低等问题, 提出一种基于代价参考粒子滤波器组的多目标检测前跟踪(Cost-reference particle filter bank based multi-target track-before-detect, CRPFB-MTBD)算法, 将多目标跟踪问题转换为序贯地检测和跟踪多个单目标的问题. 首先, 采用代价参考粒子滤波器组序贯地估计所有可能单目标状态序列; 其次, 基于所有可能单目标状态序列的欧氏距离和累积代价确定目标数量; 最后, 根据累积代价判断每个目标出现和消失的具体时刻. 仿真实验验证了CRPFB-MTBD的优良性能, 与基于传统粒子滤波的多目标检测前跟踪算法(Particle filter based multi-target track-before-detect, PF-MTBD)、基于概率假设密度的检测前跟踪算法(Probability hypothesis density based track-before-detect, PHD-TBD)和基于伯努利滤波的检测前跟踪算法(Bernoulli based track-before-detect, Bernoulli-TBD) 相比, CRPFB-MTBD的目标状态序列和数量估计结果最佳, 且平均单次运行时间极短.
-
关键词:
- 多目标跟踪 /
- 检测前跟踪 /
- 粒子滤波 /
- 代价参考粒子滤波器组 /
- 滤波器组
Abstract: Aiming at the problems of complex structure, increasing computation and decreasing performance of multiple targets detection and tracking algorithms in image sequences, a cost-reference particle filter bank based multi-target track-before-detect (CRPFB-MTBD) algorithm is proposed. In this work, the target tracking problem is converted into a problem of sequentially detecting and tracking multiple single targets. First, a cost reference particle filter bank is used to sequentially estimate all possible single targets’ state sequences; secondly, the number of targets is determined based on the Euclidean distances and cumulative costs of all possible single targets’ state sequences; finally, the specific moment when each target appears and disappears is determined based on the cumulative cost. The simulation experiment verified the excellent performance of CRPFB-MTBD. Compared with the traditional particle filter based multitarget track-before-detect (PF-MTBD) algorithm, probability hypothesis density based track-before-detect (PHD-TBD), and Bernoulli filter based track-before-detect (Bernoulli-TBD), CRPFB-MTBD has the best target state sequence and quantity estimation results, and the average single running time is extremely short. -
低信噪比情况下的多目标跟踪是雷达、声呐、红外探测、图像处理等领域面临的难题之一, 其目的是从观测数据中估计时变的多目标状态, 包括目标数量、位置等信息. 传统先检测后跟踪方法难以有效处理低信噪比目标[1-2]. 为提高低信噪比目标的检测和跟踪性能, 学者们提出检测前跟踪(Track-before-detect, TBD)方法. TBD方法从未经门限检测的原始观测数据中同时检测和跟踪低信噪比目标[3-8]. 实现多目标TBD的算法主要包括粒子滤波[9-11]、概率假设密度(Probability hypothesis density, PHD)[12-13]、多目标伯努利滤波器[14]等.
文献[9]针对第2个目标自第1个目标产生的双目标跟踪与检测问题, 提出基于粒子滤波的多目标TBD方法, 该方法是文献[6]中单目标粒子滤波的多目标检测前跟踪算法(Particle filter based track-before-detect, PF-TBD)方法的拓展. 但随着目标数量的增加, 该计算计算量急剧增加, 效率较低. 文献[10]提出一种多模型多目标TBD方法. 该方法需假设最大目标数量, 首先, 估计所有可能的目标存在组合或模式及其对应的联合后验概率密度和目标模型的概率; 然后, 整合不同模式下目标对应的状态向量, 获得所有目标的状态估计. 但随着目标数量的增加, 该方法会出现算法结构复杂、计算量大问题. 文献[11]提出一种基于粒子滤波的多目标TBD算法, 该方法假设最大的目标数量, 用同样数量的样本表示每个目标的状态和存在情况, 再联合估计所有目标的联合后验概率密度, 据此估计各个时刻的目标状态和数量. 随着目标数量的增加, 该方法中的粒子数将成倍增加, 因此也存在计算量大的问题.
PHD和多目标伯努利滤波器是基于随机有限集(Random finite set, RFS)的多目标贝叶斯滤波器[12-14]的近似. 基于RFS的多目标贝叶斯滤波器将多目标状态和观测视为RFS, 估计此RFS的后验概率密度函数. 文献[12]提出基于PHD的单传感器TBD方法(Probability hypothesis density bas-ed track-before-detect, PHD-TBD), 实现红外图像多目标跟踪. 文献[14]针对图像观测, 提出基于多伯努利滤波的TBD算法.
然而, 无论是基于粒子滤波的TBD方法, 还是基于RFS的TBD方法, 都将多目标视为整体, 估计多个目标的联合状态的后验概率密度函数. 随着目标数量的增加, 必然会出现算法结构复杂、计算量大问题. 针对上述问题, 在单传感器条件下, 本文提出一种基于代价参考粒子滤波器组的多目标TBD方法(Cost-reference particle filter bank bas-ed multi-target track-before-detect, CRPFB-MTBD). 该方法是文献[15]基于代价参考粒子滤波器组的单目标TBD方法的拓展. CRPFB-MTBD首先将多目标检测与跟踪问题转化为多个单目标检测与跟踪问题, 序贯地估计各个目标的状态序列; 然后, 通过比较各个目标航迹之间的距离来删减多余目标, 从而最终确定目标数量和航迹. 该方法无需假设目标数量, 算法结构与目标数量无关, 可并行执行, 运行时间极短. 仿真结果表明, 与基于粒子滤波和RFS的TBD算法相比, 本文方法可有效估计时变的多目标数量和状态, 且运行时间极短.
1. 状态空间模型
1.1 目标模型
假设$ k $时刻有$ N_{k} $个目标以特定的强度水平在$x \text{-} y$平面运动, 离散运动模型为:
$$ {\boldsymbol{x}}_{l,k}={\boldsymbol{F}}{\boldsymbol{x}}_{l,k-1}+{\boldsymbol{v}}_{l,k} $$ (1) 式中, $ {\boldsymbol{v}}_{l,k} $表示$ k $时刻第$ l $个目标的过程噪声服从零均值协方差为${\boldsymbol{Q}}$的高斯分布, 且在帧间、分辨单元间, 各个目标间相互独立; $ k $表示观测时刻, $k= 1,\cdots, K;\; {\boldsymbol{x}}_{l,k}$表示$ k $时刻第$ l $个目标的状态向量:
$$ {\boldsymbol{x}}_{l,k}=[x_{l,k},\dot{x}_{l,k},y_{l,k},\dot{y}_{l,k}]^{\text{T}} $$ (2) 式中, $ [\cdot]^{\text{T}} $表示向量的转置. $ (x_{l,k},y_{l,k}) $和$(\dot{x}_{l,k}, \dot{y}_{l,k})$分别表示$ k $时刻第$ l $个目标的位置和速度, $l= 1,\cdots,N_{k}, k$时刻可能同时存在$ N_{k} $个目标. ${\boldsymbol{F}}$表示转移矩阵, 定义如下:
$$ {\boldsymbol{F}}=\left( \begin{array}{*{20}{c}} 1 & 0 \\ 0 & 1 \end{array} \right)\otimes\left( \begin{array}{*{20}{c}} 1 & \triangle T \\ 0 & 1 \end{array} \right) $$ (3) 式中, $ \triangle T $表示采样时间, $ \otimes $表示克罗内克积. ${\boldsymbol{Q}}$定义如下:
$$ {\boldsymbol{Q}}=\left( \begin{array}{*{20}{c}} 1 & 0 \\ 0 & 1 \end{array} \right)\otimes\left( \begin{array}{*{20}{c}} \dfrac{q_{1}T^{3}}{3} & \dfrac{q_{1}T^{2}}{2}\\ \dfrac{q_{1}T^{2}}{2} & q_{1}T \end{array} \right) $$ (4) 式中, $ q_{1} $表示目标运动的噪声水平. 由于本文方法无需目标强度信息, 故在目标模型中并未包含对目标强度信息的估计, 但传感器模型中包含目标强度. 为方便起见, 定义第$ l $个目标在$ k $时刻的强度为$ I_{l,k} $.
1.2 传感器模型
红外传感器提供某一监测区域的二维图像序列, 每幅图像包含$ N\times M $个分辨单元(像素). 一个分辨单元对应一个$ \triangle_{x} \times \triangle_{y} $的矩形观测区域, 第$ (i,j) $个分辨单元对应的观测区为$(i\triangle_{x}\times j\triangle_{y}),\; i= 1, \cdots, N,\; j=1, \cdots, M$.
以$ \triangle T $为间隔记录测量图像, $ k $时刻, 第$ (i,j) $个分辨单元的测量强度$ z_{k}^{(i,j)} $为:
$$ z_{k}^{(i,j)}=\left\{\begin{aligned} &\displaystyle\sum\limits_{l=1}^{N_{k}} S_{k}(l)h_{k}^{(i,j)}({\boldsymbol{x}}_{l,k})+w_{k}^{(i,j)} \\ &w_{k}^{(i,j)} \end{aligned}\right. $$ (5) 式中, $ S_{k}(l)\in\{0,1\} $表示$ k $时刻第$ l $个目标出现或消失状态; $ h_{k}^{(i,j)}({\boldsymbol{x}}_{l,k}) $表示$ k $时刻第$ l $个目标对于第$ (i,j) $个分辨单元的强度水平的贡献, $ k $时刻第$ (i,j) $个分辨单元的强度水平是所有目标的强度水平之和; $ w_{k}^{(i,j)} $是第$ (i,j) $个分辨单元的背景噪声, 假设其在帧间、像素间相互独立且服从零均值、方差为$ \sigma^{2} $的高斯分布. 本文采用传感器扩散模型, $ h_{k}^{(i,j)}({\boldsymbol{x}}_{l,k}) $近似为式(6), 表示强度为$ I_{l,k} $、位置为$ (x_{l,k},y_{l,k}) $的点目标对于第$ (i,j) $个分辨单元的强度贡献:
$$ \begin{split} h_{k}^{(i,j)}({\boldsymbol{x}}_{l,k})=\;&\frac{\triangle_{x}\triangle_{y}I_{l,k}}{2\pi\Sigma^{2}}\;\cdot\\ &\text{exp}\left( -\frac{(\triangle_{x}i-x_{l,k})^{2}+(\triangle_{y}j-y_{l,k})^{2}}{2\Sigma^{2}} \right) \end{split} $$ (6) 式中, $ \Sigma $是已知参数, 表示传感器的模糊系数.
信噪比(Signal-to-noise ratio, SNR)定义为:
$$ \text{SNR}=20{\rm{lg}}\frac{\triangle_{x}\triangle_{y}I_{k}}{2\pi\Sigma^{2}\sigma} $$ (7) 式中, $I_{k}=\sum_{l=1}^{N_{k}}I_{l,k}/N_{k}$.
综上, 从1到$ K $时刻的观测序列为${\boldsymbol{Z}}_{K}=\{{\boldsymbol{z}}_{1}, $ ${\boldsymbol{z}}_{2},\cdots, {\boldsymbol{z}}_{K}\},\; {\boldsymbol{z}}_{k}\;=\;\{z_{k}^{(i,j)}:\;1\leq i\leq N,\; 1\leq j\leq M,$ $1\leq k\leq K\} $, 多目标跟踪的目标是从观测序列$ {\boldsymbol{Z}}_{K} $中估计目标的数量, 并估计每个目标的状态序列, 先验信息为$0\leq x_{l,k}\leq N\triangle_{x}$, $ 0\leq y_{l,k}\leq M\triangle_{y} $.
2. 基于代价参考粒子滤波器组的多目标检测前跟踪算法
针对线性或分段线性运动模型, 文献[15]提出CRPFB, 实现了单目标的快速检测和跟踪. 本节基于CRPFB, 提出未知数量的多目标TBD方法.
2.1 代价参考粒子滤波器组
基于式(1)和式(5)的状态空间模型, CRPFB基本结构如图1所示. CRPFB包含$ M_{s} $个并行的代价参考粒子滤波器(Cost-reference particle filter, CRPF). 每个CRPF采用不同的先验信息, 获得不同估计结果$ \{{\hat{\boldsymbol{X}}}^{1}, {\hat{\boldsymbol{X}}}^{2}, \cdots, {\hat{\boldsymbol{X}}}^{M_{s}}\} $. 比较各个CRPF的累积代价$ \{C_{\text{cum}}^{1},C_{\text{cum}}^{2}, \cdots, C_{\text{cum}}^{M_{s}}\} $, 将累积代价最大(或最小, 与累积代价的定义有关)的CRPF的估计结果作为CRPFB的估计结果. CRPFB中并行CRPF数量$ M_{s} $是一个较难确定的参数, 类似于粒子滤波中的样本数量(粒子数). 因此, CRPFB性能会随$ M_{s} $的增加而增加, 但不会一直增加. 本文通过对比不同$ M_{s} $对算法性能的影响, 来选择合适的$ M_{s} $数量.
步骤1. 先验信息计算. 图1中蓝色背景框部分表示第$ m_{s} $个CRPF的先验信息, 其计算原理及过程如下.
基于式(1)中的线性运动模型(系统噪声为零均值), 第$ l $个目标在$ k $时刻的状态为${\boldsymbol{x}}_{l,k}=[x_{l,k}, \dot{x}_{l,k},y_{l,k},\dot{y}_{l,k}]^{\text{T}}$, 其在$ x $方向的运动速度的期望为常数:
$$ \begin{split} \text{E}(\dot{x}_{l,k})=\;&\text{E}(\dot{x}_{l,k-1})+\text{E}({\boldsymbol{v}}_{l,k}^{(2)})=\\ & \text{E}(\dot{x}_{l,k-1})=\dot{x}_{l} \end{split} $$ (8) 式中, $ \text{E}(\cdot) $表示期望, $ \dot{x}_{l} $表示第$ l $个目标在$ x $方向的速度期望.
进一步地, 可从各个时刻第$ l $个目标在$ x $方向的位置来估计$ \dot{x}_{l} $:
$$ \begin{split} \dot{x}_{l}=\;&\frac{1}{K}\sum\limits_{k=1}^{K}\text{E}(\dot{x}_{l,k})= \frac{1}{K}\sum\limits_{k=2}^{K}\text{E}\left(\frac{x_{l,k}-x_{l,k-1}}{\triangle T}\right)=\\ & \frac{1}{K}\text{E}\left(\sum\limits_{k=2}^{K}\frac{x_{l,k}-x_{l,k-1}}{\triangle T}\right)= \frac{\text{E}(x_{l,k}-x_{l,1})}{K\triangle T} \end{split} $$ (9) 由式(9)可得, 当$ x_{l,1}=x_{m_{s}} $, $x_{m_{s}}\sim \text{U}(0,N\triangle_{x}),\; \text{U}(\cdot,\cdot)$表示均匀分布, 考虑到$ 0\leq x_{l,K}\leq N\triangle_{x} $, 可得:
$$ \frac{-x_{m_{s}}}{K\triangle T}\leq \dot{x}_{l}\leq \frac{N\triangle_{x}-x_{m_{s}}}{K\triangle T} $$ (10) 同理, 当$ y_{l,1}=y_{m_{s}} $, $ y_{m_{s}}\sim \text{U}(0,M\triangle_{y}) $, 考虑到$ 0\leq y_{l,K}\leq M\triangle_{y} $, 第$ l $个目标在$ y $方向的速度均值$ \dot{y}_{l} $的范围为:
$$ \frac{-y_{m_{s}}}{K\triangle T}\leq \dot{y}_{l}\leq \frac{M\triangle_{y}-y_{m_{s}}}{K\triangle{T}} $$ (11) 基于式(10)和式(11)的假设和结论, 将速度的均值近似为速度, 则第$ l $个目标的先验信息如表1所示.
表 1 第$l$个目标的先验信息Table 1 Apriori information for the $l\text{-} {\rm th}$ target先验信息 $x $方向 $y $方向 初始位置 $x_{l,1}=x_{m_{s}}$ $y_{l,1}=y_{m_{s}}$ 速度范围 $-\dfrac{x_{m_{s} } }{K\triangle T}\leq \dot{x}_{l}\leq \dfrac{N\triangle_{x}-x_{m_{s} } }{K\triangle T}$ $-\dfrac{y_{m_{s} } }{K\triangle T}\leq \dot{y}_{l}\leq \dfrac{M\triangle_{y}-y_{m_{s} } }{K\triangle{T} }$ $k$时刻位置范围 $x_{m_{s}}-(k-1)\dfrac{-x_{m_{s}}}{K\triangle T} \leq x_{m_{s}}+(k-1)\dfrac{N\triangle_{x}-x_{m_{s}}}{K\triangle T}$ $y_{m_{s}}-(k-1)\dfrac{-y_{m_{s}}}{K\triangle T} \leq y_{m_{s}}+(k-1)\dfrac{M\triangle_{y}-y_{m_{s}}}{K\triangle T}$ 图2对比了原始先验信息($0\leq x_{l,k}\leq N\triangle_{x}, \; 0\leq y_{l,k}\leq M\triangle_{y}$)与表1先验信息. 在图2中, 矩形框为观测区域, 对应第$ l $个目标(包括每个目标)原始先验信息, 阴影部分面积为表1先验信息. 由图2可以看出, 基于上述结论, 当初始时刻目标位置确定时, 目标的先验信息精度可大幅提高.
步骤2. 代价参考粒子滤波器. 假设$ M_{s} $个不同的目标初始位置, 根据表1可获得$ M_{s} $种精确的先验信息. 文献[15]指出, 当$ M_{s} $足够大时, CRPF的样本数可取1. 将观测序列$ {\boldsymbol{Z}}_{K} $和$ M_{s} $种先验信息输入$ M_{s} $个CRPF中, 可获得$ M_{s} $种估计结果. 各个CRPF在运行中相互独立, 只在滤波结束后比较累积代价, 因此CRPFB具有完全的并行结构, 其运行时间仅由单个CRPF运行时间和累积代价的比较过程决定.
图1中橙色背景框部分为第$ m_{s} $个CRPF的滤波过程, 仅有1个目标, 样本数设置为1时, CRPF的估计过程如下.
1)初始化. 获得初始样本−代价$ \{{\boldsymbol{x}}_{1}^{m_{s}}, C_{1}^{m_{s}}\} $. 样本$ {\boldsymbol{x}}_{1}^{m_{s}}=[x_{1}^{m_{s}},\dot{x}_{1}^{m_{s}},y_{1}^{m_{s}},\dot{y}_{1}^{m_{s}}]^{\text{T}} $为某个目标的单个样本, 样本中各元素的具体取值见表1; 样本$ {\boldsymbol{x}}_{1}^{m_{s}} $的代价$C_{1}^{m_{s}}=\sum_{(i,j)\in D({\boldsymbol{x}}_{1}^{m_{s}})}z_{1}^{(i,j)}$, 其中$D({\boldsymbol{x}}_{1}^{m_{s}})$表示满足式(12)条件的分辨单元$ (i,j) $, 式(12)中$ V_{l} $为经验参数, 通常可取大于0.01的值, 表示目标强度影响到的分辨单元.
2)更新. $ k $时刻第$ m_{s} $个CRPF更新样本${\boldsymbol{x}}_{k}^{m_{s}}= {\boldsymbol{F}}{\boldsymbol{x}}_{k-1}^{m_{s}}+{\boldsymbol{v}}_{k}^{m_{s}}$. 若$ {\boldsymbol{x}}_{k}^{m_{s}} $表示的目标位置和速度超出表1范围, 则在表1限定的范围内重置$ {\boldsymbol{x}}_{k}^{m_{s}} $. $ {\boldsymbol{x}}_{k}^{m_{s}} $对应的代价$C_{k}^{m_{s}}=\sum_{(i,j)\in D({\boldsymbol{x}}_{k}^{m_{s}})}z_{k}^{(i,j)}$.
3)第$ m_{s} $个CRPF的状态估计. 第$ m_{s} $个CRPF的状态估计结果记为${\hat{\boldsymbol{X}}}^{m_{s}}=\{{\boldsymbol{x}}_{1}^{m_{s}},{\boldsymbol{x}}_{2}^{m_{s}},\cdots, {\boldsymbol{x}}_{K}^{m_{s}}\}$, 累积代价记为$ C_{\text{cum}}^{m_{s}}=\sum_{k=1}^{K}C_{k}^{m_{s}} $.
$$ \frac{\triangle_{x}\triangle_{y}}{2\pi\Sigma^{2}}\text{exp}\left(-\frac{(\triangle_{x}i-x_{k}^{m_{s}})^{2}+\triangle_{y}j-y_{k}^{m_{s}})^{2}}{2\Sigma^{2}}\right)\geq V_{l} $$ (12) 步骤3. CRPFB的状态估计. 图1中的绿色背景框部分即为CRPFB的状态估计过程, 其具体过程如下.
$ M_{s} $个CRPF共获得$ M_{s} $个估计结果$\{{\hat{\boldsymbol{X}}}^{1},\cdots, \hat{\boldsymbol{X}}^{M_{s}}\}$. 比较$ M_{s} $个估计结果的累积代价, 将累积代价最大的CRPF的状态序列作为CRPFB的估计结果${\hat{\boldsymbol{X}}}={\hat{\boldsymbol{X}}}^{m_{\rm{opt}}}$, 对应的累积代价记为$ C_{\text{cum}} $:
$$ \left\{\begin{aligned} &{\hat{\boldsymbol{X}}}={\hat{\boldsymbol{X}}}^{m_{\text{opt}}} \\ &C_{\text{cum}}=C_{\text{cum}}^{m_{\text{opt}}} \\ &m_{\text{opt}}=\max\limits_{m_{s}}\{C_{\text{cum}}^{m_{s}}\}_{m_{s}=1}^{M_{s}} \end{aligned}\right. $$ (13) 与一般粒子滤波算法相比, CRPFB中的CR-PF仅有一个样本, 故无需重采样过程, 可并行运行大量具有不同初始状态的CRPF, 实现对目标状态序列的估计.
2.2 基于CRPFB-MTBD算法
基于上述的CRPFB, 本文提出CRPFB-MTBD算法. 该算法包括3个连续过程, 如图3所示. 1)获得所有可能目标的状态序列. 当全部观测数据输入后, 序贯地应用CRPFB, 获得所有可能目标的状态序列; 2)关联过程(估计目标数量). 比较所有可能目标航迹间的欧氏距离, 删除距离相近航迹中累积代价较小者, 从而确定观测时段内出现的总体目标数量; 3)判断各个目标出现的具体时刻. 根据各状态序列累积代价的幅度变化特点, 确定目标出现的具体时刻.
1)获得所有可能状态序列
图4是基于CRPFB-MTBD算法的步骤1, 估计所有可能的目标航迹. 在该过程中, 首先输入观测数据$ {\boldsymbol{Z}}_{K} $, 执行第1次CRPFB. 若CRPFB的累积代价大于门限$ V_{1} $, 则从${\boldsymbol{Z}}_{K}$中减去CRPFB的估计观测, 再次输入CRPFB. 此过程可执行若干次, 直到CRPFB的累积代价小于等于$ V_{1} $. 当虚警概率$P_{\text{fa}}$给定, $ V_{1} $可通过对大量无目标的观测累积代价排序获得. 图4中, $ {\hat{\boldsymbol{X}}}_{l}=\{\hat{x}_{l,1},\hat{x}_{l,2},\cdots,\hat{x}_{l,K}\} $表示第$ l $次CRPFB的估计结果, $\sum_{l}h_{k}(\hat{\boldsymbol{X}}_{l})$表示第1到第$l $个目标的估计观测之和, $C_{l,{\rm{cum}}} $表示第$l $个CRPF的估计状态序列的累积代价.若上述过程共经过$ l $次CRPFB滤波, 则该步骤输出$ l $个估计结果$ \{{\hat{\boldsymbol{X}}}_{1}, {\hat{\boldsymbol{X}}}_{2},\cdots,{\hat{\boldsymbol{X}}}_{l}\} $, 即为所有可能目标的状态序列.
2)关联过程(估计目标数量和相应的状态序列)
图5是基于CRPFB-MTBD算法的第2个步骤, 估计观测时段内总的目标数量. 将1)中获得的所有可能目标的状态序列$ \{{\hat{\boldsymbol{X}}}_{1},{\hat{\boldsymbol{X}}}_{2},\cdots,{\hat{\boldsymbol{X}}}_{l}\} $排列组合, 计算各估计结果之间的欧氏距离. ${d}({\hat{\boldsymbol{X}}}_{l_{i}}, {\hat{\boldsymbol{X}}}_{\pi(l_{i})})$即为第$ l_{i} $个估计结果$ {\hat{\boldsymbol{X}}}_{l_{i}} $与第$\pi(l_{i})$个估计结果$ {\hat{\boldsymbol{X}}}_{\pi(l_{i})} $的欧氏距离, 如式(14)所示. 当2个的状态序列的欧氏距离小于等于给定门限$ V_{2} $时, 删除累积代价较小的的状态序列. 门限$ V_{2} $会随应用场景和分辨率等的不同而变化, 因此难以确定. 本文通过仿真实验, 对比不同$ V_{2} $时算法的性能, 来确定门限$ V_{2} $值. 剩余航迹的个数即为观测时段内出现的目标数量. 图5中, $\{{\hat{\boldsymbol{X}}}_{1}, {\hat{\boldsymbol{X}}}_{2},\cdots,{\hat{\boldsymbol{X}}}_{l_{{est}}}\}$即为$l_{{est}}$个目标的可能的状态序列:
$$ \begin{split} &{d}({\hat{\boldsymbol{X}}}_{l_{i}},{\hat{\boldsymbol{X}}}_{\pi(l_{i})})= \frac{1}{\sqrt N}|| {\hat{\boldsymbol{X}}}_{l_{i}}-{\hat{\boldsymbol{X}}}_{\pi(l_{i})} ||_2\\ &\quad\sqrt{\frac{1}{N}\sum\limits_{k=1}^{K}((\hat{x}_{l_{i},k}-\hat{x}_{\pi(l_{i}),k})^{2}+(\hat{y}_{l_{i},k}-\hat{y}_{\pi(l_{i}),k})^{2})} \end{split} $$ (14) 3)判断各个目标出现的具体时刻
基于CRPFB-MTBD算法假设各个目标在各个时刻都存在, 而在实际中, 各个目标出现的时刻可能不同. 因此, 本步骤判断各个目标存在的具体时刻, 图6是判断各个目标出现和消失的具体时刻.
首先, 输入2)估计到的第$ l $个目标的估计状态$ {\hat{\boldsymbol{X}}}_{l} $和累积代价$ {\boldsymbol{C}}_{l} $, 其中${\boldsymbol{C}}_{l}=\{C_{l,1},C_{l,2},\cdots, C_{l,K}\},\; l=1,2,\cdots,l_{{est}}$, $ C_{l,k} $为第$ l $个目标在第$ k $时刻的代价.
然后, 比较$ {\boldsymbol{C}}_{l,\text{cum}} $与 $ \min\{{\boldsymbol{C}}_{l,\text{cum}}\} $、$ {\boldsymbol{C}}_{l,\text{cum}} $与$ \max\{{\boldsymbol{C}}_{l,\text{cum}}\} $, 以确定第$ l $个目标出现和消失的时刻. 其中$ {\boldsymbol{C}}_{l,\text{cum}}=\{C_{l,\text{cum}}^{1}, C_{l,\text{cum}}^{2},\cdots,C_{l,\text{cum}}^{K}\} $, $C_{l,\text{cum}}^{k}= \sum_{i=1}^{k}C_{l,k}$, 表示第$ l $个目标在第$ k $时刻的累积代价. $ \min\{{\boldsymbol{C}}_{l,\text{cum}}\} $和$ \max\{{\boldsymbol{C}}_{l,\text{cum}}\} $分别表示$ {\boldsymbol{C}}_{l,\text{cum}} $中的最小值和最大值. 当$ |{\boldsymbol{C}}_{l,\text{cum}}-\min\{{\boldsymbol{C}}_{l,\text{cum}}\}| $小于等于$ V_{3} $时, 没有目标回波累积, 即$ k_{1},k_{2},\cdots,k_{d} $时刻目标不存在; 当$|{\boldsymbol{C}}_{l,\text{cum}}-\max\{{\boldsymbol{C}}_{l,\text{cum}}\}|$小于等于 $ V_{3} $时, 目标回波也没有累积, 即$k_{g+1},\cdots,K$时刻目标未出现.
最后, 输出第$ l $个目标的存在时刻$k_{d}+1,\cdots, k_{g}$和相应的状态序列$\{{\hat{\boldsymbol{x}}}_{l,k_{d}+1},\cdots, {\hat{\boldsymbol{x}}}_{l,k_{g}}\}$.
经过上述3个连续过程, 即可基于CRPFB估计未知数量的目标和状态序列. 其中, 过程1)和3)可并行执行, 能够极大缩短计算时间.
3. 仿真实验及分析
仿真实验包括2个部分: 1)比较本文基于CRPFB-MTBD算法与基于传统粒子滤波的多目标检测前跟踪算法(Particle filter based multi-target track-before-detect, PF-MTBD)[11]、PHD-TBD[12]和基于伯努利滤波的TBD方法(Bernoulli based track-before-detect, Bernoulli-TBD)[14] 的性能; 2)对影响CRPFB-MTBD性能的因素进行分析.
3.1 CRPFB-MTBD与现有方法的性能对比
在仿真实验1)中, 通过检测和跟踪变化数量的目标来比较CRPFB-MTBD、PF-MTBD、PHD-TBD和Bernoulli-TBD在目标数量估计、目标状态序列估计、运行速度等方面性能. 其中, 目标数量估计和目标状态序列估计通过最优次模式分配准则(Optimal subpattern assignment metric, OS-PA)[16-17]来评判. 在多目标跟踪中, OSPA评估观测时段内估计的目标状态序列集合与真实目标状态序列集合之间的差距, 包括OSPA位置误差、OSPA势误差和两者的组合OSPA总体误差. 具体计算公式和Matlab代码可参见文献[16-17]. 此外, 通过相同平台, 对算法的运行速度与各算法的平均单次运行时间进行比较.
仿真环境设置如下: 假设观测区域内存在3个目标, 其初始状态分别为${\boldsymbol{x}}_{1,1}=[17,0,13, -0.13]^{\rm{T}}, $ $ {\boldsymbol{x}}_{2,1}\,=\,[4,0.2,4,0.2]^{\rm{T}}, $ ${\boldsymbol{x}}_{3,1}\,=\,[3,0.2,17,0]^{\text{T}},\; q_{1}= 0.001$. 目标强度由式(7)的SNR决定, $q_{2}=0.010$. 整个检测和跟踪过程持续时间为60 s, 采样时间$ \triangle T=1 $s, 像素分辨单元${\triangle_ x}=\triangle_ y=1\;{\rm{m}}$, 监测区域大小为$30\; {\rm{m}} \times 30\; {\rm{m}}$的序列图像, 传感器模糊系数$ \Sigma=0.7 $. 假设背景噪声为方差$ \sigma^{2}=1 $的高斯噪声, 目标的运动方程如式(1)所示. 目标1在第5帧进入监视区域, 在第60帧消失; 目标2在第15帧进入监视区域, 在第55帧消失; 目标3在第10帧进入监视区域, 在第40帧消失. 图7是当SNR = 10 dB时, 第2帧(无目标)、第14帧(1个目标)、第35帧(3个目标)和第55帧(2个目标)的一次观测图. 由图7可以看出, 当SNR = 10 dB时, 很难直接从图像上判断目标的数量和位置.
各算法参数和条件设置如下: 1) PF-MTBD. 设最大目标数量为5, 每个目标的样本数为10000; 2) PHD-TBD. 每帧中搜索新生目标的粒子数为2500, 每个期望目标对应的样本数为2000, 其他参数设置与文献[12]相同; 3) Bernoulli-TBD. 设最大目标数量为100, 每个伯努利滤波器中生存样本数量为5000, 新生样本数量为2000, 存在概率门限为0.5; 4) CR-PFB-MTBD. CRPF数量$M_{s}= 30\,000$, 每个CRPF只采用1个粒子, 当$ P_{\text{fa}}=10^{-3} $ 时, 门限 $V_{1}= 101.097\,9$,$V_{2}=6.000\,0$, $V_{3}=8.884\,0$. 在信噪比分别为8 dB、6 dB时, 分别进行100次蒙特卡洛仿真, 对比4种方法的OSPA结果. OSPA参数为$c=5, p=2$.
图8、图9分别表示当SNR为6 dB、8 dB, 3个目标时, 4种方法的OSPA. 图8(a)和图9(a)表示OSPA总体误差随时间变化情况, 图8(b)和图9(b)为OSPA位置误差随时间变化情况, 图8(c)和图9(c)为OSPA势误差随时间变化情况. 由图8和图9可以看出, CRPFB-MTBD的目标数量和目标状态估计性能均优于PF-MTBD、PHD-TBD和Bernoulli-TBD. 由图9可以看出, CRPFB-MTBD方法对于位置较近的目标有一定的区分能力. 图10和图11为当SNR = 8 dB、3个目标时, CRPFB-MTBD方法的目标状态序列估计结果和目标数量估计结果.
表2为仿真实验1)的4种算法平均单次运行时间比较. 其中, CRPFB-MTBD进行了10次CR-PFB循环(在本次实验中, 将CRPFB的序贯运行次数设置为10次; 在实际运用中, CRPFB的序贯运行次数不确定). 由表2可以看出, CRPFB-MTBD的运行时间远小于其他3种算法. 原因是PF-MTBD和PHD-TBD将所有目标视为整体, 目标数量越多, 所需样本数越大, 运算量越大, 且难以并行执行, 故耗时长. 虽然在Bernoulli-TBD中, 各个伯努利滤波器可并行执行, 但每个滤波器中的样本数量较多, 故Bernoulli-TBD的运行时间也较长. CRPFB-MTBD算法即使每次CRPFB中包含的CRPF数量达到30000个, 但30000个CRPF可并行执行, 每个CRPF只需要1个样本, 故耗时短.
表 2 4种算法的平均单次运行时间 (s)Table 2 Average single running time of 4 algorithms (s)算法名称 运行时间 PHD-TBD 506.8180 PF-MTBD 131.0574 Bernoulli-TBD 6.6079 CRPFB-MTBD 0.0116 3.2 CRPFB-MTBD性能影响因素分析
仿真实验2)分析目标的数量、并行CRPF数量和门限对CRPFB-MTBD算法性能的影响.
仿真环境和参数设置如下: 目标数量增加至5个. 5个目标的初始状态分别为${\boldsymbol{x}}_{1,1}=[7,0, 23,0.1]^{\text{T}},\; {\boldsymbol{x}}_{2,1}\;=\;[30,0.15,4,0.2]^{\text{T}},$ ${\boldsymbol{x}}_{3,1}\;=\;[13,0.2,17,0]^{\text{T}},\;$ ${\boldsymbol{x}}_{4,1} = [40,-0.1,40,-0.1]^{\text{T}}, \;$ ${\boldsymbol{x}}_{5,1} =[20, 0.1,10, 0.2]^{\text{T}}$. CRPFB-MTBD参数设置与仿真实验1)相同.
1)目标数量对CRPFB-MTBD算法性能的影响. 图12为当SNR = 6 dB, 1、3、5个目标时, 100次CRPFB-MTBD仿真的平均OSPA. 由图12可以看出, 随着目标数量的增加, CRPFB-MTBD的性能有所下降.
2)并行CRPF数量对CRPFB-MTBD算法性能的影响. 图13和图14分别比较3个和5个目标情况下, 当SNR = 6 dB, CRPF的数量分别为1000、2000、3000、5000、10000、20000、30000时, 100次仿真实验的平均OSPA. 由图13和图14可以看出, 随着CRPF的数量的增加, CRPFB-MTBD性能逐步提升. 当CRPF的数量超过5000时, 性能逐渐稳定; 随CRPF数量的增加, 仍有小幅提高. 但针对某个具体问题, CRPF数量如何设置, 仍有待进一步研究, 此问题类似粒子滤波中粒子数量的设置.
3)门限对CRPFB-MTBD算法性能的影响. 在本次仿真实验中, CRPFB-MTBD算法的参数设置与仿真实验1)相同. 如第2.2节所述, CRPFB-MTBD包含$ V_{1} $、$ V_{2} $、$ V_{3} $三个检测门限. 其中$ V_{1} $和$ V_{3} $可根据观测给定虚警估计, $ V_{2} $是经验值. 门限$ V_{2} $至关重要, 一方面用于确定观测时段内出现的目标数量, 另一方面用于确定目标的可能状态序列. 在仿真实验1)中, $ V_{2} $设置为6. 图15、图16比较了当3个和5个目标情况下, $V_{2}\;为 \; 4,\; 6,\; 8,\; 10$时, 100次仿真的平均OSPA. 由图15和图16可以看出, 针对本文设置的仿真情况, 当$ V_{2}=6 $时, 算法的势估计性能(即目标数量估计性能)最好; 当$ V_{2}= 10 $时, 算法的位置估计误差(即目标状态序列估计性能)最好. 综合考虑势误差和位置误差, 故设置$ V_{2}=6 $.
仿真实验结果表明, 与现有经典方法相比较, 本文提出的CRPFB-MTBD算法的估计性能、运算速度均有明显提高. 实验结果表明, 随着目标数量的增加和信噪比的下降, CRPFB-MTBD算法性能会有所下降. 此外, 并行CRPF的数量和门限$ V_{2} $的选择, 也会对CRPFB-MTBD的性能有所影响.
4. 结束语
针对图像序列中多目标检测问题, 基于CRPFB提出一种新颖的低信噪比多目标估计方法. 与现有方法相比较, 该方法将多目标估计问题转化为多个单目标检测和估计问题, 打破了现有的将多目标视为整体的思路. 与现有几种经典算法进行对比实验, 结果表明: 与性能最佳的PHD-TBD相比, CRPFB-MTBD的目标数量估计和位置估计精度提高了约50%, 如图8和图9所示; 与运行速度最快的Bern-oulli-TBD相比, CR-PFB-MTBD运行速度提高了约600倍, 如图2所示. 由不同影响因素的仿真实验结果可以看出: 1)随着目标数量的增加, CRPFB-MTBD的估计性能会下降; 2)并行CRPF数量对CRPFB-MTBD性能影响很大, 只有在CRPF的数量足够大时, CRPFB-MTBD性能才会趋于稳定; 3)门限$ V_{2} $的选择直接影响CR-PFB-MTBD性能. 上述图8 ~ 图16和表2仿真实验结果表明, 针对在图像序列中检测和跟踪较低信噪比的多目标问题, 本文提出的CRPFB-MTBD算法以极短的运行时间获得了检测性能、估计性能的可观改善. 但CRPFB-MTBD算法采用仿真分析方法确定并行CRPF数量和门限$ V_{2} $等参数, 这不利于该算法的广泛应用. 在后续研究中, 将进一步研究这些参数与应用场景的关系, 进而确定参数的选取原则.
-
表 1 第$l$个目标的先验信息
Table 1 Apriori information for the $l\text{-} {\rm th}$ target
先验信息 $x $方向 $y $方向 初始位置 $x_{l,1}=x_{m_{s}}$ $y_{l,1}=y_{m_{s}}$ 速度范围 $-\dfrac{x_{m_{s} } }{K\triangle T}\leq \dot{x}_{l}\leq \dfrac{N\triangle_{x}-x_{m_{s} } }{K\triangle T}$ $-\dfrac{y_{m_{s} } }{K\triangle T}\leq \dot{y}_{l}\leq \dfrac{M\triangle_{y}-y_{m_{s} } }{K\triangle{T} }$ $k$时刻位置范围 $x_{m_{s}}-(k-1)\dfrac{-x_{m_{s}}}{K\triangle T} \leq x_{m_{s}}+(k-1)\dfrac{N\triangle_{x}-x_{m_{s}}}{K\triangle T}$ $y_{m_{s}}-(k-1)\dfrac{-y_{m_{s}}}{K\triangle T} \leq y_{m_{s}}+(k-1)\dfrac{M\triangle_{y}-y_{m_{s}}}{K\triangle T}$ 表 2 4种算法的平均单次运行时间 (s)
Table 2 Average single running time of 4 algorithms (s)
算法名称 运行时间 PHD-TBD 506.8180 PF-MTBD 131.0574 Bernoulli-TBD 6.6079 CRPFB-MTBD 0.0116 -
[1] Zhao M J, Li W, Li L, Hu J. Single-frame infrared small-target detection: A survey. IEEE Geoscience and Remote Sensing Magazine, 2022, 10(2): 87−119 doi: 10.1109/MGRS.2022.3145502 [2] Zhang W C, Sun C, Gao Y. Image intensity variation information for interest point detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2023, 45(4): 4694−4712 [3] Bao Z H, Lu J B, Tian Y H, Tian S S. A novel radar TBD detection approach for weak marine targets in dense clutter based on modified Hough transform. Acta Electronica Sinica, 2022, 50(7): 1735−1743 [4] Tonissen S M, Bar-Shalom Y. Maximum likelihood track-before-detect with fluctuating target amplitude. IEEE Transactions on Aerospace and Electronic Systems, 1998, 34(3): 796−809 doi: 10.1109/7.705887 [5] Zhou Y, Su H, Tian S, Liu X M, Suo J D. Multiple-kernelized-correlation-filter-based track-before-detect algorithm for tracking weak and extended target in marine radar systems. IEEE Transactions on Aerospace and Electronic Systems, 2022, 58(4): 3411−3426 doi: 10.1109/TAES.2022.3150262 [6] Salmond D J, Birch H. A particle filter for track-before-detect. In: Proceedings of the American Control Conference. Arlington, USA: IEEE, 2001. 3755−3760 [7] Ristic B, Guan R, Kim D Y, Rosenberg L. Bernoulli track-before-detect smoothing for maritime radar. IET Radar, Sonar & Navigation, 2022, 16(6): 953−960 [8] Zhu Y R, Li Y, Zhang N. Candidate-plots-based dynamic programming algorithm for track-before-detect. Digital Signal Processing, 2022, 123(4): Article No. 103458 doi: 10.1016/j.dsp.2022.103458 [9] Boers Y, Driessen J N. Multi-target particle filter track before detect application. IEE Proceedings-Radar, Sonar and Navigation, 2004, 151(6): 351−357 doi: 10.1049/ip-rsn:20040841 [10] Ebenezer S P, Papandreou-Suppappola A. Generalized recursive track-before-detect with proposal partitioning for tracking varying number of multiple targets in low SNR. IEEE Transactions on Signal Processing, 2016, 64(11): 2819−2834 doi: 10.1109/TSP.2016.2523455 [11] Ito N, Godsill S J. A multi-target track-before-detect particle filter using super-positional data in non-Gaussian noise. IEEE Signal Processing Letters, 2020, 27: 1075−1079 doi: 10.1109/LSP.2020.3002704 [12] Punithakumar K, Kirubarajan T, Sinha A. A sequential Monte Carlo probability hypothesis density algorithm for multi-target track-before-detect. In: Proceedings of the International Society for Optical Engineering. San Diego, USA: 2005. 587−594 [13] Li T C, Hlawatsch F, Djuri P M. Cardinality-consensus-based PHD filtering for distributed multi-target tracking. IEEE Signal Processing Letters, 2018, 26(1): 49−53 [14] Vo B N, Vo B T, Pham N T, Suter D. Joint detection and estimation of multiple objects from image observations. IEEE Transactions on Signal Processing, 2010, 58(10): 5129−5141 doi: 10.1109/TSP.2010.2050482 [15] 卢锦, 王鑫. 基于代价参考粒子滤波器组的检测前跟踪算法. 电子与信息学报, 2021, 48(10): 2815−2823 doi: 10.11999/JEIT210234Lu Jin, Wang Xin. Cost-reference particle filter bank based track-before-detecting algorithm. Journal of Electronics Information Technology, 2021, 48(10): 2815−2823 doi: 10.11999/JEIT210234 [16] Schuhmacher D, Vo B T, Vo B N. A consistent metric for performance evaluation of multi-object filters. IEEE Transactions on Signal Processing, 2008, 56(8): 3447−3457 doi: 10.1109/TSP.2008.920469 [17] Beard M, Vo B T, Vo B N. OSPA (2): Using the OSPA metric to evaluate multi-target tracking performance. In: Proceedings of the International Conference on Control, Automation and Information Sciences. Chiang Mai, Thailand: IEEE, 2017. 86−91 期刊类型引用(3)
1. 于勇政,王伟,蒲治伟. 基于信息关联加权的多目标跟踪算法. 现代防御技术. 2025(01): 23-36 . 百度学术
2. 许华杰,郑力文. 基于自适应卡尔曼滤波的视觉多目标跟踪. 计算机工程与应用. 2025(05): 200-210 . 百度学术
3. 郑尚坡,陈德富,李坚利,林国贤,王星平. 基于改进YOLOv5s和DeepSORT的行人跟踪算法. 计算机与现代化. 2024(08): 54-58 . 百度学术
其他类型引用(1)
-